[geos-devel] Development status
strk at keybit.net
Fri Jul 2 10:03:26 EDT 2004
I've finished cracking Geometry API.
For each Geometry type you now have a deep-copy constructor
and a take-ownership one. The former takes arguments by reference
while the latter takes them by pointer. The same semantic
is available with GeometryFactory functions, including buildGeomtry().
Client application switches seem not so hard, you can see current
postgis repository for an example. You'll also find newer GEOS to
be faster in conversion (mostly take-ownership semantic).
Headers cross-inclusion does now require you set the -I compiler
flag the way geos-config suggests, which is one directory above
actual stuff. You then include <geos/geom.h> etc...
The -I requirement is there because some GEOS headers will include
other GEOS headers using the 'geos/' prefix.
As of GEOS-1.0 cross inclusion did happen with include "header.h"
so in order to support both versions you might use 2 -I flags.
Current postgis uses only the new layout since the headers it
includes do only have 1 cross-reference to "platform.h" which
basically defines int64 already available through PostgreSQL headers.
I've added a geos.h file which can be included without prefix and
will include geos/geom.h, geos/version.h and geos/util.h.
Please give me feedback about this: should it include more headers ?
Please test current CVS builds on your machine.
Application developers (Frank?) please report any issues you
found so to have them fixed in next release.
More information about the geos-devel