ITK  6.0.0
Insight Toolkit
Classes | Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | Private Member Functions | Private Attributes | List of all members

#include <itkImageIOBase.h>

Detailed Description

Abstract superclass defines image IO interface.

ImageIOBase is a class that reads and/or writes image data of a particular format (such as PNG or raw binary). The ImageIOBase encapsulates both the reading and writing of data. The ImageIOBase is used by the ImageFileReader class (to read data) and the ImageFileWriter (to write data) into a single file. The ImageSeriesReader and ImageSeriesWriter classes are used to read and write data (in conjunction with ImageIOBase) when the data is represented by a series of files. Normally the user does not directly manipulate this class other than to instantiate it, set the FileName, and assign it to a ImageFileReader/ImageFileWriter or ImageSeriesReader/ImageSeriesWriter.

A Pluggable factory pattern is used this allows different kinds of readers to be registered (even at run time) without having to modify the code in this class.

See also
ImageFileWriter
ImageFileReader
ImageSeriesWriter
ImageSeriesReader

Definition at line 77 of file itkImageIOBase.h.

+ Inheritance diagram for itk::ImageIOBase:
+ Collaboration diagram for itk::ImageIOBase:

Classes

struct  MapPixelType
 
class  UnknownType
 

Public Types

using ArrayOfExtensionsType = std::vector< std::string >
 
using BufferSizeType = itk::OffsetValueType
 
using ConstPointer = SmartPointer< const Self >
 
using IndexValueType = itk::IndexValueType
 
using IOByteOrderEnum = itk::IOByteOrderEnum
 
using IOComponentEnum = itk::IOComponentEnum
 
using IOFileEnum = itk::IOFileEnum
 
using Pointer = SmartPointer< Self >
 
using Self = ImageIOBase
 
using SizeType = itk::intmax_t
 
using SizeValueType = itk::SizeValueType
 
using Superclass = LightProcessObject
 
- Public Types inherited from itk::LightProcessObject
using ConstPointer = SmartPointer< const Self >
 
using Pointer = SmartPointer< Self >
 
using Self = LightProcessObject
 
using Superclass = Object
 
- Public Types inherited from itk::Object
using ConstPointer = SmartPointer< const Self >
 
using Pointer = SmartPointer< Self >
 
using Self = Object
 
using Superclass = LightObject
 
- Public Types inherited from itk::LightObject
using ConstPointer = SmartPointer< const Self >
 
using Pointer = SmartPointer< Self >
 
using Self = LightObject
 

Public Member Functions

virtual bool CanReadFile (const char *)=0
 
virtual bool CanStreamRead ()
 
virtual bool CanStreamWrite ()
 
virtual bool CanWriteFile (const char *)=0
 
virtual ImageIORegion GenerateStreamableReadRegionFromRequestedRegion (const ImageIORegion &requested) const
 
virtual unsigned int GetActualNumberOfSplitsForWriting (unsigned int numberOfRequestedSplits, const ImageIORegion &pasteRegion, const ImageIORegion &largestPossibleRegion)
 
std::string GetByteOrderAsString (IOByteOrderEnum) const
 
virtual unsigned int GetComponentSize () const
 
virtual IOComponentEnum GetComponentType () const
 
virtual const std::type_info & GetComponentTypeInfo () const
 
virtual int GetCompressionLevel () const
 
virtual const std::string & GetCompressor () const
 
virtual std::vector< double > GetDefaultDirection (unsigned int k) const
 
virtual SizeValueType GetDimensions (unsigned int i) const
 
virtual std::vector< double > GetDirection (unsigned int i) const
 
std::string GetFileTypeAsString (IOFileEnum) const
 
SizeType GetImageSizeInBytes () const
 
SizeType GetImageSizeInComponents () const
 
SizeType GetImageSizeInPixels () const
 
virtual bool GetIsReadAsScalarPlusPalette () const
 
const char * GetNameOfClass () const override
 
virtual unsigned int GetNumberOfDimensions () const
 
virtual double GetOrigin (unsigned int i) const
 
virtual SizeType GetPixelStride () const
 
virtual double GetSpacing (unsigned int i) const
 
virtual ImageIORegion GetSplitRegionForWriting (unsigned int ithPiece, unsigned int numberOfActualSplits, const ImageIORegion &pasteRegion, const ImageIORegion &largestPossibleRegion)
 
const ArrayOfExtensionsTypeGetSupportedReadExtensions () const
 
const ArrayOfExtensionsTypeGetSupportedWriteExtensions () const
 
virtual void Read (void *buffer)=0
 
virtual void ReadImageInformation ()=0
 
void SetByteOrderToLittleEndian ()
 
virtual void SetComponentType (const IOComponentEnum _arg)
 
virtual void SetCompressionLevel (int _arg)
 
virtual void SetCompressor (std::string _c)
 
virtual void SetDirection (unsigned int i, const std::vector< double > &direction)
 
virtual void SetDirection (unsigned int i, const vnl_vector< double > &direction)
 
void SetFileTypeToBinary ()
 
void SetNumberOfDimensions (unsigned int)
 
virtual void SetOrigin (unsigned int i, double origin)
 
virtual void SetSpacing (unsigned int i, double spacing)
 
template<typename TPixel >
void SetTypeInfo (const TPixel *)
 
virtual bool SupportsDimension (unsigned long dim)
 
virtual void Write (const void *buffer)=0
 
virtual void WriteImageInformation ()=0
 
virtual void SetFileName (const char *_arg)
 
virtual const char * GetFileName () const
 
virtual void SetDimensions (unsigned int i, SizeValueType dim)
 
virtual void SetIORegion (ImageIORegion _arg)
 
virtual const ImageIORegionGetIORegion () const
 
virtual void SetPixelType (const itk::CommonEnums::IOPixel _arg)
 
virtual itk::CommonEnums::IOPixel GetPixelType () const
 
virtual void SetNumberOfComponents (unsigned int _arg)
 
virtual const unsigned int & GetNumberOfComponents () const
 
virtual void SetUseCompression (bool _arg)
 
virtual bool GetUseCompression () const
 
virtual void UseCompressionOn ()
 
virtual void SetUseStreamedReading (bool _arg)
 
virtual bool GetUseStreamedReading () const
 
virtual void UseStreamedReadingOn ()
 
virtual void SetUseStreamedWriting (bool _arg)
 
virtual bool GetUseStreamedWriting () const
 
virtual void UseStreamedWritingOn ()
 
virtual void SetExpandRGBPalette (bool _arg)
 
virtual bool GetExpandRGBPalette () const
 
virtual void ExpandRGBPaletteOn ()
 
virtual void SetWritePalette (bool _arg)
 
virtual bool GetWritePalette () const
 
virtual void WritePaletteOn ()
 
virtual void SetFileType (const IOFileEnum _arg)
 
virtual IOFileEnum GetFileType () const
 
void SetFileTypeToASCII ()
 
virtual void SetByteOrder (const IOByteOrderEnum _arg)
 
virtual IOByteOrderEnum GetByteOrder () const
 
void SetByteOrderToBigEndian ()
 
template<typename TPixel >
void SetPixelTypeInfo (const TPixel *)
 
template<typename TPixel >
void SetPixelTypeInfo (const RGBPixel< TPixel > *)
 
template<typename TPixel >
void SetPixelTypeInfo (const RGBAPixel< TPixel > *)
 
template<unsigned int VLength>
void SetPixelTypeInfo (const Offset< VLength > *)
 
template<typename TPixel , unsigned int VLength>
void SetPixelTypeInfo (const Vector< TPixel, VLength > *)
 
template<typename TCoordRep , unsigned int VPointDimension>
void SetPixelTypeInfo (const Point< TCoordRep, VPointDimension > *)
 
template<typename TPixel , unsigned int VLength>
void SetPixelTypeInfo (const CovariantVector< TPixel, VLength > *)
 
template<typename TPixel , unsigned int VLength>
void SetPixelTypeInfo (const SymmetricSecondRankTensor< TPixel, VLength > *)
 
template<typename TPixel >
void SetPixelTypeInfo (const DiffusionTensor3D< TPixel > *)
 
template<typename TPixel >
void SetPixelTypeInfo (const std::complex< TPixel > *)
 
template<typename TPixel , unsigned int VLength>
void SetPixelTypeInfo (const FixedArray< TPixel, VLength > *)
 
template<typename TPixel >
void SetPixelTypeInfo (const VariableLengthVector< TPixel > *)
 
template<typename TValue >
void SetPixelTypeInfo (const Array< TValue > *)
 
template<typename TPixel , unsigned int VLength>
void SetPixelTypeInfo (const Matrix< TPixel, VLength, VLength > *)
 
template<typename TValue >
void SetPixelTypeInfo (const VariableSizeMatrix< TValue > *)
 
- Public Member Functions inherited from itk::LightProcessObject
virtual void AbortGenerateDataOn ()
 
virtual const bool & GetAbortGenerateData () const
 
const char * GetNameOfClass () const override
 
virtual void SetAbortGenerateData (bool _arg)
 
virtual void UpdateOutputData ()
 
void UpdateProgress (float amount)
 
virtual void SetProgress (float _arg)
 
virtual const float & GetProgress () const
 
- Public Member Functions inherited from itk::Object
unsigned long AddObserver (const EventObject &event, Command *cmd) const
 
unsigned long AddObserver (const EventObject &event, std::function< void(const EventObject &)> function) const
 
LightObject::Pointer CreateAnother () const override
 
virtual void DebugOff () const
 
virtual void DebugOn () const
 
CommandGetCommand (unsigned long tag)
 
bool GetDebug () const
 
MetaDataDictionaryGetMetaDataDictionary ()
 
const MetaDataDictionaryGetMetaDataDictionary () const
 
virtual ModifiedTimeType GetMTime () const
 
const char * GetNameOfClass () const override
 
virtual const TimeStampGetTimeStamp () const
 
bool HasObserver (const EventObject &event) const
 
void InvokeEvent (const EventObject &)
 
void InvokeEvent (const EventObject &) const
 
virtual void Modified () const
 
void Register () const override
 
void RemoveAllObservers ()
 
void RemoveObserver (unsigned long tag) const
 
void SetDebug (bool debugFlag) const
 
void SetReferenceCount (int) override
 
void UnRegister () const noexcept override
 
void SetMetaDataDictionary (const MetaDataDictionary &rhs)
 
void SetMetaDataDictionary (MetaDataDictionary &&rrhs)
 
virtual void SetObjectName (std::string _arg)
 
virtual const std::string & GetObjectName () const
 
- Public Member Functions inherited from itk::LightObject
Pointer Clone () const
 
virtual Pointer CreateAnother () const
 
virtual void Delete ()
 
virtual const char * GetNameOfClass () const
 
virtual int GetReferenceCount () const
 
void Print (std::ostream &os, Indent indent=0) const
 
virtual void Register () const
 
virtual void SetReferenceCount (int)
 
virtual void UnRegister () const noexcept
 

Static Public Member Functions

static std::string GetComponentTypeAsString (IOComponentEnum)
 
static IOComponentEnum GetComponentTypeFromString (const std::string &typeString)
 
static std::string GetPixelTypeAsString (IOPixelEnum)
 
static IOPixelEnum GetPixelTypeFromString (const std::string &pixelString)
 
- Static Public Member Functions inherited from itk::LightProcessObject
static Pointer New ()
 
- Static Public Member Functions inherited from itk::Object
static bool GetGlobalWarningDisplay ()
 
static void GlobalWarningDisplayOff ()
 
static void GlobalWarningDisplayOn ()
 
static Pointer New ()
 
static void SetGlobalWarningDisplay (bool val)
 
- Static Public Member Functions inherited from itk::LightObject
static void BreakOnError ()
 
static Pointer New ()
 

Protected Member Functions

void AddSupportedReadExtension (const char *extension)
 
void AddSupportedWriteExtension (const char *extension)
 
void ComputeStrides ()
 
virtual unsigned int GetActualNumberOfSplitsForWritingCanStreamWrite (unsigned int numberOfRequestedSplits, const ImageIORegion &pasteRegion) const
 
SizeType GetComponentStride () const
 
virtual const ImageRegionSplitterBaseGetImageRegionSplitter () const
 
virtual unsigned int GetPixelSize () const
 
SizeType GetRowStride () const
 
SizeType GetSliceStride () const
 
virtual ImageIORegion GetSplitRegionForWritingCanStreamWrite (unsigned int ithPiece, unsigned int numberOfActualSplits, const ImageIORegion &pasteRegion) const
 
 ImageIOBase ()
 
virtual void InternalSetCompressor (const std::string &_compressor)
 
virtual void OpenFileForReading (std::ifstream &inputStream, const std::string &filename, bool ascii=false)
 
virtual void OpenFileForWriting (std::ofstream &outputStream, const std::string &filename, bool truncate=true, bool ascii=false)
 
void PrintSelf (std::ostream &os, Indent indent) const override
 
virtual void ReadBufferAsASCII (std::istream &is, void *buffer, IOComponentEnum ctype, SizeType numComp)
 
bool ReadBufferAsBinary (std::istream &is, void *buffer, SizeType num)
 
virtual void Reset (const bool freeDynamic=true)
 
void Resize (const unsigned int numDimensions, const unsigned int *dimensions)
 
void SetSupportedReadExtensions (const ArrayOfExtensionsType &)
 
void SetSupportedWriteExtensions (const ArrayOfExtensionsType &)
 
virtual void WriteBufferAsASCII (std::ostream &os, const void *buffer, IOComponentEnum ctype, SizeType numComp)
 
 ~ImageIOBase () override
 
virtual bool HasSupportedReadExtension (const char *fileName, bool ignoreCase=true)
 
virtual bool HasSupportedWriteExtension (const char *fileName, bool ignoreCase=true)
 
virtual void SetMaximumCompressionLevel (int)
 
virtual int GetMaximumCompressionLevel () const
 
- Protected Member Functions inherited from itk::LightProcessObject
virtual void GenerateData ()
 
 LightProcessObject ()
 
void PrintSelf (std::ostream &os, Indent indent) const override
 
 ~LightProcessObject () override
 
- Protected Member Functions inherited from itk::Object
 Object ()
 
bool PrintObservers (std::ostream &os, Indent indent) const
 
void PrintSelf (std::ostream &os, Indent indent) const override
 
virtual void SetTimeStamp (const TimeStamp &timeStamp)
 
 ~Object () override
 
- Protected Member Functions inherited from itk::LightObject
virtual LightObject::Pointer InternalClone () const
 
 LightObject ()
 
virtual void PrintHeader (std::ostream &os, Indent indent) const
 
virtual void PrintSelf (std::ostream &os, Indent indent) const
 
virtual void PrintTrailer (std::ostream &os, Indent indent) const
 
virtual ~LightObject ()
 

Protected Attributes

IOByteOrderEnum m_ByteOrder { IOByteOrderEnum::OrderNotApplicable }
 
IOComponentEnum m_ComponentType { IOComponentEnum::UNKNOWNCOMPONENTTYPE }
 
int m_CompressionLevel { 30 }
 
std::string m_Compressor { "uninitialized" }
 
std::vector< SizeValueTypem_Dimensions {}
 
std::vector< std::vector< double > > m_Direction {}
 
bool m_ExpandRGBPalette {}
 
std::string m_FileName {}
 
IOFileEnum m_FileType { IOFileEnum::TypeNotApplicable }
 
bool m_Initialized {}
 
ImageIORegion m_IORegion {}
 
bool m_IsReadAsScalarPlusPalette {}
 
int m_MaximumCompressionLevel { 100 }
 
unsigned int m_NumberOfComponents {}
 
unsigned int m_NumberOfDimensions { 0 }
 
std::vector< double > m_Origin {}
 
IOPixelEnum m_PixelType { IOPixelEnum::SCALAR }
 
std::vector< double > m_Spacing {}
 
std::vector< SizeTypem_Strides {}
 
bool m_UseCompression { false }
 
bool m_UseStreamedReading {}
 
bool m_UseStreamedWriting {}
 
bool m_WritePalette {}
 
- Protected Attributes inherited from itk::LightObject
std::atomic< int > m_ReferenceCount {}
 

Private Member Functions

bool HasSupportedExtension (const char *, const ArrayOfExtensionsType &, bool ignoreCase=true)
 

Private Attributes

ArrayOfExtensionsType m_SupportedReadExtensions {}
 
ArrayOfExtensionsType m_SupportedWriteExtensions {}
 

Member Typedef Documentation

◆ ArrayOfExtensionsType

using itk::ImageIOBase::ArrayOfExtensionsType = std::vector<std::string>

Type for the list of strings to be used for extensions.

Definition at line 545 of file itkImageIOBase.h.

◆ BufferSizeType

Type for representing size of bytes, and or positions along a memory buffer

Definition at line 399 of file itkImageIOBase.h.

◆ ConstPointer

Definition at line 86 of file itkImageIOBase.h.

◆ IndexValueType

Types for managing image size and image index components.

Definition at line 97 of file itkImageIOBase.h.

◆ IOByteOrderEnum

Definition at line 153 of file itkImageIOBase.h.

◆ IOComponentEnum

Definition at line 126 of file itkImageIOBase.h.

◆ IOFileEnum

Definition at line 145 of file itkImageIOBase.h.

◆ Pointer

Definition at line 85 of file itkImageIOBase.h.

◆ Self

Standard class type aliases.

Definition at line 83 of file itkImageIOBase.h.

◆ SizeType

using itk::ImageIOBase::SizeType = itk::intmax_t

Type for representing size of bytes, and or positions along a file

Definition at line 395 of file itkImageIOBase.h.

◆ SizeValueType

Definition at line 98 of file itkImageIOBase.h.

◆ Superclass

Definition at line 84 of file itkImageIOBase.h.

Constructor & Destructor Documentation

◆ ImageIOBase()

itk::ImageIOBase::ImageIOBase ( )
protected

◆ ~ImageIOBase()

itk::ImageIOBase::~ImageIOBase ( )
overrideprotected

Member Function Documentation

◆ AddSupportedReadExtension()

void itk::ImageIOBase::AddSupportedReadExtension ( const char *  extension)
protected

Insert an extension to the list of supported extensions for reading.

◆ AddSupportedWriteExtension()

void itk::ImageIOBase::AddSupportedWriteExtension ( const char *  extension)
protected

Insert an extension to the list of supported extensions for writing.

◆ CanReadFile()

virtual bool itk::ImageIOBase::CanReadFile ( const char *  )
pure virtual

◆ CanStreamRead()

virtual bool itk::ImageIOBase::CanStreamRead ( )
inlinevirtual

Determine if the ImageIO can stream reading from the current settings. Default is false. If this is queried after the header of the file has been read then it will indicate if that file can be streamed

Reimplemented in itk::StreamingImageIOBase, itk::MetaImageIO, and itk::VTKImageIO.

Definition at line 442 of file itkImageIOBase.h.

◆ CanStreamWrite()

virtual bool itk::ImageIOBase::CanStreamWrite ( )
inlinevirtual

Determine if the ImageIO can stream write from the current settings.

There are two types of non exclusive streaming: pasting subregions, and iterative

Reimplemented in itk::StreamingImageIOBase, itk::JPEG2000ImageIO, itk::MetaImageIO, and itk::VTKImageIO.

Definition at line 470 of file itkImageIOBase.h.

◆ CanWriteFile()

virtual bool itk::ImageIOBase::CanWriteFile ( const char *  )
pure virtual

◆ ComputeStrides()

void itk::ImageIOBase::ComputeStrides ( )
protected

Calculates the different strides (distance from one thing to the next). Upon return, strides[0] = bytes to get to the next component of a pixel, strides[1] = bytes to get to the next pixel in x direction, strides[2] = bytes to get to the next row in y direction, strides[3] = bytes to get to the next slice in z direction, etc.

◆ ExpandRGBPaletteOn()

virtual void itk::ImageIOBase::ExpandRGBPaletteOn ( )
virtual

Set/Get a boolean to perform RGB palette expansion. If true, palette image is read as RGB, if false, palette image is read as Scalar+Palette. A RGB image is always read as RGB.

◆ GenerateStreamableReadRegionFromRequestedRegion()

virtual ImageIORegion itk::ImageIOBase::GenerateStreamableReadRegionFromRequestedRegion ( const ImageIORegion requested) const
virtual

Method for supporting streaming. Given a requested region, determine what could be the region that we can read from the file. This is called the streamable region, which will be equal or smaller than the LargestPossibleRegion (unless it was dimensionally clipped) and greater or equal to the RequestedRegion

the resulting IORegion may be a greater dimensions the requested IORegion, if the derived class is unable to read the requested region. For example if the file has a size of [ 10, 10, 10] but the requested region is [10, 10] the return may be 3 dimensions.

Reimplemented in itk::StreamingImageIOBase, itk::JPEG2000ImageIO, itk::MetaImageIO, and itk::NiftiImageIO.

◆ GetActualNumberOfSplitsForWriting()

virtual unsigned int itk::ImageIOBase::GetActualNumberOfSplitsForWriting ( unsigned int  numberOfRequestedSplits,
const ImageIORegion pasteRegion,
const ImageIORegion largestPossibleRegion 
)
virtual

Before this method is called all the configuration will be done, that is Streaming/PasteRegion/Compression/Filename etc If pasting is being used the number of requested splits is for that region not the largest. The derived ImageIO class should verify that the file is capable of being written with this configuration. If pasted is enabled and is not support or does not work with the file, then an exception should be thrown.

The default implementation depends on CanStreamWrite. If false then 1 is returned (unless pasting is indicated), so that the whole file will be updated in one region. If true then its assumed that any arbitrary region can be written to any file. So the users request will be respected. If a derived class has more restrictive conditions then they should be checked

Reimplemented in itk::StreamingImageIOBase, and itk::MetaImageIO.

◆ GetActualNumberOfSplitsForWritingCanStreamWrite()

virtual unsigned int itk::ImageIOBase::GetActualNumberOfSplitsForWritingCanStreamWrite ( unsigned int  numberOfRequestedSplits,
const ImageIORegion pasteRegion 
) const
protectedvirtual

an implementation of ImageRegionSplitter:GetNumberOfSplits

◆ GetByteOrder()

virtual IOByteOrderEnum itk::ImageIOBase::GetByteOrder ( ) const
virtual

These methods indicate the byte ordering of the file you are trying to read in. These methods will then either swap or not swap the bytes depending on the byte ordering of the machine it is being run on. For example, reading in a BigEndian file on a BigEndian machine will result in no swapping. Trying to read the same file on a LittleEndian machine will result in swapping. Note: most UNIX machines are BigEndian while PC's and VAX's are LittleEndian. So if the file you are reading in was generated on a VAX or PC, SetByteOrderToLittleEndian() otherwise SetByteOrderToBigEndian(). Some ImageIOBase subclasses ignore these methods.

◆ GetByteOrderAsString()

std::string itk::ImageIOBase::GetByteOrderAsString ( IOByteOrderEnum  ) const

Convenience method returns the IOByteOrderEnum as a string. This can be used for writing output files.

◆ GetComponentSize()

virtual unsigned int itk::ImageIOBase::GetComponentSize ( ) const
virtual

Compute the size (in bytes) of the components of a pixel. For example, and RGB pixel of unsigned char would have a component size of 1 byte. This method can be invoked only after the component type is set.

Reimplemented in itk::IPLCommonImageIO.

◆ GetComponentStride()

SizeType itk::ImageIOBase::GetComponentStride ( ) const
protected

Convenient method for accessing number of bytes to get to the next pixel component. Returns m_Strides[0].

◆ GetComponentType()

virtual IOComponentEnum itk::ImageIOBase::GetComponentType ( ) const
virtual

◆ GetComponentTypeAsString()

static std::string itk::ImageIOBase::GetComponentTypeAsString ( IOComponentEnum  )
static

Convenience method returns the IOComponentEnum as a string. This can be used for writing output files.

◆ GetComponentTypeFromString()

static IOComponentEnum itk::ImageIOBase::GetComponentTypeFromString ( const std::string &  typeString)
static

Convenience method returns the IOComponentEnum corresponding to a string.

◆ GetComponentTypeInfo()

virtual const std::type_info & itk::ImageIOBase::GetComponentTypeInfo ( ) const
virtual

get the type_info for the current pixel component type. This function is DEPRECATED and only provided for backwards compatibility. There is no use for this method that can't be satisfied by calling GetComponentType.

◆ GetCompressionLevel()

virtual int itk::ImageIOBase::GetCompressionLevel ( ) const
virtual

◆ GetCompressor()

virtual const std::string & itk::ImageIOBase::GetCompressor ( ) const
virtual

◆ GetDefaultDirection()

virtual std::vector< double > itk::ImageIOBase::GetDefaultDirection ( unsigned int  k) const
virtual

Return the directions to be assigned by default to recipient images whose dimension is smaller than the image dimension in file.

◆ GetDimensions()

virtual SizeValueType itk::ImageIOBase::GetDimensions ( unsigned int  i) const
inlinevirtual

Definition at line 178 of file itkImageIOBase.h.

◆ GetDirection()

virtual std::vector< double > itk::ImageIOBase::GetDirection ( unsigned int  i) const
inlinevirtual

Reimplemented in itk::FileListVideoIO.

Definition at line 214 of file itkImageIOBase.h.

◆ GetExpandRGBPalette()

virtual bool itk::ImageIOBase::GetExpandRGBPalette ( ) const
virtual

Set/Get a boolean to perform RGB palette expansion. If true, palette image is read as RGB, if false, palette image is read as Scalar+Palette. A RGB image is always read as RGB.

◆ GetFileName()

virtual const char * itk::ImageIOBase::GetFileName ( ) const
virtual

Set/Get the name of the file to be read.

◆ GetFileType()

virtual IOFileEnum itk::ImageIOBase::GetFileType ( ) const
virtual

These methods control whether the file is written binary or ASCII. Many file formats (i.e., subclasses) ignore this flag.

◆ GetFileTypeAsString()

std::string itk::ImageIOBase::GetFileTypeAsString ( IOFileEnum  ) const

Convenience method returns the IOFileEnum as a string. This can be used for writing output files.

◆ GetImageRegionSplitter()

virtual const ImageRegionSplitterBase * itk::ImageIOBase::GetImageRegionSplitter ( ) const
protectedvirtual

◆ GetImageSizeInBytes()

SizeType itk::ImageIOBase::GetImageSizeInBytes ( ) const

Return the number of bytes in the image.

◆ GetImageSizeInComponents()

SizeType itk::ImageIOBase::GetImageSizeInComponents ( ) const

Return the number of pixels times the number of components in the image.

◆ GetImageSizeInPixels()

SizeType itk::ImageIOBase::GetImageSizeInPixels ( ) const

Return the number of pixels in the image.

◆ GetIORegion()

virtual const ImageIORegion & itk::ImageIOBase::GetIORegion ( ) const
virtual

Specify the region of the image data to either read or write. The IORegion specifies the part of the image to read or write. Regions are defined with an index and a size vector. These vectors define the start (lower-left corner) and length of the region within the image. Make sure that the IORegion lies within the image.

◆ GetIsReadAsScalarPlusPalette()

virtual bool itk::ImageIOBase::GetIsReadAsScalarPlusPalette ( ) const
virtual

Determine whether a palletized image file has been read as a scalar image plus a color palette. ExpandRGBPalette must be set to true, and the file must be a palette image file supported for palette reading.

◆ GetMaximumCompressionLevel()

virtual int itk::ImageIOBase::GetMaximumCompressionLevel ( ) const
protectedvirtual

Set/Get enforced maximum compression level value to limit range

◆ GetNameOfClass()

const char * itk::ImageIOBase::GetNameOfClass ( ) const
overridevirtual

◆ GetNumberOfComponents()

virtual const unsigned int & itk::ImageIOBase::GetNumberOfComponents ( ) const
virtual

Set/Get the number of components per pixel in the image. This may be set by the reading process. For SCALAR pixel types, NumberOfComponents will be 1. For other pixel types, NumberOfComponents will be greater than or equal to one.

◆ GetNumberOfDimensions()

virtual unsigned int itk::ImageIOBase::GetNumberOfDimensions ( ) const
virtual

◆ GetOrigin()

virtual double itk::ImageIOBase::GetOrigin ( unsigned int  i) const
inlinevirtual

Reimplemented in itk::FileListVideoIO.

Definition at line 189 of file itkImageIOBase.h.

◆ GetPixelSize()

virtual unsigned int itk::ImageIOBase::GetPixelSize ( ) const
protectedvirtual

Compute the size (in bytes) of the pixel. For example, and RGB pixel of unsigned char would have size 3 bytes.

◆ GetPixelStride()

virtual SizeType itk::ImageIOBase::GetPixelStride ( ) const
virtual

Convenient method for accessing the number of bytes to get to the next pixel. Returns m_Strides[1];

Please note that this methods depends the private methods ComputeStrides being called, otherwise this is the incorrect value.

◆ GetPixelType()

virtual itk::CommonEnums::IOPixel itk::ImageIOBase::GetPixelType ( ) const
virtual

Set/Get the type of the pixel. The PixelTypes provides context to the IO mechanisms for data conversions. PixelTypes can be SCALAR, RGB, RGBA, VECTOR, COVARIANTVECTOR, POINT, INDEX. If the PIXELTYPE is SCALAR, then the NumberOfComponents should be 1. Any other of PIXELTYPE will have more than one component.

◆ GetPixelTypeAsString()

static std::string itk::ImageIOBase::GetPixelTypeAsString ( IOPixelEnum  )
static

Convenience method returns the IOPixelEnum as a string. This can be used for writing output files.

◆ GetPixelTypeFromString()

static IOPixelEnum itk::ImageIOBase::GetPixelTypeFromString ( const std::string &  pixelString)
static

Convenience method returns the IOPixelEnum corresponding to a string.

◆ GetRowStride()

SizeType itk::ImageIOBase::GetRowStride ( ) const
protected

Convenient method for accessing the number of bytes to get to the next row. Returns m_Strides[2].

◆ GetSliceStride()

SizeType itk::ImageIOBase::GetSliceStride ( ) const
protected

Convenient method for accessing the number of bytes to get to the next slice. Returns m_Strides[3].

◆ GetSpacing()

virtual double itk::ImageIOBase::GetSpacing ( unsigned int  i) const
inlinevirtual

Reimplemented in itk::FileListVideoIO.

Definition at line 200 of file itkImageIOBase.h.

◆ GetSplitRegionForWriting()

virtual ImageIORegion itk::ImageIOBase::GetSplitRegionForWriting ( unsigned int  ithPiece,
unsigned int  numberOfActualSplits,
const ImageIORegion pasteRegion,
const ImageIORegion largestPossibleRegion 
)
virtual

returns the ith IORegion

numberOfActualSplits should be the value returned from GetActualNumberOfSplitsForWriting with the same parameters

Derived classes should overload this method to return a compatible region

Reimplemented in itk::MetaImageIO.

◆ GetSplitRegionForWritingCanStreamWrite()

virtual ImageIORegion itk::ImageIOBase::GetSplitRegionForWritingCanStreamWrite ( unsigned int  ithPiece,
unsigned int  numberOfActualSplits,
const ImageIORegion pasteRegion 
) const
protectedvirtual

an implementation of ImageRegionSplitter:GetSplit

◆ GetSupportedReadExtensions()

const ArrayOfExtensionsType & itk::ImageIOBase::GetSupportedReadExtensions ( ) const

This method returns an array with the list of filename extensions supported for reading by this ImageIO class. This is intended to facilitate GUI and application level integration.

◆ GetSupportedWriteExtensions()

const ArrayOfExtensionsType & itk::ImageIOBase::GetSupportedWriteExtensions ( ) const

This method returns an array with the list of filename extensions supported for writing by this ImageIO class. This is intended to facilitate GUI and application level integration.

◆ GetUseCompression()

virtual bool itk::ImageIOBase::GetUseCompression ( ) const
virtual

Set/Get a boolean to use the compression or not.

◆ GetUseStreamedReading()

virtual bool itk::ImageIOBase::GetUseStreamedReading ( ) const
virtual

Set/Get a boolean to use streaming while reading or not.

◆ GetUseStreamedWriting()

virtual bool itk::ImageIOBase::GetUseStreamedWriting ( ) const
virtual

Set/Get a boolean to use streaming while writing or not.

◆ GetWritePalette()

virtual bool itk::ImageIOBase::GetWritePalette ( ) const
virtual

Set/Get a boolean to include a color palette while writing the image file. Applies only for scalar Pixels

◆ HasSupportedExtension()

bool itk::ImageIOBase::HasSupportedExtension ( const char *  ,
const ArrayOfExtensionsType ,
bool  ignoreCase = true 
)
private

◆ HasSupportedReadExtension()

virtual bool itk::ImageIOBase::HasSupportedReadExtension ( const char *  fileName,
bool  ignoreCase = true 
)
protectedvirtual

Check fileName as an extensions contained in the supported extension list. If ignoreCase is true, the case of the characters is ignored.

◆ HasSupportedWriteExtension()

virtual bool itk::ImageIOBase::HasSupportedWriteExtension ( const char *  fileName,
bool  ignoreCase = true 
)
protectedvirtual

Check fileName as an extensions contained in the supported extension list. If ignoreCase is true, the case of the characters is ignored.

◆ InternalSetCompressor()

virtual void itk::ImageIOBase::InternalSetCompressor ( const std::string &  _compressor)
protectedvirtual

Called when the compressor changes value. The compressor string is converted to uppercase for case insensitive comparisons.

Reimplemented in itk::GDCMImageIO, itk::NrrdImageIO, and itk::TIFFImageIO.

◆ OpenFileForReading()

virtual void itk::ImageIOBase::OpenFileForReading ( std::ifstream &  inputStream,
const std::string &  filename,
bool  ascii = false 
)
protectedvirtual

Opens a file for reading and random access.

Parameters
[out]inputStreamis an istream presumed to be opened for reading
[in]filenameis the name of the file
[in]asciioptional (default is false); if true than the file will be opened in ASCII mode, which generally only applies to Windows

The stream is closed if it's already opened. If an error is encountered than an exception will be thrown.

◆ OpenFileForWriting()

virtual void itk::ImageIOBase::OpenFileForWriting ( std::ofstream &  outputStream,
const std::string &  filename,
bool  truncate = true,
bool  ascii = false 
)
protectedvirtual

Opens a file for writing and random access.

Parameters
[out]outputStreamis an ostream presumed to be opened for writing
[in]filenameis the name of the file
[in]truncateoptional (default is true); if true than the file's existing content is truncated, if false than the file is opened for reading and writing with existing content intact
[in]asciioptional (default is false); if true than the file will be opened in ASCII mode, which generally only applies to Windows

The stream is closed if it's already opened. If an error is encountered than an exception will be thrown.

◆ PrintSelf()

void itk::ImageIOBase::PrintSelf ( std::ostream &  os,
Indent  indent 
) const
overrideprotectedvirtual

◆ Read()

virtual void itk::ImageIOBase::Read ( void *  buffer)
pure virtual

◆ ReadBufferAsASCII()

virtual void itk::ImageIOBase::ReadBufferAsASCII ( std::istream &  is,
void *  buffer,
IOComponentEnum  ctype,
SizeType  numComp 
)
protectedvirtual

Convenient method to read a buffer as ASCII text.

Reimplemented in itk::VTKImageIO.

◆ ReadBufferAsBinary()

bool itk::ImageIOBase::ReadBufferAsBinary ( std::istream &  is,
void *  buffer,
SizeType  num 
)
protected

Convenient method to read a buffer as binary. Return true on success.

◆ ReadImageInformation()

virtual void itk::ImageIOBase::ReadImageInformation ( )
pure virtual

◆ Reset()

virtual void itk::ImageIOBase::Reset ( const bool  freeDynamic = true)
protectedvirtual

Return the object to an initialized state, ready to be used

◆ Resize()

void itk::ImageIOBase::Resize ( const unsigned int  numDimensions,
const unsigned int *  dimensions 
)
protected

Resize the ImageIOBase object to new dimensions.

◆ SetByteOrder()

virtual void itk::ImageIOBase::SetByteOrder ( const IOByteOrderEnum  _arg)
virtual

These methods indicate the byte ordering of the file you are trying to read in. These methods will then either swap or not swap the bytes depending on the byte ordering of the machine it is being run on. For example, reading in a BigEndian file on a BigEndian machine will result in no swapping. Trying to read the same file on a LittleEndian machine will result in swapping. Note: most UNIX machines are BigEndian while PC's and VAX's are LittleEndian. So if the file you are reading in was generated on a VAX or PC, SetByteOrderToLittleEndian() otherwise SetByteOrderToBigEndian(). Some ImageIOBase subclasses ignore these methods.

◆ SetByteOrderToBigEndian()

void itk::ImageIOBase::SetByteOrderToBigEndian ( )
inline

These methods indicate the byte ordering of the file you are trying to read in. These methods will then either swap or not swap the bytes depending on the byte ordering of the machine it is being run on. For example, reading in a BigEndian file on a BigEndian machine will result in no swapping. Trying to read the same file on a LittleEndian machine will result in swapping. Note: most UNIX machines are BigEndian while PC's and VAX's are LittleEndian. So if the file you are reading in was generated on a VAX or PC, SetByteOrderToLittleEndian() otherwise SetByteOrderToBigEndian(). Some ImageIOBase subclasses ignore these methods.

Definition at line 374 of file itkImageIOBase.h.

References itk::CommonEnums::BigEndian.

◆ SetByteOrderToLittleEndian()

void itk::ImageIOBase::SetByteOrderToLittleEndian ( )
inline

Definition at line 381 of file itkImageIOBase.h.

References itk::CommonEnums::LittleEndian.

◆ SetComponentType()

virtual void itk::ImageIOBase::SetComponentType ( const IOComponentEnum  _arg)
virtual

Set/Get the component type of the image. This is always a native type.

◆ SetCompressionLevel()

virtual void itk::ImageIOBase::SetCompressionLevel ( int  _arg)
virtual

Set/Get a compression level hint.

If compression is enabled by UseCompression, then the value may be used for as the compression level dependent upon the compressor.

◆ SetCompressor()

virtual void itk::ImageIOBase::SetCompressor ( std::string  _c)
virtual

Set/Get the compression algorithm to use.

If compression is enabled by UseCompression, then the value is used to select the compression algorithm. An empty string represent the default compressor. If string identifier is not recognized a warning is produced and the default is used.

Note
These compression hints may be ignored if the ImageIO does not support compression or the compression is not enabled.

◆ SetDimensions()

virtual void itk::ImageIOBase::SetDimensions ( unsigned int  i,
SizeValueType  dim 
)
virtual

Set/Get the image dimensions in the x, y, z, etc. directions. GetDimensions() is typically used after reading the data; the SetDimensions() is used prior to writing the data.

◆ SetDirection() [1/2]

virtual void itk::ImageIOBase::SetDirection ( unsigned int  i,
const std::vector< double > &  direction 
)
virtual

Set/Get the image direction on an axis-by-axis basis. The SetDirection() method is required when writing the image.

◆ SetDirection() [2/2]

virtual void itk::ImageIOBase::SetDirection ( unsigned int  i,
const vnl_vector< double > &  direction 
)
virtual

◆ SetExpandRGBPalette()

virtual void itk::ImageIOBase::SetExpandRGBPalette ( bool  _arg)
virtual

Set/Get a boolean to perform RGB palette expansion. If true, palette image is read as RGB, if false, palette image is read as Scalar+Palette. A RGB image is always read as RGB.

◆ SetFileName()

virtual void itk::ImageIOBase::SetFileName ( const char *  _arg)
virtual

Set/Get the name of the file to be read.

Reimplemented in itk::FileListVideoIO.

◆ SetFileType()

virtual void itk::ImageIOBase::SetFileType ( const IOFileEnum  _arg)
virtual

These methods control whether the file is written binary or ASCII. Many file formats (i.e., subclasses) ignore this flag.

◆ SetFileTypeToASCII()

void itk::ImageIOBase::SetFileTypeToASCII ( )
inline

These methods control whether the file is written binary or ASCII. Many file formats (i.e., subclasses) ignore this flag.

Definition at line 348 of file itkImageIOBase.h.

References itk::CommonEnums::ASCII.

◆ SetFileTypeToBinary()

void itk::ImageIOBase::SetFileTypeToBinary ( )
inline

Definition at line 355 of file itkImageIOBase.h.

References itk::CommonEnums::Binary.

◆ SetIORegion()

virtual void itk::ImageIOBase::SetIORegion ( ImageIORegion  _arg)
virtual

Specify the region of the image data to either read or write. The IORegion specifies the part of the image to read or write. Regions are defined with an index and a size vector. These vectors define the start (lower-left corner) and length of the region within the image. Make sure that the IORegion lies within the image.

◆ SetMaximumCompressionLevel()

virtual void itk::ImageIOBase::SetMaximumCompressionLevel ( int  )
protectedvirtual

Set/Get enforced maximum compression level value to limit range

◆ SetNumberOfComponents()

virtual void itk::ImageIOBase::SetNumberOfComponents ( unsigned int  _arg)
virtual

Set/Get the number of components per pixel in the image. This may be set by the reading process. For SCALAR pixel types, NumberOfComponents will be 1. For other pixel types, NumberOfComponents will be greater than or equal to one.

◆ SetNumberOfDimensions()

void itk::ImageIOBase::SetNumberOfDimensions ( unsigned int  )

Set/Get the number of independent variables (dimensions) in the image being read or written. Note this is not necessarily what is written, rather the IORegion controls that.

◆ SetOrigin()

virtual void itk::ImageIOBase::SetOrigin ( unsigned int  i,
double  origin 
)
virtual

Set/Get the image origin on a axis-by-axis basis. The SetOrigin() method is required when writing the image.

◆ SetPixelType()

virtual void itk::ImageIOBase::SetPixelType ( const itk::CommonEnums::IOPixel  _arg)
virtual

Set/Get the type of the pixel. The PixelTypes provides context to the IO mechanisms for data conversions. PixelTypes can be SCALAR, RGB, RGBA, VECTOR, COVARIANTVECTOR, POINT, INDEX. If the PIXELTYPE is SCALAR, then the NumberOfComponents should be 1. Any other of PIXELTYPE will have more than one component.

◆ SetPixelTypeInfo() [1/15]

template<typename TValue >
void itk::ImageIOBase::SetPixelTypeInfo ( const Array< TValue > *  )
inline

Definition at line 669 of file itkImageIOBase.h.

References itk::CommonEnums::ARRAY.

◆ SetPixelTypeInfo() [2/15]

template<typename TPixel , unsigned int VLength>
void itk::ImageIOBase::SetPixelTypeInfo ( const CovariantVector< TPixel, VLength > *  )
inline

Definition at line 621 of file itkImageIOBase.h.

References itk::CommonEnums::COVARIANTVECTOR.

◆ SetPixelTypeInfo() [3/15]

template<typename TPixel >
void itk::ImageIOBase::SetPixelTypeInfo ( const DiffusionTensor3D< TPixel > *  )
inline

Definition at line 637 of file itkImageIOBase.h.

References itk::CommonEnums::DIFFUSIONTENSOR3D.

◆ SetPixelTypeInfo() [4/15]

template<typename TPixel , unsigned int VLength>
void itk::ImageIOBase::SetPixelTypeInfo ( const FixedArray< TPixel, VLength > *  )
inline

Definition at line 653 of file itkImageIOBase.h.

References itk::CommonEnums::FIXEDARRAY.

◆ SetPixelTypeInfo() [5/15]

template<typename TPixel , unsigned int VLength>
void itk::ImageIOBase::SetPixelTypeInfo ( const Matrix< TPixel, VLength, VLength > *  )
inline

Definition at line 677 of file itkImageIOBase.h.

References itk::CommonEnums::MATRIX.

◆ SetPixelTypeInfo() [6/15]

template<unsigned int VLength>
void itk::ImageIOBase::SetPixelTypeInfo ( const Offset< VLength > *  )
inline

Definition at line 597 of file itkImageIOBase.h.

References itk::CommonEnums::LONG, and itk::CommonEnums::OFFSET.

◆ SetPixelTypeInfo() [7/15]

template<typename TCoordRep , unsigned int VPointDimension>
void itk::ImageIOBase::SetPixelTypeInfo ( const Point< TCoordRep, VPointDimension > *  )
inline

Definition at line 613 of file itkImageIOBase.h.

References itk::CommonEnums::POINT.

◆ SetPixelTypeInfo() [8/15]

template<typename TPixel >
void itk::ImageIOBase::SetPixelTypeInfo ( const RGBAPixel< TPixel > *  )
inline

Definition at line 589 of file itkImageIOBase.h.

References itk::CommonEnums::RGBA.

◆ SetPixelTypeInfo() [9/15]

template<typename TPixel >
void itk::ImageIOBase::SetPixelTypeInfo ( const RGBPixel< TPixel > *  )
inline

Definition at line 581 of file itkImageIOBase.h.

References itk::CommonEnums::RGB.

◆ SetPixelTypeInfo() [10/15]

template<typename TPixel >
void itk::ImageIOBase::SetPixelTypeInfo ( const std::complex< TPixel > *  )
inline

Definition at line 645 of file itkImageIOBase.h.

References itk::CommonEnums::COMPLEX.

◆ SetPixelTypeInfo() [11/15]

template<typename TPixel , unsigned int VLength>
void itk::ImageIOBase::SetPixelTypeInfo ( const SymmetricSecondRankTensor< TPixel, VLength > *  )
inline

Definition at line 629 of file itkImageIOBase.h.

References itk::CommonEnums::SYMMETRICSECONDRANKTENSOR.

◆ SetPixelTypeInfo() [12/15]

template<typename TPixel >
void itk::ImageIOBase::SetPixelTypeInfo ( const TPixel *  )
inline

Definition at line 573 of file itkImageIOBase.h.

References itk::CommonEnums::SCALAR.

◆ SetPixelTypeInfo() [13/15]

template<typename TPixel >
void itk::ImageIOBase::SetPixelTypeInfo ( const VariableLengthVector< TPixel > *  )
inline

Definition at line 661 of file itkImageIOBase.h.

References itk::CommonEnums::VARIABLELENGTHVECTOR.

◆ SetPixelTypeInfo() [14/15]

template<typename TValue >
void itk::ImageIOBase::SetPixelTypeInfo ( const VariableSizeMatrix< TValue > *  )
inline

Definition at line 685 of file itkImageIOBase.h.

References itk::CommonEnums::VARIABLESIZEMATRIX.

◆ SetPixelTypeInfo() [15/15]

template<typename TPixel , unsigned int VLength>
void itk::ImageIOBase::SetPixelTypeInfo ( const Vector< TPixel, VLength > *  )
inline

Definition at line 605 of file itkImageIOBase.h.

References itk::CommonEnums::VECTOR.

◆ SetSpacing()

virtual void itk::ImageIOBase::SetSpacing ( unsigned int  i,
double  spacing 
)
virtual

Set/Get the image spacing on an axis-by-axis basis. The SetSpacing() method is required when writing the image.

◆ SetSupportedReadExtensions()

void itk::ImageIOBase::SetSupportedReadExtensions ( const ArrayOfExtensionsType )
protected

◆ SetSupportedWriteExtensions()

void itk::ImageIOBase::SetSupportedWriteExtensions ( const ArrayOfExtensionsType )
protected

◆ SetTypeInfo()

template<typename TPixel >
void itk::ImageIOBase::SetTypeInfo ( const TPixel *  )

◆ SetUseCompression()

virtual void itk::ImageIOBase::SetUseCompression ( bool  _arg)
virtual

Set/Get a boolean to use the compression or not.

◆ SetUseStreamedReading()

virtual void itk::ImageIOBase::SetUseStreamedReading ( bool  _arg)
virtual

Set/Get a boolean to use streaming while reading or not.

◆ SetUseStreamedWriting()

virtual void itk::ImageIOBase::SetUseStreamedWriting ( bool  _arg)
virtual

Set/Get a boolean to use streaming while writing or not.

◆ SetWritePalette()

virtual void itk::ImageIOBase::SetWritePalette ( bool  _arg)
virtual

Set/Get a boolean to include a color palette while writing the image file. Applies only for scalar Pixels

◆ SupportsDimension()

virtual bool itk::ImageIOBase::SupportsDimension ( unsigned long  dim)
inlinevirtual

The different types of ImageIO's can support data of varying dimensionality. For example, some file formats are strictly 2D while others can support 2D, 3D, or even n-D. This method returns true/false as to whether the ImageIO can support the dimension indicated.

Reimplemented in itk::MINCImageIO, itk::RawImageIO< TPixel, VImageDimension >, itk::MetaImageIO, and itk::NrrdImageIO.

Definition at line 494 of file itkImageIOBase.h.

◆ UseCompressionOn()

virtual void itk::ImageIOBase::UseCompressionOn ( )
virtual

Set/Get a boolean to use the compression or not.

◆ UseStreamedReadingOn()

virtual void itk::ImageIOBase::UseStreamedReadingOn ( )
virtual

Set/Get a boolean to use streaming while reading or not.

◆ UseStreamedWritingOn()

virtual void itk::ImageIOBase::UseStreamedWritingOn ( )
virtual

Set/Get a boolean to use streaming while writing or not.

◆ Write()

virtual void itk::ImageIOBase::Write ( const void *  buffer)
pure virtual

◆ WriteBufferAsASCII()

virtual void itk::ImageIOBase::WriteBufferAsASCII ( std::ostream &  os,
const void *  buffer,
IOComponentEnum  ctype,
SizeType  numComp 
)
protectedvirtual

Convenient method to write a buffer as ASCII text.

Reimplemented in itk::VTKImageIO.

◆ WriteImageInformation()

virtual void itk::ImageIOBase::WriteImageInformation ( )
pure virtual

◆ WritePaletteOn()

virtual void itk::ImageIOBase::WritePaletteOn ( )
virtual

Set/Get a boolean to include a color palette while writing the image file. Applies only for scalar Pixels

Member Data Documentation

◆ m_ByteOrder

IOByteOrderEnum itk::ImageIOBase::m_ByteOrder { IOByteOrderEnum::OrderNotApplicable }
protected

Big or Little Endian, and the type of the file. (May be ignored.)

Definition at line 721 of file itkImageIOBase.h.

◆ m_ComponentType

IOComponentEnum itk::ImageIOBase::m_ComponentType { IOComponentEnum::UNKNOWNCOMPONENTTYPE }
protected

Used internally to keep track of the type of the component. It is set when ComputeStrides() is invoked.

Definition at line 718 of file itkImageIOBase.h.

◆ m_CompressionLevel

int itk::ImageIOBase::m_CompressionLevel { 30 }
protected

Definition at line 742 of file itkImageIOBase.h.

◆ m_Compressor

std::string itk::ImageIOBase::m_Compressor { "uninitialized" }
protected

Definition at line 744 of file itkImageIOBase.h.

◆ m_Dimensions

std::vector<SizeValueType> itk::ImageIOBase::m_Dimensions {}
protected

The array which stores the number of pixels in the x, y, z directions.

Definition at line 779 of file itkImageIOBase.h.

◆ m_Direction

std::vector<std::vector<double> > itk::ImageIOBase::m_Direction {}
protected

The arrays which store the direction cosines of the image.

Definition at line 789 of file itkImageIOBase.h.

◆ m_ExpandRGBPalette

bool itk::ImageIOBase::m_ExpandRGBPalette {}
protected

Should we expand RGB palette or stay scalar

Definition at line 765 of file itkImageIOBase.h.

◆ m_FileName

std::string itk::ImageIOBase::m_FileName {}
protected

Filename to read

Definition at line 729 of file itkImageIOBase.h.

◆ m_FileType

IOFileEnum itk::ImageIOBase::m_FileType { IOFileEnum::TypeNotApplicable }
protected

Definition at line 723 of file itkImageIOBase.h.

◆ m_Initialized

bool itk::ImageIOBase::m_Initialized {}
protected

Does the ImageIOBase object have enough info to be of use?

Definition at line 726 of file itkImageIOBase.h.

◆ m_IORegion

ImageIORegion itk::ImageIOBase::m_IORegion {}
protected

The region to read or write. The region contains information about the data within the region to read or write.

Definition at line 776 of file itkImageIOBase.h.

◆ m_IsReadAsScalarPlusPalette

bool itk::ImageIOBase::m_IsReadAsScalarPlusPalette {}
protected

true if a RGB palette has been read and the image kept scalar

Definition at line 769 of file itkImageIOBase.h.

◆ m_MaximumCompressionLevel

int itk::ImageIOBase::m_MaximumCompressionLevel { 100 }
protected

Definition at line 743 of file itkImageIOBase.h.

◆ m_NumberOfComponents

unsigned int itk::ImageIOBase::m_NumberOfComponents {}
protected

Stores the number of components per pixel. This will be 1 for grayscale images, 3 for RGBPixel images, and 4 for RGBPixelA images.

Definition at line 733 of file itkImageIOBase.h.

◆ m_NumberOfDimensions

unsigned int itk::ImageIOBase::m_NumberOfDimensions { 0 }
protected

The number of independent dimensions in the image.

Definition at line 736 of file itkImageIOBase.h.

◆ m_Origin

std::vector<double> itk::ImageIOBase::m_Origin {}
protected

The array which stores the origin of the image.

Definition at line 786 of file itkImageIOBase.h.

◆ m_PixelType

IOPixelEnum itk::ImageIOBase::m_PixelType { IOPixelEnum::SCALAR }
protected

Used internally to keep track of the type of the pixel.

Definition at line 714 of file itkImageIOBase.h.

◆ m_Spacing

std::vector<double> itk::ImageIOBase::m_Spacing {}
protected

The array which stores the spacing of pixels in the x, y, z directions.

Definition at line 783 of file itkImageIOBase.h.

◆ m_Strides

std::vector<SizeType> itk::ImageIOBase::m_Strides {}
protected

Stores the number of bytes it takes to get to the next 'thing' e.g. component, pixel, row, slice, etc.

Definition at line 793 of file itkImageIOBase.h.

◆ m_SupportedReadExtensions

ArrayOfExtensionsType itk::ImageIOBase::m_SupportedReadExtensions {}
private

Definition at line 910 of file itkImageIOBase.h.

◆ m_SupportedWriteExtensions

ArrayOfExtensionsType itk::ImageIOBase::m_SupportedWriteExtensions {}
private

Definition at line 911 of file itkImageIOBase.h.

◆ m_UseCompression

bool itk::ImageIOBase::m_UseCompression { false }
protected

Should we compress the data?

Definition at line 739 of file itkImageIOBase.h.

◆ m_UseStreamedReading

bool itk::ImageIOBase::m_UseStreamedReading {}
protected

Should we use streaming for reading

Definition at line 759 of file itkImageIOBase.h.

◆ m_UseStreamedWriting

bool itk::ImageIOBase::m_UseStreamedWriting {}
protected

Should we use streaming for writing

Definition at line 762 of file itkImageIOBase.h.

◆ m_WritePalette

bool itk::ImageIOBase::m_WritePalette {}
protected

Should we try to include a RGB palette while writing the image

Definition at line 772 of file itkImageIOBase.h.


The documentation for this class was generated from the following file: