Update of /cvsroot/playerstage/code/player/server/drivers/vectormap
In directory 
sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv1460/server/drivers/vectormap

Modified Files:
        dbconn.cc .cvsignore postgis.cc dbconn.h 
Log Message:
Added entries to .cvsignore for eclipse CVS setup
Modified playerxdrgen to generate clone and free methods
Renamed dpcpy methods to copy and made argument order match memcpy
simplified vectormap interface a little
fixed misc warnings
cleanup tests

Index: .cvsignore
===================================================================
RCS file: /cvsroot/playerstage/code/player/server/drivers/vectormap/.cvsignore,v
retrieving revision 1.1
retrieving revision 1.2
diff -C2 -d -r1.1 -r1.2
*** .cvsignore  20 Aug 2007 19:42:48 -0000      1.1
--- .cvsignore  17 Sep 2007 02:18:51 -0000      1.2
***************
*** 2,3 ****
--- 2,7 ----
  Makefile.in
  
+ .deps
+ *.la
+ .libs
+ *.lo

Index: dbconn.cc
===================================================================
RCS file: /cvsroot/playerstage/code/player/server/drivers/vectormap/dbconn.cc,v
retrieving revision 1.1
retrieving revision 1.2
diff -C2 -d -r1.1 -r1.2
*** dbconn.cc   20 Aug 2007 19:42:48 -0000      1.1
--- dbconn.cc   17 Sep 2007 02:18:51 -0000      1.2
***************
*** 80,86 ****
    for (uint i=0; i<layerNames.size(); ++i)
    {
!     LayerInfoHolder layer_info(layerNames[i]);
!     LayerDataHolder layer_data(layer_info);
!     info.layers.push_back(layer_data);
    }
  
--- 80,84 ----
    for (uint i=0; i<layerNames.size(); ++i)
    {
!     info.layers.push_back(GetLayerInfo(layerNames[i].c_str()));
    }
  
***************
*** 133,138 ****
    LayerDataHolder data;
  
-   data.info.name = layer_name;
- 
    // need to get name count, name, wkb count, wkb
    const char* template_data = "SELECT name, asbinary(geom) FROM %s;";
--- 131,134 ----
***************
*** 232,236 ****
    info.extent.y1 = extent.y1;
    info.layers_count = layers.size();
!   info.layers = new player_vectormap_layer_data_t[layers.size()];
    for (uint ii=0; ii<layers.size(); ++ii)
    {
--- 228,232 ----
    info.extent.y1 = extent.y1;
    info.layers_count = layers.size();
!   info.layers = new player_vectormap_layer_info_t[layers.size()];
    for (uint ii=0; ii<layers.size(); ++ii)
    {
***************
*** 283,287 ****
  const player_vectormap_layer_data_t* LayerDataHolder::Convert()
  {
-   layer_data.info = *(info.Convert());
    layer_data.features_count = features.size();
    layer_data.features = new player_vectormap_feature_data_t[features.size()];
--- 279,282 ----
***************
*** 295,298 ****
--- 290,294 ----
  LayerDataHolder::~LayerDataHolder()
  {
+   free(layer_data.name);
  //   if (layer_data.features)
  //   {

Index: dbconn.h
===================================================================
RCS file: /cvsroot/playerstage/code/player/server/drivers/vectormap/dbconn.h,v
retrieving revision 1.1
retrieving revision 1.2
diff -C2 -d -r1.1 -r1.2
*** dbconn.h    20 Aug 2007 19:42:48 -0000      1.1
--- dbconn.h    17 Sep 2007 02:18:51 -0000      1.2
***************
*** 36,45 ****
  {
    public:
!     LayerInfoHolder(){};
      LayerInfoHolder(string name)
      {
        this->name = name;
        memset(&extent, 0, sizeof(extent));
      };
  
      const player_vectormap_layer_info_t* Convert();
--- 36,51 ----
  {
    public:
!     LayerInfoHolder(){memset(&layer_info,0,sizeof(layer_info));};
      LayerInfoHolder(string name)
      {
        this->name = name;
+       layer_info.name = strdup(name.c_str());
+       layer_info.name_count = name.size() +1;
        memset(&extent, 0, sizeof(extent));
      };
+     ~LayerInfoHolder()
+     {
+       free(layer_info.name);
+     }
  
      const player_vectormap_layer_info_t* Convert();
***************
*** 53,68 ****
  {
    public:
!     LayerDataHolder(){};
!     ~LayerDataHolder();
!     LayerDataHolder(LayerInfoHolder info)
      {
!       this->info = info;
      };
  
      const player_vectormap_layer_data_t* Convert();
  
-     LayerInfoHolder info;
      vector<FeatureDataHolder> features;
      player_vectormap_layer_data_t layer_data;
  };
  
--- 59,77 ----
  {
    public:
!     LayerDataHolder(){memset(&layer_data,0,sizeof(layer_data));};
!     LayerDataHolder(string name)
      {
!       memset(&layer_data,0,sizeof(layer_data));
!       this->name = name;
!       layer_data.name = strdup(name.c_str());
!       layer_data.name_count = name.size() +1;
      };
+     ~LayerDataHolder();
  
      const player_vectormap_layer_data_t* Convert();
  
      vector<FeatureDataHolder> features;
      player_vectormap_layer_data_t layer_data;
+     string name;
  };
  
***************
*** 77,81 ****
  
      uint32_t srid;
!     vector<LayerDataHolder> layers;
      BoundingBox extent;
      player_vectormap_info_t info;
--- 86,90 ----
  
      uint32_t srid;
!     vector<LayerInfoHolder> layers;
      BoundingBox extent;
      player_vectormap_info_t info;

Index: postgis.cc
===================================================================
RCS file: /cvsroot/playerstage/code/player/server/drivers/vectormap/postgis.cc,v
retrieving revision 1.2
retrieving revision 1.3
diff -C2 -d -r1.2 -r1.3
*** postgis.cc  23 Aug 2007 19:58:48 -0000      1.2
--- postgis.cc  17 Sep 2007 02:18:51 -0000      1.3
***************
*** 98,107 ****
  #include <geos_c.h>
  #endif
  
  /** Dummy function passed as a function pointer GEOS when it is initialised. 
GEOS uses this for logging. */
! void geosprint(const char *text, ...)
  {
!   return;
! }
  
////////////////////////////////////////////////////////////////////////////////
  class PostGIS : public Driver
--- 98,115 ----
  #include <geos_c.h>
  #endif
+ #include <stdarg.h>
  
  /** Dummy function passed as a function pointer GEOS when it is initialised. 
GEOS uses this for logging. */
! inline void geosprint(const char* format, ...)
  {
!       va_list ap;
!       va_start(ap,format);
!       fprintf(stderr,"GEOSError: ");
!       vfprintf(stderr,format, ap);
!       fflush(stderr);
!       va_end(ap);
! 
! };
! 
  
////////////////////////////////////////////////////////////////////////////////
  class PostGIS : public Driver
***************
*** 290,320 ****
      return(0);
    }
-   // Request for layer info 
/////////////////////////////////////////////////////////
-   else if (Message::MatchMessage(hdr, PLAYER_MSGTYPE_REQ,
-            PLAYER_VECTORMAP_REQ_GET_LAYER_INFO,
-            this->device_addr))
-   {
- 
-     if (hdr->size != sizeof(player_vectormap_layer_info_t))
-     {
-       PLAYER_ERROR2("request is wrong length (%d != %d); ignoring",
-                     hdr->size, 0);
-       return -1;
-     }
- 
-     const player_vectormap_layer_info_t* request = 
reinterpret_cast<player_vectormap_layer_info_t*>(data);
-     LayerInfoHolder info = RequestLayerInfo(request->name);
-     const player_vectormap_layer_info_t* response = info.Convert();
- 
-     this->Publish(this->device_addr,
-                   resp_queue,
-                   PLAYER_MSGTYPE_RESP_ACK,
-                   PLAYER_VECTORMAP_REQ_GET_LAYER_INFO,
-                   (void*)response,
-                    sizeof(player_vectormap_layer_info_t),
-                           NULL);
- 
-     return(0);
-   }
    // Request for layer data 
/////////////////////////////////////////////////////////
    else if (Message::MatchMessage(hdr, PLAYER_MSGTYPE_REQ,
--- 298,301 ----
***************
*** 330,334 ****
  
      player_vectormap_layer_data_t* request = 
reinterpret_cast<player_vectormap_layer_data_t*>(data);
!     LayerDataHolder ldata = RequestLayerData(request->info.name);
      const player_vectormap_layer_data_t* response = ldata.Convert();
  
--- 311,315 ----
  
      player_vectormap_layer_data_t* request = 
reinterpret_cast<player_vectormap_layer_data_t*>(data);
!     LayerDataHolder ldata = RequestLayerData(request->name);
      const player_vectormap_layer_data_t* response = ldata.Convert();
  


-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2005.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
Playerstage-commit mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/playerstage-commit

Reply via email to