diff --git a/include/mapnik/datasource.hpp b/include/mapnik/datasource.hpp index 6ae828a94..127265377 100644 --- a/include/mapnik/datasource.hpp +++ b/include/mapnik/datasource.hpp @@ -126,7 +126,7 @@ protected: mutable bool is_bound_; }; -typedef std::string datasource_name(); +typedef const char * datasource_name(); typedef datasource* create_ds(const parameters& params, bool bind); typedef void destroy_ds(datasource *ds); @@ -142,7 +142,7 @@ public: typedef boost::shared_ptr datasource_ptr; #define DATASOURCE_PLUGIN(classname) \ - extern "C" MAPNIK_EXP std::string datasource_name() \ + extern "C" MAPNIK_EXP const char * datasource_name() \ { \ return classname::name(); \ } \ diff --git a/plugins/input/csv/csv_datasource.cpp b/plugins/input/csv/csv_datasource.cpp index 3c5b4b439..0c2d276ed 100644 --- a/plugins/input/csv/csv_datasource.cpp +++ b/plugins/input/csv/csv_datasource.cpp @@ -852,7 +852,7 @@ void csv_datasource::parse_csv(T& stream, } } -std::string csv_datasource::name() +const char * csv_datasource::name() { return "csv"; } diff --git a/plugins/input/csv/csv_datasource.hpp b/plugins/input/csv/csv_datasource.hpp index 86bcfd4f9..22a99a2b8 100644 --- a/plugins/input/csv/csv_datasource.hpp +++ b/plugins/input/csv/csv_datasource.hpp @@ -35,7 +35,7 @@ public: csv_datasource(mapnik::parameters const& params, bool bind=true); virtual ~csv_datasource (); mapnik::datasource::datasource_t type() const; - static std::string name(); + static const char * name(); mapnik::featureset_ptr features(mapnik::query const& q) const; mapnik::featureset_ptr features_at_point(mapnik::coord2d const& pt) const; mapnik::box2d envelope() const; diff --git a/plugins/input/gdal/gdal_datasource.cpp b/plugins/input/gdal/gdal_datasource.cpp index 05fe41626..a324b3825 100644 --- a/plugins/input/gdal/gdal_datasource.cpp +++ b/plugins/input/gdal/gdal_datasource.cpp @@ -200,7 +200,7 @@ datasource::datasource_t gdal_datasource::type() const return datasource::Raster; } -std::string gdal_datasource::name() +const char * gdal_datasource::name() { return "gdal"; } diff --git a/plugins/input/gdal/gdal_datasource.hpp b/plugins/input/gdal/gdal_datasource.hpp index eb196ee28..989b30135 100644 --- a/plugins/input/gdal/gdal_datasource.hpp +++ b/plugins/input/gdal/gdal_datasource.hpp @@ -38,7 +38,7 @@ public: gdal_datasource(mapnik::parameters const& params, bool bind = true); virtual ~gdal_datasource(); mapnik::datasource::datasource_t type() const; - static std::string name(); + static const char * name(); mapnik::featureset_ptr features(mapnik::query const& q) const; mapnik::featureset_ptr features_at_point(mapnik::coord2d const& pt) const; mapnik::box2d envelope() const; diff --git a/plugins/input/geojson/geojson_datasource.cpp b/plugins/input/geojson/geojson_datasource.cpp index 068bf4c1f..3ce9140e8 100644 --- a/plugins/input/geojson/geojson_datasource.cpp +++ b/plugins/input/geojson/geojson_datasource.cpp @@ -106,11 +106,9 @@ void geojson_datasource::bind() const geojson_datasource::~geojson_datasource() { } -std::string const geojson_datasource::name_="geojson"; - -std::string geojson_datasource::name() +const char * geojson_datasource::name() { - return name_; + return "geojson"; } boost::optional geojson_datasource::get_geometry_type() const diff --git a/plugins/input/geojson/geojson_datasource.hpp b/plugins/input/geojson/geojson_datasource.hpp index 079cb7e3c..231339cc0 100644 --- a/plugins/input/geojson/geojson_datasource.hpp +++ b/plugins/input/geojson/geojson_datasource.hpp @@ -44,7 +44,7 @@ public: geojson_datasource(mapnik::parameters const& params, bool bind=true); virtual ~geojson_datasource (); mapnik::datasource::datasource_t type() const; - static std::string name(); + static const char * name(); mapnik::featureset_ptr features(mapnik::query const& q) const; mapnik::featureset_ptr features_at_point(mapnik::coord2d const& pt) const; mapnik::box2d envelope() const; @@ -52,8 +52,7 @@ public: std::map get_statistics() const; boost::optional get_geometry_type() const; void bind() const; -private: - static const std::string name_; +private: mapnik::datasource::datasource_t type_; mutable std::map statistics_; mutable mapnik::layer_descriptor desc_; diff --git a/plugins/input/geos/geos_datasource.cpp b/plugins/input/geos/geos_datasource.cpp index 8dd6fef13..8bd2bcff8 100644 --- a/plugins/input/geos/geos_datasource.cpp +++ b/plugins/input/geos/geos_datasource.cpp @@ -226,7 +226,7 @@ void geos_datasource::bind() const is_bound_ = true; } -std::string geos_datasource::name() +const char * geos_datasource::name() { return "geos"; } diff --git a/plugins/input/geos/geos_datasource.hpp b/plugins/input/geos/geos_datasource.hpp index ba39c44f1..752a89ffc 100644 --- a/plugins/input/geos/geos_datasource.hpp +++ b/plugins/input/geos/geos_datasource.hpp @@ -39,7 +39,7 @@ public: geos_datasource(mapnik::parameters const& params, bool bind = true); virtual ~geos_datasource (); mapnik::datasource::datasource_t type() const; - static std::string name(); + static const char * name(); mapnik::featureset_ptr features(mapnik::query const& q) const; mapnik::featureset_ptr features_at_point(mapnik::coord2d const& pt) const; mapnik::box2d envelope() const; diff --git a/plugins/input/kismet/kismet_datasource.cpp b/plugins/input/kismet/kismet_datasource.cpp index ea5f6a2cd..07607af6d 100644 --- a/plugins/input/kismet/kismet_datasource.cpp +++ b/plugins/input/kismet/kismet_datasource.cpp @@ -122,7 +122,7 @@ kismet_datasource::~kismet_datasource() { } -std::string kismet_datasource::name() +const char * kismet_datasource::name() { return "kismet"; } diff --git a/plugins/input/kismet/kismet_datasource.hpp b/plugins/input/kismet/kismet_datasource.hpp index 1d49475ca..6e54d9c23 100644 --- a/plugins/input/kismet/kismet_datasource.hpp +++ b/plugins/input/kismet/kismet_datasource.hpp @@ -46,7 +46,7 @@ public: kismet_datasource(mapnik::parameters const& params, bool bind = true); virtual ~kismet_datasource (); datasource::datasource_t type() const; - static std::string name(); + static const char * name(); mapnik::featureset_ptr features(mapnik::query const& q) const; mapnik::featureset_ptr features_at_point(mapnik::coord2d const& pt) const; mapnik::box2d envelope() const; diff --git a/plugins/input/kismet/kismet_featureset.hpp b/plugins/input/kismet/kismet_featureset.hpp index 0efdf537c..7fd1ba551 100644 --- a/plugins/input/kismet/kismet_featureset.hpp +++ b/plugins/input/kismet/kismet_featureset.hpp @@ -49,7 +49,6 @@ public: private: std::list const& knd_list_; boost::scoped_ptr tr_; - mapnik::wkbFormat format_; int feature_id_; std::list::const_iterator knd_list_it; mapnik::projection source_; diff --git a/plugins/input/occi/occi_datasource.cpp b/plugins/input/occi/occi_datasource.cpp index d60271e17..daa7dcd4a 100644 --- a/plugins/input/occi/occi_datasource.cpp +++ b/plugins/input/occi/occi_datasource.cpp @@ -352,7 +352,7 @@ void occi_datasource::bind() const is_bound_ = true; } -std::string occi_datasource::name() +const char * occi_datasource::name() { return "occi"; } diff --git a/plugins/input/occi/occi_datasource.hpp b/plugins/input/occi/occi_datasource.hpp index e9507d8b3..bbc57970d 100644 --- a/plugins/input/occi/occi_datasource.hpp +++ b/plugins/input/occi/occi_datasource.hpp @@ -41,7 +41,7 @@ public: occi_datasource(mapnik::parameters const& params, bool bind = true); virtual ~occi_datasource (); mapnik::datasource::datasource_t type() const; - static std::string name(); + static const char * name(); mapnik::featureset_ptr features(mapnik::query const& q) const; mapnik::featureset_ptr features_at_point(mapnik::coord2d const& pt) const; mapnik::box2d envelope() const; diff --git a/plugins/input/ogr/ogr_datasource.cpp b/plugins/input/ogr/ogr_datasource.cpp index 9237f0a0b..c5a973145 100644 --- a/plugins/input/ogr/ogr_datasource.cpp +++ b/plugins/input/ogr/ogr_datasource.cpp @@ -333,7 +333,7 @@ void ogr_datasource::bind() const is_bound_ = true; } -std::string ogr_datasource::name() +const char * ogr_datasource::name() { return "ogr"; } diff --git a/plugins/input/ogr/ogr_datasource.hpp b/plugins/input/ogr/ogr_datasource.hpp index 0b283800f..1898397e0 100644 --- a/plugins/input/ogr/ogr_datasource.hpp +++ b/plugins/input/ogr/ogr_datasource.hpp @@ -42,7 +42,7 @@ public: ogr_datasource(mapnik::parameters const& params, bool bind=true); virtual ~ogr_datasource (); mapnik::datasource::datasource_t type() const; - static std::string name(); + static const char * name(); mapnik::featureset_ptr features(mapnik::query const& q) const; mapnik::featureset_ptr features_at_point(mapnik::coord2d const& pt) const; mapnik::box2d envelope() const; diff --git a/plugins/input/osm/osm_datasource.cpp b/plugins/input/osm/osm_datasource.cpp index 8835e0339..dbc8dfd7d 100644 --- a/plugins/input/osm/osm_datasource.cpp +++ b/plugins/input/osm/osm_datasource.cpp @@ -130,7 +130,7 @@ osm_datasource::~osm_datasource() //delete osm_data_; } -std::string osm_datasource::name() +const char * osm_datasource::name() { return "osm"; } diff --git a/plugins/input/osm/osm_datasource.hpp b/plugins/input/osm/osm_datasource.hpp index dc0c8fe51..1b99718ed 100644 --- a/plugins/input/osm/osm_datasource.hpp +++ b/plugins/input/osm/osm_datasource.hpp @@ -43,7 +43,7 @@ public: osm_datasource(const parameters& params, bool bind = true); virtual ~osm_datasource(); mapnik::datasource::datasource_t type() const; - static std::string name(); + static const char * name(); featureset_ptr features(const query& q) const; featureset_ptr features_at_point(coord2d const& pt) const; box2d envelope() const; diff --git a/plugins/input/postgis/postgis_datasource.cpp b/plugins/input/postgis/postgis_datasource.cpp index b2ae1a46f..3f95865cd 100644 --- a/plugins/input/postgis/postgis_datasource.cpp +++ b/plugins/input/postgis/postgis_datasource.cpp @@ -313,7 +313,7 @@ void postgis_datasource::bind() const { srid_ = -1; - MAPNIK_LOG_DEBUG(postgis) << "postgis_datasource: Table " << table_ << " is using SRID=-1"; + MAPNIK_LOG_DEBUG(postgis) << "postgis_datasource: Table " << table_ << " is using SRID=" << srid_; } // At this point the geometry_field may still not be known @@ -439,7 +439,7 @@ postgis_datasource::~postgis_datasource() } } -std::string postgis_datasource::name() +const char * postgis_datasource::name() { return "postgis"; } diff --git a/plugins/input/postgis/postgis_datasource.hpp b/plugins/input/postgis/postgis_datasource.hpp index afb840c08..f484837c8 100644 --- a/plugins/input/postgis/postgis_datasource.hpp +++ b/plugins/input/postgis/postgis_datasource.hpp @@ -51,7 +51,7 @@ public: postgis_datasource(const parameters ¶ms, bool bind=true); ~postgis_datasource(); mapnik::datasource::datasource_t type() const; - static std::string name(); + static const char * name(); featureset_ptr features(const query& q) const; featureset_ptr features_at_point(coord2d const& pt) const; mapnik::box2d envelope() const; diff --git a/plugins/input/raster/raster_datasource.cpp b/plugins/input/raster/raster_datasource.cpp index f0d98c8b3..efbd38233 100644 --- a/plugins/input/raster/raster_datasource.cpp +++ b/plugins/input/raster/raster_datasource.cpp @@ -159,7 +159,7 @@ mapnik::datasource::datasource_t raster_datasource::type() const return datasource::Raster; } -std::string raster_datasource::name() +const char * raster_datasource::name() { return "raster"; } diff --git a/plugins/input/raster/raster_datasource.hpp b/plugins/input/raster/raster_datasource.hpp index 5e373142a..9b84380e5 100644 --- a/plugins/input/raster/raster_datasource.hpp +++ b/plugins/input/raster/raster_datasource.hpp @@ -34,7 +34,7 @@ public: raster_datasource(const mapnik::parameters& params, bool bind=true); virtual ~raster_datasource(); datasource::datasource_t type() const; - static std::string name(); + static const char * name(); mapnik::featureset_ptr features(const mapnik::query& q) const; mapnik::featureset_ptr features_at_point(mapnik::coord2d const& pt) const; mapnik::box2d envelope() const; diff --git a/plugins/input/rasterlite/rasterlite_datasource.cpp b/plugins/input/rasterlite/rasterlite_datasource.cpp index 3fd3c73ef..bc8817745 100644 --- a/plugins/input/rasterlite/rasterlite_datasource.cpp +++ b/plugins/input/rasterlite/rasterlite_datasource.cpp @@ -166,7 +166,7 @@ rasterlite_datasource::~rasterlite_datasource() { } -std::string rasterlite_datasource::name() +const char * rasterlite_datasource::name() { return "rasterlite"; } diff --git a/plugins/input/rasterlite/rasterlite_datasource.hpp b/plugins/input/rasterlite/rasterlite_datasource.hpp index 18580935e..4971b2d1d 100644 --- a/plugins/input/rasterlite/rasterlite_datasource.hpp +++ b/plugins/input/rasterlite/rasterlite_datasource.hpp @@ -37,7 +37,7 @@ public: rasterlite_datasource(mapnik::parameters const& params, bool bind = true); virtual ~rasterlite_datasource (); mapnik::datasource::datasource_t type() const; - static std::string name(); + static const char * name(); mapnik::featureset_ptr features(mapnik::query const& q) const; mapnik::featureset_ptr features_at_point(mapnik::coord2d const& pt) const; mapnik::box2d envelope() const; diff --git a/plugins/input/shape/shape_datasource.cpp b/plugins/input/shape/shape_datasource.cpp index 5ceb23284..caf401e81 100644 --- a/plugins/input/shape/shape_datasource.cpp +++ b/plugins/input/shape/shape_datasource.cpp @@ -238,7 +238,7 @@ void shape_datasource::init(shape_io& shape) const MAPNIK_LOG_DEBUG(shape) << "shape_datasource: Shape type=" << shape_type_; } -std::string shape_datasource::name() +const char * shape_datasource::name() { return "shape"; } diff --git a/plugins/input/shape/shape_datasource.hpp b/plugins/input/shape/shape_datasource.hpp index 641f9e373..522365dde 100644 --- a/plugins/input/shape/shape_datasource.hpp +++ b/plugins/input/shape/shape_datasource.hpp @@ -45,7 +45,7 @@ public: shape_datasource(const parameters ¶ms, bool bind=true); virtual ~shape_datasource(); datasource::datasource_t type() const; - static std::string name(); + static const char * name(); featureset_ptr features(const query& q) const; featureset_ptr features_at_point(coord2d const& pt) const; box2d envelope() const; diff --git a/plugins/input/sqlite/sqlite_datasource.cpp b/plugins/input/sqlite/sqlite_datasource.cpp index 863dea7a4..0eec7e5f4 100644 --- a/plugins/input/sqlite/sqlite_datasource.cpp +++ b/plugins/input/sqlite/sqlite_datasource.cpp @@ -473,7 +473,7 @@ void sqlite_datasource::parse_attachdb(std::string const& attachdb) const } } -std::string sqlite_datasource::name() +const char * sqlite_datasource::name() { return "sqlite"; } diff --git a/plugins/input/sqlite/sqlite_datasource.hpp b/plugins/input/sqlite/sqlite_datasource.hpp index 11ec7cf7f..c1f840212 100644 --- a/plugins/input/sqlite/sqlite_datasource.hpp +++ b/plugins/input/sqlite/sqlite_datasource.hpp @@ -43,7 +43,7 @@ public: sqlite_datasource(mapnik::parameters const& params, bool bind = true); virtual ~sqlite_datasource (); datasource::datasource_t type() const; - static std::string name(); + static const char * name(); mapnik::featureset_ptr features(mapnik::query const& q) const; mapnik::featureset_ptr features_at_point(mapnik::coord2d const& pt) const; mapnik::box2d envelope() const; diff --git a/plugins/input/templates/helloworld/hello_datasource.cpp b/plugins/input/templates/helloworld/hello_datasource.cpp index 8bcd2283c..897b40829 100644 --- a/plugins/input/templates/helloworld/hello_datasource.cpp +++ b/plugins/input/templates/helloworld/hello_datasource.cpp @@ -39,11 +39,9 @@ void hello_datasource::bind() const hello_datasource::~hello_datasource() { } // This name must match the plugin filename, eg 'hello.input' -std::string const hello_datasource::name_="hello"; - -std::string hello_datasource::name() +const char * hello_datasource::name() { - return name_; + return "hello"; } mapnik::datasource::datasource_t hello_datasource::type() const diff --git a/plugins/input/templates/helloworld/hello_datasource.hpp b/plugins/input/templates/helloworld/hello_datasource.hpp index a2c136246..f2e172f56 100644 --- a/plugins/input/templates/helloworld/hello_datasource.hpp +++ b/plugins/input/templates/helloworld/hello_datasource.hpp @@ -18,7 +18,7 @@ public: mapnik::datasource::datasource_t type() const; // mandatory: name of the plugin - static std::string name(); + static const char * name(); // mandatory: function to query features by box2d // this is called when rendering, specifically in feature_style_processor.hpp