ITK  5.2.0
Insight Toolkit
Classes | Public Types | Public Member Functions | List of all members

#include <itkMeshIOBase.h>

+ Inheritance diagram for itk::MeshIOBase:
+ Collaboration diagram for itk::MeshIOBase:

Classes

struct  MapComponentType
 
class  UnknownType
 

Public Types

using ArrayOfExtensionsType = std::vector< std::string >
 
using ConstPointer = SmartPointer< const Self >
 
using Pointer = SmartPointer< Self >
 
using Self = MeshIOBase
 
using SizeValueType = IdentifierType
 
using StreamOffsetType = std::streamoff
 
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 const char * GetNameOfClass () const
 
- Public Member Functions inherited from itk::LightProcessObject
virtual void AbortGenerateDataOff ()
 
virtual void AbortGenerateDataOn ()
 
virtual ::itk::LightObject::Pointer CreateAnother () const
 
virtual const bool & GetAbortGenerateData () const
 
virtual void SetAbortGenerateData (bool _arg)
 
virtual void SetProgress (float _arg)
 
virtual const float & GetProgress () const
 
void UpdateProgress (float amount)
 
virtual void UpdateOutputData ()
 
- Public Member Functions inherited from itk::Object
unsigned long AddObserver (const EventObject &event, Command *)
 
unsigned long AddObserver (const EventObject &event, Command *) 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
 
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)
 
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
virtual void Delete ()
 
virtual int GetReferenceCount () const
 
 itkCloneMacro (Self)
 
void Print (std::ostream &os, Indent indent=0) const
 
IOByteOrderEnum m_ByteOrder { IOByteOrderEnum::OrderNotApplicable }
 
IOFileEnum m_FileType { IOFileEnum::ASCII }
 
std::string m_FileName
 
bool m_UseCompression { false }
 
IOComponentEnum m_PointComponentType { IOComponentEnum::UNKNOWNCOMPONENTTYPE }
 
IOComponentEnum m_CellComponentType { IOComponentEnum::UNKNOWNCOMPONENTTYPE }
 
IOComponentEnum m_PointPixelComponentType { IOComponentEnum::UNKNOWNCOMPONENTTYPE }
 
IOComponentEnum m_CellPixelComponentType { IOComponentEnum::UNKNOWNCOMPONENTTYPE }
 
IOPixelEnum m_PointPixelType { IOPixelEnum::SCALAR }
 
IOPixelEnum m_CellPixelType { IOPixelEnum::SCALAR }
 
unsigned int m_NumberOfPointPixelComponents { 0 }
 
unsigned int m_NumberOfCellPixelComponents { 0 }
 
unsigned int m_PointDimension { 3 }
 
SizeValueType m_NumberOfPoints
 
SizeValueType m_NumberOfCells
 
SizeValueType m_NumberOfPointPixels
 
SizeValueType m_NumberOfCellPixels
 
SizeValueType m_CellBufferSize
 
bool m_UpdatePoints { false }
 
bool m_UpdateCells { false }
 
bool m_UpdatePointData { false }
 
bool m_UpdateCellData { false }
 
ArrayOfExtensionsType m_SupportedReadExtensions
 
ArrayOfExtensionsType m_SupportedWriteExtensions
 
virtual void SetFileName (const char *_arg)
 
virtual const char * GetFileName () const
 
virtual void SetPointPixelType (const ::itk::CommonEnums::IOPixel _arg)
 
virtual ::itk::CommonEnums::IOPixel GetPointPixelType () const
 
virtual void SetCellPixelType (const ::itk::CommonEnums::IOPixel _arg)
 
virtual ::itk::CommonEnums::IOPixel GetCellPixelType () const
 
virtual void SetPointComponentType (const ::itk::CommonEnums::IOComponent _arg)
 
virtual ::itk::CommonEnums::IOComponent GetPointComponentType () const
 
virtual void SetCellComponentType (const ::itk::CommonEnums::IOComponent _arg)
 
virtual ::itk::CommonEnums::IOComponent GetCellComponentType () const
 
virtual void SetPointPixelComponentType (const ::itk::CommonEnums::IOComponent _arg)
 
virtual ::itk::CommonEnums::IOComponent GetPointPixelComponentType () const
 
virtual void SetCellPixelComponentType (const ::itk::CommonEnums::IOComponent _arg)
 
virtual ::itk::CommonEnums::IOComponent GetCellPixelComponentType () const
 
template<typename T >
void SetPixelType (const T &, bool UsePointPixel=true)
 
template<typename T >
void SetPixelType (const RGBPixel< T > &, bool UsePointPixel=true)
 
template<typename T >
void SetPixelType (const RGBAPixel< T > &, bool UsePointPixel=true)
 
template<typename T , unsigned int VLength>
void SetPixelType (const Vector< T, VLength > &, bool UsePointPixel=true)
 
template<typename T , unsigned int VLength>
void SetPixelType (const CovariantVector< T, VLength > &, bool UsePointPixel=true)
 
template<typename T , unsigned int VLength>
void SetPixelType (const FixedArray< T, VLength > &, bool UsePointPixel=true)
 
template<typename T , unsigned int VLength>
void SetPixelType (const SymmetricSecondRankTensor< T, VLength >, bool UsePointPixel=true)
 
template<typename T >
void SetPixelType (const DiffusionTensor3D< T > &, bool UsePointPixel=true)
 
template<typename T , unsigned int NR, unsigned int NC>
void SetPixelType (const Matrix< T, NR, NC > &, bool UsePointPixel=true)
 
template<typename T >
void SetPixelType (const std::complex< T > &, bool UsePointPixel=true)
 
template<typename T >
void SetPixelType (const Array< T > &array, bool UsePointPixel=true)
 
template<typename T >
void SetPixelType (const VariableLengthVector< T > &vector, bool UsePointPixel=true)
 
template<typename T >
void SetPixelType (const VariableSizeMatrix< T > &matrix, bool UsePointPixel=true)
 
virtual void SetNumberOfPointPixelComponents (unsigned int _arg)
 
virtual unsigned int GetNumberOfPointPixelComponents () const
 
virtual void SetNumberOfCellPixelComponents (unsigned int _arg)
 
virtual unsigned int GetNumberOfCellPixelComponents () const
 
virtual void SetPointDimension (unsigned int _arg)
 
virtual unsigned int GetPointDimension () const
 
virtual void SetNumberOfPoints (SizeValueType _arg)
 
virtual SizeValueType GetNumberOfPoints () const
 
virtual void SetNumberOfCells (SizeValueType _arg)
 
virtual SizeValueType GetNumberOfCells () const
 
virtual void SetNumberOfPointPixels (SizeValueType _arg)
 
virtual SizeValueType GetNumberOfPointPixels () const
 
virtual void SetNumberOfCellPixels (SizeValueType _arg)
 
virtual SizeValueType GetNumberOfCellPixels () const
 
virtual void SetCellBufferSize (SizeValueType _arg)
 
virtual SizeValueType GetCellBufferSize () const
 
virtual void SetUpdatePoints (bool _arg)
 
virtual bool GetUpdatePoints () const
 
virtual void SetUpdateCells (bool _arg)
 
virtual bool GetUpdateCells () const
 
virtual void SetUpdatePointData (bool _arg)
 
virtual bool GetUpdatePointData () const
 
virtual void SetUpdateCellData (bool _arg)
 
virtual bool GetUpdateCellData () const
 
unsigned int GetComponentSize (IOComponentEnum componentType) const
 
std::string GetComponentTypeAsString (IOComponentEnum) const
 
std::string GetPixelTypeAsString (IOPixelEnum) const
 
virtual void SetFileType (const IOFileEnum _arg)
 
virtual IOFileEnum GetFileType () const
 
void SetFileTypeToASCII ()
 
void SetFileTypeToBinary ()
 
virtual void SetByteOrder (const IOByteOrderEnum _arg)
 
virtual IOByteOrderEnum GetByteOrder () const
 
void SetByteOrderToBigEndian ()
 
void SetByteOrderToLittleEndian ()
 
virtual void SetUseCompression (bool _arg)
 
virtual bool GetUseCompression () const
 
virtual void UseCompressionOn ()
 
virtual void UseCompressionOff ()
 
std::string GetFileTypeAsString (IOFileEnum) const
 
std::string GetByteOrderAsString (IOByteOrderEnum) const
 
virtual bool CanReadFile (const char *)=0
 
virtual void ReadMeshInformation ()=0
 
virtual void ReadPoints (void *buffer)=0
 
virtual void ReadCells (void *buffer)=0
 
virtual void ReadPointData (void *buffer)=0
 
virtual void ReadCellData (void *buffer)=0
 
virtual bool CanWriteFile (const char *)=0
 
virtual void WriteMeshInformation ()=0
 
virtual void WritePoints (void *buffer)=0
 
virtual void WriteCells (void *buffer)=0
 
virtual void WritePointData (void *buffer)=0
 
virtual void WriteCellData (void *buffer)=0
 
virtual void Write ()=0
 
const ArrayOfExtensionsTypeGetSupportedReadExtensions () const
 
const ArrayOfExtensionsTypeGetSupportedWriteExtensions () const
 
 MeshIOBase ()
 
 ~MeshIOBase () override=default
 
void PrintSelf (std::ostream &os, Indent indent) const override
 
void AddSupportedReadExtension (const char *extension)
 
void AddSupportedWriteExtension (const char *extension)
 
template<typename T >
void ReadBufferAsAscii (T *buffer, std::ifstream &inputFile, SizeValueType numberOfComponents)
 
template<typename T >
void ReadBufferAsBinary (T *buffer, std::ifstream &inputFile, SizeValueType numberOfComponents)
 
template<typename T >
void WriteBufferAsAscii (T *buffer, std::ofstream &outputFile, SizeValueType numberOfLines, SizeValueType numberOfComponents)
 
template<typename TOutput , typename TInput >
void WriteBufferAsBinary (TInput *buffer, std::ofstream &outputFile, SizeValueType numberOfComponents)
 
template<typename TInput , typename TOutput >
void ReadCellsBuffer (TInput *input, TOutput *output)
 
template<typename TInput , typename TOutput >
void ReadCellsBuffer (TInput *input, TOutput *output, CellGeometryEnum type)
 
template<typename TInput , typename TOutput >
void WriteCellsBuffer (TInput *input, TOutput *output, CellGeometryEnum cellType, unsigned int numberOfPoints, SizeValueType numberOfCells)
 
template<typename TInput , typename TOutput >
void WriteCellsBuffer (TInput *input, TOutput *output, CellGeometryEnum cellType, SizeValueType numberOfCells)
 

Additional Inherited Members

- 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 flag)
 
- Static Public Member Functions inherited from itk::LightObject
static void BreakOnError ()
 
static Pointer New ()
 
- Protected Member Functions inherited from itk::LightProcessObject
 LightProcessObject ()
 
 ~LightProcessObject () override
 
virtual void GenerateData ()
 
- Protected Member Functions inherited from itk::Object
 Object ()
 
 ~Object () override
 
bool PrintObservers (std::ostream &os, Indent indent) const
 
virtual void SetTimeStamp (const TimeStamp &time)
 
- Protected Member Functions inherited from itk::LightObject
virtual LightObject::Pointer InternalClone () const
 
 LightObject ()
 
virtual void PrintHeader (std::ostream &os, Indent indent) const
 
virtual void PrintTrailer (std::ostream &os, Indent indent) const
 
virtual ~LightObject ()
 
- Protected Attributes inherited from itk::LightObject
std::atomic< int > m_ReferenceCount
 

Detailed Description

Abstract superclass defines mesh IO interface.

MeshIOBase is a class that reads and/or writes Mesh / QuadEdgeMesh data of a particular format (such as PNG or raw binary). The MeshIOBase encapsulates both the reading and writing of data. The MeshIOBase is used by the MeshFileReader class (to read data) and the MeshFileWriter (to write data) into a single file. Normally the user does not directly manipulate this class other than to instantiate it, set the FileName, and assign it to a MeshFileReader or MeshFileWriter.

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.

Author
Wanlin Zhu. Uviversity of New South Wales, Australia.
See also
MeshFileWriter
MeshFileReader

Definition at line 71 of file itkMeshIOBase.h.

Member Typedef Documentation

◆ ArrayOfExtensionsType

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

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

Definition at line 83 of file itkMeshIOBase.h.

◆ ConstPointer

Definition at line 79 of file itkMeshIOBase.h.

◆ Pointer

Definition at line 80 of file itkMeshIOBase.h.

◆ Self

Standard class type aliases.

Definition at line 77 of file itkMeshIOBase.h.

◆ SizeValueType

Definition at line 88 of file itkMeshIOBase.h.

◆ StreamOffsetType

using itk::MeshIOBase::StreamOffsetType = std::streamoff

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

Definition at line 86 of file itkMeshIOBase.h.

◆ Superclass

Definition at line 78 of file itkMeshIOBase.h.

Constructor & Destructor Documentation

◆ MeshIOBase()

itk::MeshIOBase::MeshIOBase ( )
protected

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

◆ ~MeshIOBase()

itk::MeshIOBase::~MeshIOBase ( )
overrideprotecteddefault

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

Member Function Documentation

◆ AddSupportedReadExtension()

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

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

◆ AddSupportedWriteExtension()

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

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

◆ CanReadFile()

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

Determine the file type. Returns true if this MeshIO can read the file specified.

Implemented in itk::GiftiMeshIO, itk::VTKPolyDataMeshIO, itk::BYUMeshIO, itk::FreeSurferBinaryMeshIO, itk::OFFMeshIO, itk::FreeSurferAsciiMeshIO, and itk::OBJMeshIO.

◆ CanWriteFile()

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

Writes the data to disk from the memory buffer provided. Make sure that the IORegions has been set properly.

Implemented in itk::GiftiMeshIO, itk::VTKPolyDataMeshIO, itk::BYUMeshIO, itk::FreeSurferBinaryMeshIO, itk::OFFMeshIO, itk::FreeSurferAsciiMeshIO, and itk::OBJMeshIO.

◆ GetByteOrder()

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

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

◆ GetByteOrderAsString()

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

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

◆ GetCellBufferSize()

virtual SizeValueType itk::MeshIOBase::GetCellBufferSize ( ) const
virtual

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

◆ GetCellComponentType()

virtual ::itk::CommonEnums::IOComponent itk::MeshIOBase::GetCellComponentType ( ) const

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

◆ GetCellPixelComponentType()

virtual ::itk::CommonEnums::IOComponent itk::MeshIOBase::GetCellPixelComponentType ( ) const

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

◆ GetCellPixelType()

virtual ::itk::CommonEnums::IOPixel itk::MeshIOBase::GetCellPixelType ( ) const

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

◆ GetComponentSize()

unsigned int itk::MeshIOBase::GetComponentSize ( IOComponentEnum  componentType) const

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

◆ GetComponentTypeAsString()

std::string itk::MeshIOBase::GetComponentTypeAsString ( IOComponentEnum  ) const

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

◆ GetFileName()

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

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

◆ GetFileType()

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

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

◆ GetFileTypeAsString()

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

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

◆ GetNameOfClass()

virtual const char* itk::MeshIOBase::GetNameOfClass ( ) const
virtual

Run-time type information (and related methods).

Reimplemented from itk::LightProcessObject.

Reimplemented in itk::VTKPolyDataMeshIO, itk::GiftiMeshIO, itk::BYUMeshIO, itk::FreeSurferBinaryMeshIO, itk::OFFMeshIO, itk::FreeSurferAsciiMeshIO, and itk::OBJMeshIO.

◆ GetNumberOfCellPixelComponents()

virtual unsigned int itk::MeshIOBase::GetNumberOfCellPixelComponents ( ) const
virtual

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

◆ GetNumberOfCellPixels()

virtual SizeValueType itk::MeshIOBase::GetNumberOfCellPixels ( ) const
virtual

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

◆ GetNumberOfCells()

virtual SizeValueType itk::MeshIOBase::GetNumberOfCells ( ) const
virtual

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

◆ GetNumberOfPointPixelComponents()

virtual unsigned int itk::MeshIOBase::GetNumberOfPointPixelComponents ( ) const
virtual

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

◆ GetNumberOfPointPixels()

virtual SizeValueType itk::MeshIOBase::GetNumberOfPointPixels ( ) const
virtual

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

◆ GetNumberOfPoints()

virtual SizeValueType itk::MeshIOBase::GetNumberOfPoints ( ) const
virtual

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

◆ GetPixelTypeAsString()

std::string itk::MeshIOBase::GetPixelTypeAsString ( IOPixelEnum  ) const

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

◆ GetPointComponentType()

virtual ::itk::CommonEnums::IOComponent itk::MeshIOBase::GetPointComponentType ( ) const

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

◆ GetPointDimension()

virtual unsigned int itk::MeshIOBase::GetPointDimension ( ) const
virtual

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

◆ GetPointPixelComponentType()

virtual ::itk::CommonEnums::IOComponent itk::MeshIOBase::GetPointPixelComponentType ( ) const

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

◆ GetPointPixelType()

virtual ::itk::CommonEnums::IOPixel itk::MeshIOBase::GetPointPixelType ( ) const

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

◆ GetSupportedReadExtensions()

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

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

◆ GetSupportedWriteExtensions()

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

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

◆ GetUpdateCellData()

virtual bool itk::MeshIOBase::GetUpdateCellData ( ) const
virtual

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

◆ GetUpdateCells()

virtual bool itk::MeshIOBase::GetUpdateCells ( ) const
virtual

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

◆ GetUpdatePointData()

virtual bool itk::MeshIOBase::GetUpdatePointData ( ) const
virtual

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

◆ GetUpdatePoints()

virtual bool itk::MeshIOBase::GetUpdatePoints ( ) const
virtual

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

◆ GetUseCompression()

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

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

◆ PrintSelf()

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

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

Reimplemented from itk::LightProcessObject.

Reimplemented in itk::OFFMeshIO, itk::FreeSurferBinaryMeshIO, itk::OBJMeshIO, itk::FreeSurferAsciiMeshIO, itk::BYUMeshIO, itk::GiftiMeshIO, and itk::VTKPolyDataMeshIO.

◆ ReadBufferAsAscii()

template<typename T >
void itk::MeshIOBase::ReadBufferAsAscii ( T *  buffer,
std::ifstream &  inputFile,
SizeValueType  numberOfComponents 
)
inlineprotected

Read data from input file stream to buffer with ascii style

Definition at line 623 of file itkMeshIOBase.h.

◆ ReadBufferAsBinary()

template<typename T >
void itk::MeshIOBase::ReadBufferAsBinary ( T *  buffer,
std::ifstream &  inputFile,
SizeValueType  numberOfComponents 
)
inlineprotected

◆ ReadCellData()

virtual void itk::MeshIOBase::ReadCellData ( void *  buffer)
pure virtual

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

Implemented in itk::GiftiMeshIO, itk::VTKPolyDataMeshIO, itk::BYUMeshIO, itk::FreeSurferBinaryMeshIO, itk::OFFMeshIO, itk::FreeSurferAsciiMeshIO, and itk::OBJMeshIO.

◆ ReadCells()

virtual void itk::MeshIOBase::ReadCells ( void *  buffer)
pure virtual

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

Implemented in itk::GiftiMeshIO, itk::VTKPolyDataMeshIO, itk::BYUMeshIO, itk::FreeSurferBinaryMeshIO, itk::OFFMeshIO, itk::FreeSurferAsciiMeshIO, and itk::OBJMeshIO.

◆ ReadCellsBuffer() [1/2]

template<typename TInput , typename TOutput >
void itk::MeshIOBase::ReadCellsBuffer ( TInput *  input,
TOutput *  output 
)
inlineprotected

Read cells from a data buffer, used when writting cells. This function write all kind of cells as it is stored in cells container. It is used when cells container have only one kind of cells

Definition at line 721 of file itkMeshIOBase.h.

References itk::NumericTraits< T >::ZeroValue().

◆ ReadCellsBuffer() [2/2]

template<typename TInput , typename TOutput >
void itk::MeshIOBase::ReadCellsBuffer ( TInput *  input,
TOutput *  output,
CellGeometryEnum  type 
)
inlineprotected

Read cells from input buffer, used when Writting cells. This function only write specified type of cells(used when input cells container composes multiple type of cells and only want to write a specified cell type

Definition at line 745 of file itkMeshIOBase.h.

References itk::NumericTraits< T >::ZeroValue().

◆ ReadMeshInformation()

virtual void itk::MeshIOBase::ReadMeshInformation ( )
pure virtual

Determin the required information and whether need to ReadPoints, ReadCells, ReadPointData and ReadCellData

Implemented in itk::GiftiMeshIO, itk::VTKPolyDataMeshIO, itk::BYUMeshIO, itk::FreeSurferBinaryMeshIO, itk::OFFMeshIO, itk::FreeSurferAsciiMeshIO, and itk::OBJMeshIO.

◆ ReadPointData()

virtual void itk::MeshIOBase::ReadPointData ( void *  buffer)
pure virtual

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

Implemented in itk::GiftiMeshIO, itk::VTKPolyDataMeshIO, itk::BYUMeshIO, itk::FreeSurferBinaryMeshIO, itk::OFFMeshIO, itk::FreeSurferAsciiMeshIO, and itk::OBJMeshIO.

◆ ReadPoints()

virtual void itk::MeshIOBase::ReadPoints ( void *  buffer)
pure virtual

Reads the data from disk into the memory buffer provided.

Implemented in itk::GiftiMeshIO, itk::VTKPolyDataMeshIO, itk::BYUMeshIO, itk::FreeSurferBinaryMeshIO, itk::OFFMeshIO, itk::FreeSurferAsciiMeshIO, and itk::OBJMeshIO.

◆ SetByteOrder()

virtual void itk::MeshIOBase::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 MeshIOBase subclasses ignore these methods.

◆ SetByteOrderToBigEndian()

void itk::MeshIOBase::SetByteOrderToBigEndian ( )
inline

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

Definition at line 517 of file itkMeshIOBase.h.

References itk::CommonEnums::BigEndian.

◆ SetByteOrderToLittleEndian()

void itk::MeshIOBase::SetByteOrderToLittleEndian ( )
inline

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

Definition at line 523 of file itkMeshIOBase.h.

References itk::CommonEnums::LittleEndian.

◆ SetCellBufferSize()

virtual void itk::MeshIOBase::SetCellBufferSize ( SizeValueType  _arg)
virtual

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

◆ SetCellComponentType()

virtual void itk::MeshIOBase::SetCellComponentType ( const ::itk::CommonEnums::IOComponent  _arg)
virtual

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

◆ SetCellPixelComponentType()

virtual void itk::MeshIOBase::SetCellPixelComponentType ( const ::itk::CommonEnums::IOComponent  _arg)
virtual

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

◆ SetCellPixelType()

virtual void itk::MeshIOBase::SetCellPixelType ( const ::itk::CommonEnums::IOPixel  _arg)
virtual

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

◆ SetFileName()

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

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

◆ SetFileType()

virtual void itk::MeshIOBase::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::MeshIOBase::SetFileTypeToASCII ( )
inline

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

Definition at line 490 of file itkMeshIOBase.h.

References itk::CommonEnums::ASCII.

◆ SetFileTypeToBinary()

void itk::MeshIOBase::SetFileTypeToBinary ( )
inline

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

Definition at line 496 of file itkMeshIOBase.h.

References itk::CommonEnums::BINARY.

◆ SetNumberOfCellPixelComponents()

virtual void itk::MeshIOBase::SetNumberOfCellPixelComponents ( unsigned int  _arg)
virtual

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

◆ SetNumberOfCellPixels()

virtual void itk::MeshIOBase::SetNumberOfCellPixels ( SizeValueType  _arg)
virtual

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

◆ SetNumberOfCells()

virtual void itk::MeshIOBase::SetNumberOfCells ( SizeValueType  _arg)
virtual

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

◆ SetNumberOfPointPixelComponents()

virtual void itk::MeshIOBase::SetNumberOfPointPixelComponents ( unsigned int  _arg)
virtual

Set/Get the number of components per pixel in the mesh. 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.

◆ SetNumberOfPointPixels()

virtual void itk::MeshIOBase::SetNumberOfPointPixels ( SizeValueType  _arg)
virtual

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

◆ SetNumberOfPoints()

virtual void itk::MeshIOBase::SetNumberOfPoints ( SizeValueType  _arg)
virtual

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

◆ SetPixelType() [1/13]

template<typename T >
void itk::MeshIOBase::SetPixelType ( const Array< T > &  array,
bool  UsePointPixel = true 
)
inline

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

Definition at line 390 of file itkMeshIOBase.h.

References itk::CommonEnums::ARRAY, and itk::Array< TValue >::Size().

◆ SetPixelType() [2/13]

template<typename T , unsigned int VLength>
void itk::MeshIOBase::SetPixelType ( const CovariantVector< T, VLength > &  ,
bool  UsePointPixel = true 
)
inline

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

Definition at line 282 of file itkMeshIOBase.h.

References itk::CommonEnums::COVARIANTVECTOR.

◆ SetPixelType() [3/13]

template<typename T >
void itk::MeshIOBase::SetPixelType ( const DiffusionTensor3D< T > &  ,
bool  UsePointPixel = true 
)
inline

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

Definition at line 336 of file itkMeshIOBase.h.

References itk::CommonEnums::DIFFUSIONTENSOR3D.

◆ SetPixelType() [4/13]

template<typename T , unsigned int VLength>
void itk::MeshIOBase::SetPixelType ( const FixedArray< T, VLength > &  ,
bool  UsePointPixel = true 
)
inline

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

Definition at line 300 of file itkMeshIOBase.h.

References itk::CommonEnums::FIXEDARRAY.

◆ SetPixelType() [5/13]

template<typename T , unsigned int NR, unsigned int NC>
void itk::MeshIOBase::SetPixelType ( const Matrix< T, NR, NC > &  ,
bool  UsePointPixel = true 
)
inline

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

Definition at line 354 of file itkMeshIOBase.h.

References itk::CommonEnums::MATRIX.

◆ SetPixelType() [6/13]

template<typename T >
void itk::MeshIOBase::SetPixelType ( const RGBAPixel< T > &  ,
bool  UsePointPixel = true 
)
inline

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

Definition at line 246 of file itkMeshIOBase.h.

References itk::CommonEnums::RGBA.

◆ SetPixelType() [7/13]

template<typename T >
void itk::MeshIOBase::SetPixelType ( const RGBPixel< T > &  ,
bool  UsePointPixel = true 
)
inline

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

Definition at line 228 of file itkMeshIOBase.h.

References itk::CommonEnums::RGB.

◆ SetPixelType() [8/13]

template<typename T >
void itk::MeshIOBase::SetPixelType ( const std::complex< T > &  ,
bool  UsePointPixel = true 
)
inline

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

Definition at line 372 of file itkMeshIOBase.h.

References itk::CommonEnums::COMPLEX.

◆ SetPixelType() [9/13]

template<typename T , unsigned int VLength>
void itk::MeshIOBase::SetPixelType ( const SymmetricSecondRankTensor< T, VLength >  ,
bool  UsePointPixel = true 
)
inline

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

Definition at line 318 of file itkMeshIOBase.h.

References itk::CommonEnums::SYMMETRICSECONDRANKTENSOR.

◆ SetPixelType() [10/13]

template<typename T >
void itk::MeshIOBase::SetPixelType ( const T &  ,
bool  UsePointPixel = true 
)
inline

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

Definition at line 210 of file itkMeshIOBase.h.

References itk::CommonEnums::SCALAR.

◆ SetPixelType() [11/13]

template<typename T >
void itk::MeshIOBase::SetPixelType ( const VariableLengthVector< T > &  vector,
bool  UsePointPixel = true 
)
inline

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

Definition at line 408 of file itkMeshIOBase.h.

References itk::VariableLengthVector< TValue >::Size(), and itk::CommonEnums::VARIABLELENGTHVECTOR.

◆ SetPixelType() [12/13]

template<typename T >
void itk::MeshIOBase::SetPixelType ( const VariableSizeMatrix< T > &  matrix,
bool  UsePointPixel = true 
)
inline

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

Definition at line 426 of file itkMeshIOBase.h.

References itk::VariableSizeMatrix< T >::Cols(), itk::VariableSizeMatrix< T >::Rows(), and itk::CommonEnums::VARIABLESIZEMATRIX.

◆ SetPixelType() [13/13]

template<typename T , unsigned int VLength>
void itk::MeshIOBase::SetPixelType ( const Vector< T, VLength > &  ,
bool  UsePointPixel = true 
)
inline

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

Definition at line 264 of file itkMeshIOBase.h.

References itk::CommonEnums::VECTOR.

◆ SetPointComponentType()

virtual void itk::MeshIOBase::SetPointComponentType ( const ::itk::CommonEnums::IOComponent  _arg)
virtual

Set/Get the component type of the point, cell, point data and cell data. This is always a native type.

◆ SetPointDimension()

virtual void itk::MeshIOBase::SetPointDimension ( unsigned int  _arg)
virtual

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

◆ SetPointPixelComponentType()

virtual void itk::MeshIOBase::SetPointPixelComponentType ( const ::itk::CommonEnums::IOComponent  _arg)
virtual

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

◆ SetPointPixelType()

virtual void itk::MeshIOBase::SetPointPixelType ( const ::itk::CommonEnums::IOPixel  _arg)
virtual

Set/Get the type of the point/cell 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.

◆ SetUpdateCellData()

virtual void itk::MeshIOBase::SetUpdateCellData ( bool  _arg)
virtual

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

◆ SetUpdateCells()

virtual void itk::MeshIOBase::SetUpdateCells ( bool  _arg)
virtual

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

◆ SetUpdatePointData()

virtual void itk::MeshIOBase::SetUpdatePointData ( bool  _arg)
virtual

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

◆ SetUpdatePoints()

virtual void itk::MeshIOBase::SetUpdatePoints ( bool  _arg)
virtual

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

◆ SetUseCompression()

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

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

◆ UseCompressionOff()

virtual void itk::MeshIOBase::UseCompressionOff ( )
virtual

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

◆ UseCompressionOn()

virtual void itk::MeshIOBase::UseCompressionOn ( )
virtual

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

◆ Write()

virtual void itk::MeshIOBase::Write ( )
pure virtual

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

Implemented in itk::GiftiMeshIO, itk::VTKPolyDataMeshIO, itk::FreeSurferBinaryMeshIO, itk::BYUMeshIO, itk::OFFMeshIO, itk::FreeSurferAsciiMeshIO, and itk::OBJMeshIO.

◆ WriteBufferAsAscii()

template<typename T >
void itk::MeshIOBase::WriteBufferAsAscii ( T *  buffer,
std::ofstream &  outputFile,
SizeValueType  numberOfLines,
SizeValueType  numberOfComponents 
)
inlineprotected

Write buffer to output file stream with ascii style

Definition at line 658 of file itkMeshIOBase.h.

◆ WriteBufferAsBinary()

template<typename TOutput , typename TInput >
void itk::MeshIOBase::WriteBufferAsBinary ( TInput *  buffer,
std::ofstream &  outputFile,
SizeValueType  numberOfComponents 
)
inlineprotected

◆ WriteCellData()

virtual void itk::MeshIOBase::WriteCellData ( void *  buffer)
pure virtual

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

Implemented in itk::GiftiMeshIO, itk::VTKPolyDataMeshIO, itk::FreeSurferBinaryMeshIO, itk::BYUMeshIO, itk::OFFMeshIO, itk::FreeSurferAsciiMeshIO, and itk::OBJMeshIO.

◆ WriteCells()

virtual void itk::MeshIOBase::WriteCells ( void *  buffer)
pure virtual

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

Implemented in itk::GiftiMeshIO, itk::VTKPolyDataMeshIO, itk::FreeSurferBinaryMeshIO, itk::BYUMeshIO, itk::OFFMeshIO, itk::FreeSurferAsciiMeshIO, and itk::OBJMeshIO.

◆ WriteCellsBuffer() [1/2]

template<typename TInput , typename TOutput >
void itk::MeshIOBase::WriteCellsBuffer ( TInput *  input,
TOutput *  output,
CellGeometryEnum  cellType,
SizeValueType  numberOfCells 
)
inlineprotected

Write cells to a data buffer, used when readding mesh, used for cellType with non-constant number of points

Definition at line 804 of file itkMeshIOBase.h.

References itk::NumericTraits< T >::ZeroValue().

◆ WriteCellsBuffer() [2/2]

template<typename TInput , typename TOutput >
void itk::MeshIOBase::WriteCellsBuffer ( TInput *  input,
TOutput *  output,
CellGeometryEnum  cellType,
unsigned int  numberOfPoints,
SizeValueType  numberOfCells 
)
inlineprotected

Write cells to a data buffer, used when readding mesh, used for cellType with constant number of points

Definition at line 777 of file itkMeshIOBase.h.

References itk::NumericTraits< T >::ZeroValue().

◆ WriteMeshInformation()

virtual void itk::MeshIOBase::WriteMeshInformation ( )
pure virtual

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

Implemented in itk::GiftiMeshIO, itk::VTKPolyDataMeshIO, itk::BYUMeshIO, itk::FreeSurferBinaryMeshIO, itk::OFFMeshIO, itk::FreeSurferAsciiMeshIO, and itk::OBJMeshIO.

◆ WritePointData()

virtual void itk::MeshIOBase::WritePointData ( void *  buffer)
pure virtual

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

Implemented in itk::GiftiMeshIO, itk::VTKPolyDataMeshIO, itk::FreeSurferBinaryMeshIO, itk::BYUMeshIO, itk::OFFMeshIO, itk::FreeSurferAsciiMeshIO, and itk::OBJMeshIO.

◆ WritePoints()

virtual void itk::MeshIOBase::WritePoints ( void *  buffer)
pure virtual

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

Implemented in itk::GiftiMeshIO, itk::VTKPolyDataMeshIO, itk::FreeSurferBinaryMeshIO, itk::BYUMeshIO, itk::OFFMeshIO, itk::FreeSurferAsciiMeshIO, and itk::OBJMeshIO.

Member Data Documentation

◆ m_ByteOrder

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

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

Definition at line 826 of file itkMeshIOBase.h.

◆ m_CellBufferSize

SizeValueType itk::MeshIOBase::m_CellBufferSize
protected

The buffer size of cells

Definition at line 860 of file itkMeshIOBase.h.

◆ m_CellComponentType

IOComponentEnum itk::MeshIOBase::m_CellComponentType { IOComponentEnum::UNKNOWNCOMPONENTTYPE }
protected

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

Definition at line 837 of file itkMeshIOBase.h.

◆ m_CellPixelComponentType

IOComponentEnum itk::MeshIOBase::m_CellPixelComponentType { IOComponentEnum::UNKNOWNCOMPONENTTYPE }
protected

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

Definition at line 839 of file itkMeshIOBase.h.

◆ m_CellPixelType

IOPixelEnum itk::MeshIOBase::m_CellPixelType { IOPixelEnum::SCALAR }
protected

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

Definition at line 843 of file itkMeshIOBase.h.

◆ m_FileName

std::string itk::MeshIOBase::m_FileName
protected

Filename to read

Definition at line 830 of file itkMeshIOBase.h.

◆ m_FileType

IOFileEnum itk::MeshIOBase::m_FileType { IOFileEnum::ASCII }
protected

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

Definition at line 827 of file itkMeshIOBase.h.

◆ m_NumberOfCellPixelComponents

unsigned int itk::MeshIOBase::m_NumberOfCellPixelComponents { 0 }
protected

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

Definition at line 848 of file itkMeshIOBase.h.

◆ m_NumberOfCellPixels

SizeValueType itk::MeshIOBase::m_NumberOfCellPixels
protected

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

Definition at line 857 of file itkMeshIOBase.h.

◆ m_NumberOfCells

SizeValueType itk::MeshIOBase::m_NumberOfCells
protected

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

Definition at line 855 of file itkMeshIOBase.h.

◆ m_NumberOfPointPixelComponents

unsigned int itk::MeshIOBase::m_NumberOfPointPixelComponents { 0 }
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 847 of file itkMeshIOBase.h.

◆ m_NumberOfPointPixels

SizeValueType itk::MeshIOBase::m_NumberOfPointPixels
protected

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

Definition at line 856 of file itkMeshIOBase.h.

◆ m_NumberOfPoints

SizeValueType itk::MeshIOBase::m_NumberOfPoints
protected

The number of points and cells

Definition at line 854 of file itkMeshIOBase.h.

◆ m_PointComponentType

IOComponentEnum itk::MeshIOBase::m_PointComponentType { IOComponentEnum::UNKNOWNCOMPONENTTYPE }
protected

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

Definition at line 836 of file itkMeshIOBase.h.

◆ m_PointDimension

unsigned int itk::MeshIOBase::m_PointDimension { 3 }
protected

The number of independent dimensions in the point.

Definition at line 851 of file itkMeshIOBase.h.

◆ m_PointPixelComponentType

IOComponentEnum itk::MeshIOBase::m_PointPixelComponentType { IOComponentEnum::UNKNOWNCOMPONENTTYPE }
protected

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

Definition at line 838 of file itkMeshIOBase.h.

◆ m_PointPixelType

IOPixelEnum itk::MeshIOBase::m_PointPixelType { IOPixelEnum::SCALAR }
protected

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

Definition at line 842 of file itkMeshIOBase.h.

◆ m_SupportedReadExtensions

ArrayOfExtensionsType itk::MeshIOBase::m_SupportedReadExtensions
private

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

Definition at line 870 of file itkMeshIOBase.h.

◆ m_SupportedWriteExtensions

ArrayOfExtensionsType itk::MeshIOBase::m_SupportedWriteExtensions
private

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

Definition at line 871 of file itkMeshIOBase.h.

◆ m_UpdateCellData

bool itk::MeshIOBase::m_UpdateCellData { false }
protected

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

Definition at line 867 of file itkMeshIOBase.h.

◆ m_UpdateCells

bool itk::MeshIOBase::m_UpdateCells { false }
protected

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

Definition at line 865 of file itkMeshIOBase.h.

◆ m_UpdatePointData

bool itk::MeshIOBase::m_UpdatePointData { false }
protected

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

Definition at line 866 of file itkMeshIOBase.h.

◆ m_UpdatePoints

bool itk::MeshIOBase::m_UpdatePoints { false }
protected

Flags indicate whether read or write points, cells, point data and cell data

Definition at line 864 of file itkMeshIOBase.h.

◆ m_UseCompression

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

Should we compress the data?

Definition at line 833 of file itkMeshIOBase.h.


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