22 #include <boost/python/class.hpp>
23 #include <boost/python/enum.hpp>
24 #include <boost/python/module.hpp>
25 #include <boost/python/suite/indexing/vector_indexing_suite.hpp>
34 namespace bp = boost::python;
36 namespace SourceXtractor {
40 bp::class_<PyOutputWrapper, boost::noncopyable>(
"OutputWrapper",
41 "A file-like object used to wrap stdout and stderr", bp::no_init)
59 bp::class_<ObjectInfo>(
"ObjectInfo",
60 "A source detected by SourceXtractor++ after the segmentation and deblending", bp::init<SourceInterface&>())
68 bp::class_<PyMeasurementImage>(
"MeasurementImage",
69 "C++ part of the MeasurementImage", bp::init<std::string, std::string, std::string>())
88 bp::class_<PyId>(
"Id", bp::init<>())
91 bp::class_<PyAperture, bp::bases<PyId>>(
"Aperture",
92 "Set of aperture photometries", bp::init<bp::list>())
97 bp::class_<CoordinateSystem, boost::noncopyable>(
"CoordinateSystem",
98 "Implements transformation of coordinates between image and world coordinates", bp::no_init)
101 bp::register_ptr_to_python<std::shared_ptr<CoordinateSystem>>();
103 bp::class_<WorldCoordinate>(
"WorldCoordinate",
"World coordinates")
104 .def(bp::init<double, double>())
108 bp::class_<ImageCoordinate>(
"ImageCoordinate",
"Image coordinates, in pixels")
109 .def(bp::init<double, double>())
113 bp::enum_<Flags>(
"Flags",
"Source flags")
124 bp::class_<std::vector<double> >(
"_DoubleVector")
127 bp::class_<std::vector<float> >(
"_FloatVector")