00001
00002
00003
00004
00005
00006
00007
00008
00009 #ifndef SHAPE_DISCRETIZABLESHAPEINTERFACE_H
00010 #define SHAPE_DISCRETIZABLESHAPEINTERFACE_H
00011
00012 #include <shape/BoundaryDiscretizer.hpp>
00013
00014 namespace imaging
00015 {
00031 template <size_t N>
00032 class DiscretizableShapeInterface
00033 {
00034 public:
00036 const static size_t SHAPE_DIMENSION = N;
00037
00038 virtual ~DiscretizableShapeInterface() {};
00039
00041 virtual std::auto_ptr< BoundaryDiscretizer<SHAPE_DIMENSION> > boundary_discretizer(size_t n_points) const = 0;
00042 };
00043 }
00044
00045
00046 #endif