00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017 #ifndef __itkGDCMSeriesFileNames_h
00018 #define __itkGDCMSeriesFileNames_h
00019
00020 #include "itkObject.h"
00021 #include "itkObjectFactory.h"
00022 #include "itkExceptionObject.h"
00023 #include <vector>
00024
00025 namespace itk
00026 {
00027
00045 class ITK_EXPORT GDCMSeriesFileNames : public Object
00046 {
00047 public:
00049 typedef GDCMSeriesFileNames Self;
00050 typedef Object Superclass;
00051 typedef SmartPointer<Self> Pointer;
00052
00054 itkNewMacro(Self);
00055
00057 itkTypeMacro(GDCMSeriesFileNames, Object);
00058
00059
00060
00062 void SetInputDirectory (const char * name)
00063 {
00064 if( !name )
00065 {
00066 itkExceptionMacro(<<"SetInputDirectory() received a NULL string");
00067 }
00068 std::string fname = name;
00069 this->SetInputDirectory( fname );
00070 }
00071
00073 void SetInputDirectory (std::string const &name)
00074 {
00075 m_InputDirectory = name;
00076 this->Modified();
00077 }
00078
00081 const std::vector<std::string> &GetInputFileNames () ;
00082
00084 void SetOutputDirectory (std::string const &name)
00085 {
00086 m_OutputDirectory = name;
00087 this->Modified();
00088 }
00089
00095 const std::vector<std::string> &GetOutputFileNames () ;
00096
00097 protected:
00098 GDCMSeriesFileNames() {};
00099 ~GDCMSeriesFileNames() {};
00100 void PrintSelf(std::ostream& os, Indent indent) const;
00101
00102 private:
00103 GDCMSeriesFileNames(const Self&);
00104 void operator=(const Self&);
00105
00107 std::string m_InputDirectory;
00108
00110 std::string m_OutputDirectory;
00111
00113 std::vector<std::string> m_InputFileNames;
00114 std::vector<std::string> m_OutputFileNames;
00115 };
00116
00117 }
00118
00119 #endif // __itkGDCMSeriesFileNames_h