9 #ifndef TomatoLIB_ITKREADFILELISTFILTER_H 10 #define TomatoLIB_ITKREADFILELISTFILTER_H 12 #include "CmakeConfigForTomato.h" 17 #include "itkImageFileReaderKW.h" 18 #include "itkTileImageFilter.h" 19 #include "itkMultiplyImageFilter.h" 20 #include "itkAddImageFilter.h" 21 #include "itkGDCMImageIO.h" 22 #include "itkMetaDataObject.h" 29 template<
typename TImage>
30 class ReadFileListFilter :
public ImageSource< TImage > {
34 typedef ReadFileListFilter Self;
35 typedef ImageSource <TImage> Superclass;
36 typedef SmartPointer <Self> Pointer;
43 typedef TImage ImageType3D;
44 typedef typename ImageType3D::PixelType PixelType;
45 typedef itk::Image< PixelType, 2 > ImageType2D;
47 typedef itk::TileImageFilter< ImageType3D, ImageType3D > TileImageType;
48 typedef itk::AddImageFilter< ImageType3D, ImageType3D > AddImageType;
49 typedef itk::MultiplyImageFilter< ImageType3D, ImageType3D > MultiplyImageType;
51 typedef std::vector<std::string> FileListType;
52 typedef std::vector<MetaDataDictionary> MetaDataDictionaryArrayType;
54 typedef itk::MetaDataDictionary DictionaryType;
55 typedef itk::MetaDataObject< std::string > MetaDataStringType;
58 void SetFileList(std::vector<std::string> fileList);
59 void SetDirName(std::string dirName);
60 itkSetMacro(Verbose,
bool);
62 template<
typename TYPE >
63 vnl_vector<TYPE> GetVnlVectorFromStdVector(std::vector<TYPE> stdVector);
66 vnl_vector<double> GetInvTimes();
67 vnl_vector<double> GetRepTimes();
68 vnl_vector<double> GetEchoTimes();
69 vnl_vector<double> GetTriggerTimes();
70 vnl_vector<double> GetAcqTimes();
71 vnl_vector<double> GetRelAcqTimes();
73 const std::vector<std::string> &GetFileList()
const;
74 const std::string &GetDirName()
const;
76 itkGetMacro(MetaDataDictionaryArray, MetaDataDictionaryArrayType);
77 itkGetObjectMacro(DicomIO, GDCMImageIO);
78 itkGetMacro(Verbose,
bool);
84 virtual ~ReadFileListFilter(){};
87 virtual void GenerateData() ITK_OVERRIDE;
90 ITK_DISALLOW_COPY_AND_ASSIGN(ReadFileListFilter);
92 std::vector<std::
string> m_FileList;
93 std::
string m_DirName;
94 std::vector<
double> m_InvTimes;
95 std::vector<
double> m_InvTimes20051572;
96 std::vector<
double> m_InvTimes00211189;
97 std::vector<
double> m_InvTimesFromImageComments;
98 std::vector<
double> m_RepTimes;
99 std::vector<
double> m_EchoTimes;
100 std::vector<
double> m_EchoTimes00191016;
101 std::vector<
double> m_EchoTimes00209158;
102 std::vector<
double> m_EchoTimesFromImageComments;
103 std::vector<
double> m_TriggerTimes;
104 std::vector<
double> m_AcqTimes;
105 MetaDataDictionaryArrayType m_MetaDataDictionaryArray;
106 GDCMImageIO::Pointer m_DicomIO;
109 double FindInversionTime(ReaderType* reader);
110 double FindInversionTime20051572(ReaderType* reader);
111 double FindInversionTime00211189(ReaderType* reader);
112 double FindInversionTimeFromImageComments(ReaderType* reader);
113 double FindRepetitionTime(ReaderType* reader);
114 double FindEchoTime(ReaderType* reader);
115 double FindEchoTime00191016(ReaderType* reader);
116 double FindEchoTime00209158(ReaderType* reader);
117 double FindEchoTimeFromImageComments(ReaderType* reader);
118 double FindTriggerTime(ReaderType* reader);
119 double FindAcqTime(ReaderType* reader);
123 #ifndef TOMATOLIB_COMPILED 124 #ifndef ITK_MANUAL_INSTANTIATION 125 #include "itkReadFileListFilter.hxx" 126 #endif //ITK_MANUAL_INSTANTIATION 127 #endif //TOMATOLIB_COMPILED 132 #endif //TomatoLIB_ITKREADFILELISTFILTER_H Definition: itkImageFileReaderKW.h:31
Data source that reads image data from a single file.
Definition: itkImageFileReaderKW.h:76