Skip to content

Commit 9e01398

Browse files
committed
load_map + load_map_from_string
1 parent d24196a commit 9e01398

1 file changed

Lines changed: 55 additions & 28 deletions

File tree

src/mapnik_python.cpp

Lines changed: 55 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -20,8 +20,13 @@
2020
*
2121
*****************************************************************************/
2222

23+
//mapnik
2324
#include <mapnik/config.hpp>
2425
#include <mapnik/version.hpp>
26+
#include <mapnik/map.hpp>
27+
#include <mapnik/load_map.hpp>
28+
#include <mapnik/save_map.hpp>
29+
//pybind11
2530
#include <pybind11/pybind11.h>
2631

2732
namespace py = pybind11;
@@ -123,39 +128,61 @@ void export_datasource(py::module&);
123128
void export_datasource_cache(py::module const&);
124129
void export_image(py::module const&);
125130
void export_layer(py::module const&);
131+
void export_map(py::module const&);
126132
void export_projection(py::module&);
127133
void export_proj_transform(py::module const&);
128134
void export_query(py::module const& m);
129135

136+
137+
using mapnik::load_map;
138+
using mapnik::load_map_string;
139+
using mapnik::save_map;
140+
using mapnik::save_map_to_string;
141+
142+
130143
PYBIND11_MODULE(_mapnik, m) {
131-
export_color(m);
132-
export_composite_modes(m);
133-
export_coord(m);
134-
export_envelope(m);
135-
export_geometry(m);
136-
export_gamma_method(m);
137-
export_feature(m);
138-
export_featureset(m);
139-
export_font_engine(m);
140-
export_expression(m);
141-
export_datasource(m);
142-
export_datasource_cache(m);
143-
export_image(m);
144-
export_layer(m);
145-
export_projection(m);
146-
export_proj_transform(m);
147-
export_query(m);
148-
149-
m.def("mapnik_version", &mapnik_version,"Get the Mapnik version number");
150-
m.def("mapnik_version_string", &mapnik_version_string,"Get the Mapnik version string");
151-
m.def("has_proj", &has_proj, "Get proj status");
152-
m.def("has_jpeg", &has_jpeg, "Get jpeg read/write support status");
153-
m.def("has_png", &has_png, "Get png read/write support status");
154-
m.def("has_tiff", &has_tiff, "Get tiff read/write support status");
155-
m.def("has_webp", &has_webp, "Get webp read/write support status");
156-
m.def("has_svg_renderer", &has_svg_renderer, "Get svg_renderer status");
157-
m.def("has_grid_renderer", &has_grid_renderer, "Get grid_renderer status");
158-
m.def("has_cairo", &has_cairo, "Get cairo library status");
144+
export_color(m);
145+
export_composite_modes(m);
146+
export_coord(m);
147+
export_envelope(m);
148+
export_geometry(m);
149+
export_gamma_method(m);
150+
export_feature(m);
151+
export_featureset(m);
152+
export_font_engine(m);
153+
export_expression(m);
154+
export_datasource(m);
155+
export_datasource_cache(m);
156+
export_image(m);
157+
export_layer(m);
158+
export_map(m);
159+
export_projection(m);
160+
export_proj_transform(m);
161+
export_query(m);
162+
163+
m.def("mapnik_version", &mapnik_version,"Get the Mapnik version number");
164+
m.def("mapnik_version_string", &mapnik_version_string,"Get the Mapnik version string");
165+
m.def("has_proj", &has_proj, "Get proj status");
166+
m.def("has_jpeg", &has_jpeg, "Get jpeg read/write support status");
167+
m.def("has_png", &has_png, "Get png read/write support status");
168+
m.def("has_tiff", &has_tiff, "Get tiff read/write support status");
169+
m.def("has_webp", &has_webp, "Get webp read/write support status");
170+
m.def("has_svg_renderer", &has_svg_renderer, "Get svg_renderer status");
171+
m.def("has_grid_renderer", &has_grid_renderer, "Get grid_renderer status");
172+
m.def("has_cairo", &has_cairo, "Get cairo library status");
173+
174+
m.def("load_map", &load_map,
175+
py::arg("Map"),
176+
py::arg("filename"),
177+
py::arg("strict")=false,
178+
py::arg("base_path") = "" );
179+
180+
m.def("load_map_from_string", &load_map_string,
181+
py::arg("Map"),
182+
py::arg("str"),
183+
py::arg("strict")=false,
184+
py::arg("base_path") = "" );
185+
159186
// m.def("has_pycairo", &has_pycairo, "Get pycairo module status");
160187
}
161188

0 commit comments

Comments
 (0)