]> Creatis software - creaImageIO.git/blobdiff - src2/creaImageIOVtkImageReader.h
*** empty log message ***
[creaImageIO.git] / src2 / creaImageIOVtkImageReader.h
diff --git a/src2/creaImageIOVtkImageReader.h b/src2/creaImageIOVtkImageReader.h
new file mode 100644 (file)
index 0000000..8d28c76
--- /dev/null
@@ -0,0 +1,47 @@
+#ifndef __creaImageIOVtkImageReader_h_INCLUDED__
+#define __creaImageIOVtkImageReader_h_INCLUDED__
+
+
+#include <creaImageIOSpecificImageReader.h>
+
+// forward decl
+class vtkImageReader2;
+
+namespace creaImageIO
+{
+
+
+  /**
+   * \ingroup ReadWrite
+   */
+  
+  //=====================================================================
+  /// Specific image reader based on a vtkImageReader2 
+  class VtkImageReader : virtual public SpecificImageReader
+  {
+  public:
+    VtkImageReader(vtkImageReader2* reader, 
+                  const std::string& name = "",
+                  const std::string& extensions = "");
+
+    virtual ~VtkImageReader();
+
+    virtual void PushBackExtensions(std::vector<std::string>&);
+    virtual bool CanRead(const std::string& filename);
+    virtual vtkImageData* ReadImage(const std::string& filename);
+    virtual void ReadAttributes(const std::string& filename, 
+                               tree::AttributeMapType& attr);
+
+  private:
+    vtkImageReader2* mReader;
+    std::string mExtensions;
+  };
+  //=====================================================================
+
+
+
+} // namespace creaImageIO
+
+
+
+#endif // #ifndef __creaImageIOVtkImageReader_h_INCLUDED__