#2 Python API

Dave Sampson

From original Mailing List post (https://sourceforge.net/mailarchive/forum.php?thread_name=9EB90EE18D92644C96C5D268D79AE8CA01509EEB%40S0-OTT-X2.nrn.nrcan.gc.ca&forum_name=pagc-devel)

The module could be a gathering of various API wrappers including a Python API, and perhaps a Java API, or for a few jython might be useful?

Since many end user applications allow for the creation of Python plugins, having access to a PAGC python API may help high level implementers create simple and streamlined geocoding applications ontop of other environments like

ArcGIS (python)
QGIS (Python)
GVSIG (python?)
JUMP (jython)
GRASS (python)
Mapserver (python, java?)
OpenEV (Python of course)
PrimaGIS (python)

I am sure there are others as well.

My understanding is that by using careful coding practicies, creating API interfacse should be pretty automatic using something like http://www.swig.org/

Both Java and python are supported in SWIG
(http://www.swig.org/compat.html#SupportedLanguages) among other potentialy useful languages that may help to spread adoption.

Again, this has been brought up in the past. Being one who will never touch base code, but can implement using a simple scripting API, I think this might help increase adoption, or at least a larger "power user"
community. I gave up on an attempt to build a wrapper around the earlier version opf PAGC from the command line using python, I got close until I lost it in the multi threaded world...

If anyone has experience in making SWIG interface files perhaps you can help. Then during the build process these interface file can be compiled and transparent to the user?