Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033 #ifndef __cmtkFileFormat_h_included_
00034 #define __cmtkFileFormat_h_included_
00035
00036 #include <cmtkconfig.h>
00037
00038 namespace
00039 cmtk
00040 {
00041
00044
00046 typedef enum {
00048 FILEFORMAT_NEXIST = 0,
00050 FILEFORMAT_COMPRESSED_ARCHIVE = 1,
00052 FILEFORMAT_STUDY = 2,
00054 FILEFORMAT_STUDYLIST = 3,
00056 FILEFORMAT_TYPEDSTREAM = 4,
00058 FILEFORMAT_PGM = 5,
00060 FILEFORMAT_DICOM = 6,
00062 FILEFORMAT_VANDERBILT = 7,
00064 FILEFORMAT_AMIRA = 8,
00066 FILEFORMAT_RAW = 9,
00068 FILEFORMAT_RAW3D = 10,
00070 FILEFORMAT_BIORAD = 11,
00072 FILEFORMAT_NIFTI_DETACHED = 12,
00074 FILEFORMAT_NIFTI_SINGLEFILE = 13,
00076 FILEFORMAT_ANALYZE_AVW = 14,
00078 FILEFORMAT_METAIMAGE = 15,
00080 FILEFORMAT_NRRD = 16,
00082 FILEFORMAT_ANALYZE_HDR = 17,
00084 FILEFORMAT_ANALYZE_HDR_BIGENDIAN = 18,
00086 FILEFORMAT_ITK_TFM = 19,
00090 FILEFORMAT_UNKNOWN
00091 } FileFormatID;
00092
00094 extern const char* FileFormatName[];
00095
00098 class FileFormat
00099 {
00100 public:
00106 static FileFormatID Identify( const char* path , const bool decompress = true );
00107
00110 static FileFormatID GetID( const char* name );
00111
00114 static const char* Describe( const FileFormatID id );
00115
00118 static const char* Describe( const char* path )
00119 {
00120 return Describe( Identify( path ) );
00121 }
00122
00123 private:
00126 static FileFormatID IdentifyDirectory( const char* path );
00127
00130 static FileFormatID IdentifyFile( const char* path , const bool decompress = true );
00131 };
00132
00134
00135 }
00136
00137 #endif // #ifndef __cmtkFileFormat_h_included_