Just a note on the initialisation. Geos init is safe to call as many times as you want, it is however potentially unsafe to call the cleanup function in geos2 if you are not sure you are the last process using geos (which is the case in player). From memory in geos 3 the calls are pretty much stub functions that are there for backwards compatibility.

Toby

2009/3/24 Paul Osmialowski <newchief@king.net.pl>
Hi Geoff,

At least two:
1. geos_c.h should not be included alone, stddef.h should be included
before it (see similar situation with linux/videodev.h and sys/types.h as
in "Problem with camerav4l and sphere drivers" post). See what happens if
geos_c.h is included without stddef.h:
$ cc -Wall -c geos_c.c
In file included from geos_c.c:1:
/usr/include/geos_c.h:114: error: expected declaration specifiers or ...
before size_t
/usr/include/geos_c.h:115: error: expected declaration specifiers or ...
before size_t

size_t is defined in stddef.h

Easy fix (at least for postgis driver) is to hack CMakeLists.txt like
that:
PLAYERDRIVER_REQUIRE_HEADER (postgis build_postgis geos_c.h stddef.h)
(the same way camerav4l and sphere drivers were fixed)
2. Even if vectormap drivers are built (which is possible if geos is
installed and issue from point 1 is fixed), still they do NOTHING!
The reason is: all WKB-related functions are #ifdefed with HAVE_GEOS.
Nowhere in whole Player HAVE_GEOS is defined! Looks like cmake does not
make any use of geos-config script.

One more thing:
Postgis driver heavily uses STL (also libpqxx on which it depends heavily
uses STL), so CMakeLists.txt for it should be written like that:
IF (HAVE_STL)
  PLAYERDRIVER_OPTION (postgis build_postgis ON)
ELSE (HAVE_STL)
  PLAYERDRIVER_OPTION (postgis build_postgis OFF "STL not found.")
ENDIF (HAVE_STL)

Currently (at SVN trunk) vec2map also relies heavily on STL, but my patch
on a tracker removes that dependency.

Who is responsible for this mysterious "vector mapping stuff"? I don't
know what are current procedures in Player develobers board, but how much
author of a contributed part has to say about their work?

Yet another thing:
Postgis driver should do something like instance counting, as only one
instance of it should be running in one Player server process. This is
because constructor of this driver calls global initialization code which
I guess should be called ONLY ONCE in process lifetime unless
deinitialization funcion is called (which is done in the destructor).

Paul

On Tue, 24 Mar 2009, Geoff wrote:

> This is mainly for Paul... In patch #2703137, you said that vec2map has
> compilation issues with CMake. Whether or not the patch should be accepted
> (I'll leave that up to someone more knowledgeable about the vector mapping
> stuff), I think the CMake issues involved should probably be fixed anyway,
> in case they affect other drivers as well. What issues were you having?
>
> Geoff
>
>
> ------------------------------------------------------------------------------
> Apps built with the Adobe(R) Flex(R) framework and Flex Builder(TM) are
> powering Web 2.0 with engaging, cross-platform capabilities. Quickly and
> easily build your RIAs with Flex Builder, the Eclipse(TM)based development
> software that enables intelligent coding and step-through debugging.
> Download the free 60 day trial. http://p.sf.net/sfu/www-adobe-com
> _______________________________________________
> Playerstage-developers mailing list
> Playerstage-developers@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/playerstage-developers
>

------------------------------------------------------------------------------
Apps built with the Adobe(R) Flex(R) framework and Flex Builder(TM) are
powering Web 2.0 with engaging, cross-platform capabilities. Quickly and
easily build your RIAs with Flex Builder, the Eclipse(TM)based development
software that enables intelligent coding and step-through debugging.
Download the free 60 day trial. http://p.sf.net/sfu/www-adobe-com
_______________________________________________
Playerstage-developers mailing list
Playerstage-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/playerstage-developers



--
This email is intended for the addressee only and may contain privileged and/or confidential information