25 #ifndef __itkHDF5ImageIO_h
26 #define __itkHDF5ImageIO_h
45 class MetaDataObjectBase;
46 class MetaDataDictionary;
107 virtual bool CanReadFile(
const char *FileNameToRead);
113 virtual void Read(
void *buffer);
130 virtual void Write(
const void *buffer);
145 const std::string &value);
148 std::string
ReadString(
const std::string &path);
155 const unsigned long &value);
157 template <
typename TScalar>
159 const TScalar &value);
161 template <
typename TScalar>
162 TScalar
ReadScalar(
const std::string &DataSetName);
164 template <
typename TScalar>
166 const std::vector<TScalar> &vec);
168 template <
typename TScalar>
169 std::vector<TScalar>
ReadVector(
const std::string &DataSetName);
172 const std::vector<std::vector<double> > &dir);
174 std::vector<std::vector<double> >
ReadDirections(
const std::string &path);
176 template <
typename TType>
179 template <
typename TType>
182 template <
typename TType>
184 const std::string &HDFPath,
185 const std::string &name,
186 unsigned long numElements);
188 H5::DataSpace *slabSpace);
195 #endif // __itkHDF5ImageIO_h
std::vector< std::vector< double > > ReadDirections(const std::string &path)
virtual SizeType GetHeaderSize(void) const
Returns the size of the header in the file.
Light weight base class for most itk classes.
std::vector< TScalar > ReadVector(const std::string &DataSetName)
H5::DataSet * m_VoxelDataSet
Abstract superclass defines image IO interface.
SmartPointer< Self > Pointer
A base class for specific ImageIO file formats which support streaming.
void SetupStreaming(H5::DataSpace *imageSpace, H5::DataSpace *slabSpace)
std::string ReadString(const std::string &path)
virtual void Write(const void *buffer)
virtual bool CanReadFile(const char *FileNameToRead)
virtual bool CanWriteFile(const char *FileNameToWrite)
TScalar ReadScalar(const std::string &DataSetName)
virtual void WriteImageInformation()
bool WriteMeta(const std::string &name, MetaDataObjectBase *metaObj)
virtual void ReadImageInformation()
void WriteDirections(const std::string &path, const std::vector< std::vector< double > > &dir)
bool WriteMetaArray(const std::string &name, MetaDataObjectBase *metaObj)
void WriteVector(const std::string &path, const std::vector< TScalar > &vec)
void WriteScalar(const std::string &path, const bool &value)
bool m_ImageInformationWritten
void WriteString(const std::string &path, const std::string &value)
void operator=(const Self &)
void StoreMetaData(MetaDataDictionary *metaDict, const std::string &HDFPath, const std::string &name, unsigned long numElements)
Control indentation during Print() invocation.
virtual void Read(void *buffer)
void PrintSelf(std::ostream &os, Indent indent) const
Class that defines how to read HDF5 file format. HDF5 IMAGE FILE FORMAT - As much information as I ca...
Base class for most ITK classes.