]> Creatis software - creaImageIO.git/blobdiff - src2/creaImageIOImageReader.h
move directory
[creaImageIO.git] / src2 / creaImageIOImageReader.h
index af7dee63897f7cc1b4433e6531954777ae80b9c2..ab9fbe70b3bb70b2d02f16ffe1ff4109525fb5af 100644 (file)
@@ -1,19 +1,18 @@
 #ifndef __creaImageIOImageReader_h_INCLUDED__
 #define __creaImageIOImageReader_h_INCLUDED__
 
+#include <creaImageIOSystem.h>
 #include <creaImageIOAbstractImageReader.h>
 
 namespace creaImageIO
 {
 
-
   /**
-   * \ingroup ReadWrite
+   * \ingroup IO
+   * \brief Generic image reader which uses all the specific concrete image reader of the lib (tif, jpg, dicom, ...)
    */
-  //=====================================================================
-  /// Generic image reader which uses all the specific concrete image reader
-/// of the lib (tif, jpg, dicom, ...)
-class ImageReader : virtual public AbstractImageReader
+  class CREAIMAGEIO_EXPORT ImageReader : virtual public AbstractImageReader
   {
   public:
     ImageReader();
@@ -42,13 +41,20 @@ class ImageReader : virtual public AbstractImageReader
 
   protected:
     
-    void Register(AbstractImageReader*);
+    /// Register a reader
+    void Register( boost::shared_ptr<AbstractImageReader> );
 
-    std::vector<AbstractImageReader*> mReader;
+       std::vector<boost::shared_ptr<AbstractImageReader> > mReader;
     vtkImageData* mUnreadableImage;
 
     std::string mLastFilename;
-    AbstractImageReader* mLastReader;
+       boost::shared_ptr<AbstractImageReader> mLastReader;
+
+       bool ShallNotRead( const std::string& filename );
+
+       void UnRegister(const std::string i_val);
+
+       std::vector <std::string> mUnReader;
     
   private: