1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
|
#ifndef PYTHON_FEATURESET_HPP
#define PYTHON_FEATURESET_HPP
// mapnik
#include <mapnik/feature.hpp>
// boost
#include <boost/python.hpp>
#include <boost/python/stl_iterator.hpp>
// mapnik
#include <mapnik/datasource.hpp>
class python_featureset : public mapnik::Featureset
{
public:
// this constructor can have any arguments you need
python_featureset(boost::python::object iterator);
// desctructor
virtual ~python_featureset();
// mandatory: you must expose a next() method, called when rendering
mapnik::feature_ptr next();
private:
typedef boost::python::stl_input_iterator<mapnik::feature_ptr> feature_iter;
feature_iter begin_, end_;
};
#endif // PYTHON_FEATURESET_HPP
|