28 #ifndef itkVTKImageIO_h
29 #define itkVTKImageIO_h
30 #include "ITKIOVTKExport.h"
70 bool CanStreamWrite()
override;
75 bool CanStreamRead()
override;
82 bool CanReadFile(
const char *)
override;
85 void ReadImageInformation()
override;
88 void Read(
void *buffer)
override;
94 bool CanWriteFile(
const char *)
override;
102 void Write(
const void *buffer)
override;
111 void PrintSelf(std::ostream & os,
Indent indent)
const override;
113 void InternalReadImageInformation(std::ifstream & file);
116 int GetNextLine(std::ifstream& ifs, std::string& line,
bool lowerCase =
true,
SizeValueType count= 0);
118 void WriteImageInformation(
const void *buffer);
120 void ReadHeaderSize(std::ifstream & file);
123 void ReadBufferAsASCII(std::istream & os,
void *buffer,
124 IOComponentType ctype,
125 SizeType numberOfBytesToBeRead)
override;
128 void WriteBufferAsASCII(std::ostream & os,
const void *buffer,
129 IOComponentType ctype,
130 SizeType numberOfBytesToWrite)
override;
134 virtual void ReadSymmetricTensorBufferAsBinary(std::istream& os,
140 virtual void WriteSymmetricTensorBufferAsBinary(std::ostream& os,
145 void SetPixelTypeFromString(
const std::string & pixelType);
146 std::string GetComponentTypeAsString(IOComponentType);
149 SizeType GetIORegionSizeInPixels()
const;
152 SizeType GetIORegionSizeInBytes()
const;
156 SizeType GetIORegionSizeInComponents()
const;
162 #endif // itkVTKImageIO_h
void WriteImageInformation() override
Light weight base class for most itk classes.
unsigned long SizeValueType
A base class for specific ImageIO file formats which support streaming.
ImageBaseType::SizeType SizeType
ImageIO class for reading VTK images.
Control indentation during Print() invocation.
Base class for most ITK classes.
SizeType GetHeaderSize() const override