*/
+#include <vtkVersionMacros.h>
#include <creaImageIOImageReader.h>
#include <creaImageIOTreeAttributeDescriptor.h>
#include <creaImageIOSystem.h>
#include <vtkBMPReader.h>
#include <vtkSLCReader.h>
#include <vtkMetaImageReader.h>
+#include <vtkNIFTIImageReader.h>
+
//#include <vtkGESignalReader.h>
#include "boost/filesystem/path.hpp"
Register(boost::shared_ptr<AbstractImageReader>(new VtkImageReader(vtkBMPReader::New(), "BMP", ".bmp")));
Register(boost::shared_ptr<AbstractImageReader>(new VtkImageReader(vtkSLCReader::New())));
Register(boost::shared_ptr<AbstractImageReader>(new VtkImageReader(vtkMetaImageReader::New(),"MHD",".mhd")));
+ Register(boost::shared_ptr<AbstractImageReader>(new VtkImageReader(vtkNIFTIImageReader::New(),"NIF",".nii.gz")));
+
// Register(new VtkImageReader(vtkGESignalReader::New()));
Register(boost::shared_ptr<AbstractImageReader>(new DicomImageReader));
Register(boost::shared_ptr<AbstractImageReader>(new UltrasonixImageReader));
// Returns true iff the file is readable
bool ImageReader::CanRead( const std::string& filename )
{
-printf("EED ImageReader::CanRead Start\n");
bool ok = false;
{
mLastFilename = filename;
mLastReader = *i;
-printf("EED ImageReader::CanRead %s\n",mLastReader->GetName().c_str());
break;
}
}
}
-if (ok==true) printf("EED ImageReader::CanRead true End\n");
-if (ok==false) printf("EED ImageReader::CanRead false End\n");
return ok;
}
//=====================================================================
// Reads the file (CanRead must be called before : no test here)
vtkImageData* ImageReader::ReadImage( const std::string& filename)
{
-printf("EED ImageReader::ReadImage Start\n");
if (mLastFilename!=filename)
{
-printf("EED ImageReader::ReadImage 1\n");
if (!CanRead(filename))
{
-printf("EED ImageReader::ReadImage 2\n");
vtkImageData* im = vtkImageData::New();
im->ShallowCopy(mUnreadableImage);
-printf("EED ImageReader::ReadImage END2\n");
return im;
} // CanRead
} // for mLastFilename
-printf("EED ImageReader::ReadImage 3\n");
vtkImageData* i = mLastReader->ReadImage(mLastFilename);
-printf("EED ImageReader::ReadImage 4\n");
if (i==NULL)
{
i = vtkImageData::New();
i->ShallowCopy(mUnreadableImage);
} // i
-printf("EED ImageReader::ReadImage END1\n");
return i;
}