]> Creatis software - clitk.git/blobdiff - segmentation/clitkAnatomicalFeatureDatabase.h
itkv4 migration:
[clitk.git] / segmentation / clitkAnatomicalFeatureDatabase.h
index f1324cb687a86058cf61c6118e77e5f7800bec92..438cac8bb9ae8265e41f7f57154da52699de8272 100644 (file)
@@ -51,11 +51,16 @@ namespace clitk {
     void SetPoint3D(TagType tag, PointType3D & p);
     void GetPoint3D(TagType tag, PointType3D & p);
     double GetPoint3D(std::string tag, int dim);
+    bool TagExist(std::string tag);
     
     // Set Get image
     void SetImageFilename(TagType tag, std::string f);
     template<class ImageType>
-    typename ImageType::Pointer GetImage(TagType tag);
+    typename ImageType::Pointer GetImage(TagType tag, bool reload=false);
+    template<class ImageType>
+    void  SetImage(TagType tag, std::string f, typename ImageType::Pointer image, bool write=false);
+    template<class ImageType>
+    void ReleaseImage(TagType tag);
     
     // Set Get Double
     void SetDouble(TagType tag, double d);
@@ -63,8 +68,11 @@ namespace clitk {
 
   protected:
     std::string m_Filename;
+    typedef itk::ImageBase<3> ImageBaseType;
     typedef std::map<TagType, std::string> MapTagType;
+        typedef std::map<TagType, ImageBaseType*> MapTagImageType; 
     MapTagType m_MapOfTag;
+    MapTagImageType m_MapOfImage;
 
   }; // end class
   //--------------------------------------------------------------------