--- /dev/null
+#ifdef _USE_VTK_
+
+#ifndef __bbgdcmvtkGetXCoherentInfoGdcmReader_h_INCLUDED__
+#define __bbgdcmvtkGetXCoherentInfoGdcmReader_h_INCLUDED__
+
+#include "bbgdcmvtk_EXPORT.h"
+#include "bbtkAtomicBlackBox.h"
+#include "iostream"
+
+#include "vtkGdcmReader.h"
+#include "gdcmFile.h"
+#include "gdcmSerieHelper.h"
+
+namespace bbgdcmvtk
+{
+
+class bbgdcmvtk_EXPORT GetXCoherentInfoGdcmReader
+ :
+ public bbtk::AtomicBlackBox
+{
+ BBTK_BLACK_BOX_INTERFACE(GetXCoherentInfoGdcmReader,bbtk::AtomicBlackBox);
+//==================================================================
+/// User callback called in the box contructor
+virtual void bbUserConstructor();
+/// User callback called in the box copy constructor
+virtual void bbUserCopyConstructor(bbtk::BlackBox::Pointer);
+/// User callback called in the box destructor
+virtual void bbUserDestructor();
+//==================================================================
+
+ BBTK_DECLARE_INPUT(In, std::vector<std::string>);
+ BBTK_DECLARE_OUTPUT(Out, vtkImageData *);
+ BBTK_DECLARE_OUTPUT(IPP, std::vector<double>);
+ BBTK_DECLARE_OUTPUT(IOP, std::vector<double>);
+ BBTK_DECLARE_OUTPUT(PixelSpacing, std::vector<double>);
+ BBTK_DECLARE_OUTPUT(InterSlice, double);
+
+ BBTK_PROCESS(Process);
+ void Process();
+
+ private:
+ GDCM_NAME_SPACE::File *f;
+ GDCM_NAME_SPACE::SerieHelper *sh;
+ vtkGdcmReader *reader;
+};
+
+ //=================================================================
+ // UserBlackBox description
+BBTK_BEGIN_DESCRIBE_BLACK_BOX(GetXCoherentInfoGdcmReader,bbtk::AtomicBlackBox);
+BBTK_NAME("GetXCoherentInfoGdcmReader");
+BBTK_AUTHOR("jpr, eduardo");
+BBTK_DESCRIPTION("Get Dicom info from a File Set and read (as a vtkImageData)");
+BBTK_CATEGORY("");
+
+BBTK_INPUT(GetXCoherentInfoGdcmReader,In,"Dicom image file name",std::vector<std::string>,"");
+
+BBTK_OUTPUT(GetXCoherentInfoGdcmReader,Out, "Output image", vtkImageData *,"");
+BBTK_OUTPUT(GetXCoherentInfoGdcmReader,IPP, "Image Position (Patient)", std::vector<double>,"");
+BBTK_OUTPUT(GetXCoherentInfoGdcmReader,IOP, "Image Orientation (Patient)", std::vector<double>,"");
+BBTK_OUTPUT(GetXCoherentInfoGdcmReader,PixelSpacing,"Pixel Spacing", std::vector<double>,"");
+BBTK_OUTPUT(GetXCoherentInfoGdcmReader,InterSlice, "InterSlice", double,"");
+BBTK_END_DESCRIBE_BLACK_BOX(GetXCoherentInfoGdcmReader);
+} // EO namespace bbgdcmvtk
+
+#endif // __bbgdcmvtkGetXCoherentInfoGdcmReader_h_INCLUDED__
+
+#endif //_USE_VTK_