38 #ifndef AIMS_MESHPROJECTION_MESHPROJECTION_D_H 39 #define AIMS_MESHPROJECTION_MESHPROJECTION_D_H 54 _mesh(mesh),_volume(vol)
74 const std::string &method,
77 std::map<std::string,CreationMethod>& projectMethod = mapMethod();
78 typename std::map<std::string,CreationMethod>::const_iterator i;
79 i = projectMethod.find(method);
81 if ( i!= projectMethod.end() )
82 p= i->second(mesh,vol,params);
84 for(i=projectMethod.begin(); !p && i!=projectMethod.end();++i )
85 p= i->second(mesh,vol,params);
91 std::map<std::string,typename MeshProjectionFactory<T>::CreationMethod>&
94 static std::map<std::string,CreationMethod> projMethod;
102 mapMethod()[method]=pf;
108 mapMethod().erase(method);
114 std::set<std::string> list;
115 std::map<std::string,CreationMethod>& projectMethod = mapMethod();
116 typename std::map<std::string,CreationMethod>::const_iterator i;
117 for (i=projectMethod.begin(); i!=projectMethod.end(); ++i)
118 list.insert(i->first);
AIMSDATA_API AimsTimeSurface< 3, Void > AimsSurfaceTriangle
const AimsSurfaceTriangle * mesh() const
The class for EcatSino data write operation.
static std::set< std::string > listMethod()
MeshProjection(const AimsSurfaceTriangle *, const carto::Volume< T > *)
static MeshProjection< T > * create(const AimsSurfaceTriangle *, const carto::Volume< T > *, const std::string &method, carto::Object params)
virtual ~MeshProjection()
static void unregisterMethod(const std::string &)
static void registerMethod(const std::string &, CreationMethod)
const carto::Volume< T > * volume() const