18 #ifndef __itkDICOMSeriesFileNames_h
19 #define __itkDICOMSeriesFileNames_h
27 #include "DICOMParser.h"
28 #include "DICOMAppHelper.h"
71 void SetDirectory(
const std::string & dir)
73 if ( m_Directory != dir )
90 m_DirectorySetTime.Modified();
98 itkSetMacro(Ascending,
bool);
99 itkGetConstMacro(Ascending,
bool);
100 itkBooleanMacro(Ascending);
121 const FileNamesArrayType & GetFileNames(
bool recursive =
false);
127 const FileNamesArrayType & GetFileNames(
const std::string & seriesUID,
128 bool recursive =
false);
134 typedef enum { SortByImageNumber,
SortBySliceLocation, SortByImagePositionPatient } FileNameSortingOrderType;
135 itkSetEnumMacro(FileNameSortingOrder, FileNameSortingOrderType);
136 itkGetEnumMacro(FileNameSortingOrder, FileNameSortingOrderType);
137 void SetFileNameSortingOrderToSortByImageNumber()
138 { this->SetFileNameSortingOrder(SortByImageNumber); }
139 void SetFileNameSortingOrderToSortBySliceLocation()
140 { this->SetFileNameSortingOrder(SortBySliceLocation); }
141 void SetFileNameSortingOrderToSortByImagePositionPatient()
142 { this->SetFileNameSortingOrder(SortByImagePositionPatient); }
148 std::string GetFileName(
const std::string & instanceUID);
153 void PrintSelf(std::ostream & os,
Indent indent)
const;
157 void operator=(
const Self &);
159 int CanReadFile(
const char *fname);
161 void RecurseDirectory(std::string directory, FileNamesArrayType & filenames);
181 #endif // __itkDICOMSeriesFileNames_h