ITK  5.4.0
Insight Toolkit
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Static Protected Member Functions | Private Attributes | List of all members
itk::TransformIOBaseTemplate< TParametersValueType > Class Template Referenceabstract

#include <itkTransformIOBase.h>

Detailed Description

template<typename TParametersValueType>
class itk::TransformIOBaseTemplate< TParametersValueType >

Abstract superclass defining the Transform IO interface.

TransformIOBaseTemplate is a pure virtual base class for derived classes that read/write transform data considering the type of input transform. First, TransformIOBase is derived from this class for legacy read/write transform. This class also is used by the TransformFileReader and TransformFileWriter classes. End users don't directly manipulate classes derived from TransformIOBaseTemplate; the TransformIOFactory is used by the Reader/Writer to pick a concrete derived class to do the actual reading/writing of transforms.

Definition at line 58 of file itkTransformIOBase.h.

+ Inheritance diagram for itk::TransformIOBaseTemplate< TParametersValueType >:
+ Collaboration diagram for itk::TransformIOBaseTemplate< TParametersValueType >:

Public Types

using ConstTransformListType = std::list< ConstTransformPointer >
 
using ConstTransformPointer = typename TransformType::ConstPointer
 
using FixedParametersValueType = double
 
using ParametersValueType = TParametersValueType
 
using Pointer = SmartPointer< Self >
 
using ScalarType = TParametersValueType
 
using Self = TransformIOBaseTemplate
 
using Superclass = LightProcessObject
 
using TransformListType = std::list< TransformPointer >
 
using TransformPointer = typename TransformType::Pointer
 
using TransformType = TransformBaseTemplate< ParametersValueType >
 
- 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 CanWriteFile (const char *)=0
 
template<>
void CorrectTransformPrecisionType (std::string &inputTransformName)
 
template<>
void CorrectTransformPrecisionType (std::string &inputTransformName)
 
 itkOverrideGetNameOfClassMacro (TransformIOBaseTemplate)
 
virtual void Read ()=0
 
void SetTransformList (ConstTransformListType &transformList)
 
virtual void Write ()=0
 
virtual void SetFileName (const char *_arg)
 
virtual const char * GetFileName () const
 
TransformListTypeGetTransformList ()
 
TransformListTypeGetReadTransformList ()
 
ConstTransformListTypeGetWriteTransformList ()
 
virtual void SetAppendMode (bool _arg)
 
virtual bool GetAppendMode () const
 
virtual void AppendModeOn ()
 
virtual void SetUseCompression (bool _arg)
 
virtual bool GetUseCompression () const
 
virtual void UseCompressionOn ()
 
- Public Member Functions inherited from itk::LightProcessObject
virtual void AbortGenerateDataOn ()
 
virtual const bool & GetAbortGenerateData () const
 
 itkOverrideGetNameOfClassMacro (LightProcessObject)
 
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 *)
 
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
 
 itkOverrideGetNameOfClassMacro (Object)
 
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
Pointer Clone () const
 
virtual void Delete ()
 
virtual int GetReferenceCount () const
 
 itkVirtualGetNameOfClassMacro (LightObject)
 
void Print (std::ostream &os, Indent indent=0) const
 

Static Public Member Functions

static void CorrectTransformPrecisionType (std::string &)
 
- 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 CreateTransform (TransformPointer &ptr, const std::string &ClassName)
 
template<>
const std::string GetTypeNameString ()
 
template<>
const std::string GetTypeNameString ()
 
void OpenStream (std::ofstream &outputStream, bool binary)
 
void PrintSelf (std::ostream &os, Indent indent) const override
 
 TransformIOBaseTemplate ()
 
 ~TransformIOBaseTemplate () override
 
- Protected Member Functions inherited from itk::LightProcessObject
virtual void GenerateData ()
 
 LightProcessObject ()
 
 ~LightProcessObject () override
 
- Protected Member Functions inherited from itk::Object
 Object ()
 
bool PrintObservers (std::ostream &os, Indent indent) const
 
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 PrintTrailer (std::ostream &os, Indent indent) const
 
virtual ~LightObject ()
 

Static Protected Member Functions

static const std::string GetTypeNameString ()
 

Private Attributes

bool m_AppendMode { false }
 
std::string m_FileName {}
 
TransformListType m_ReadTransformList {}
 
bool m_UseCompression { false }
 
ConstTransformListType m_WriteTransformList {}
 

Additional Inherited Members

- Protected Attributes inherited from itk::LightObject
std::atomic< int > m_ReferenceCount {}
 

Member Typedef Documentation

◆ ConstTransformListType

template<typename TParametersValueType>
using itk::TransformIOBaseTemplate< TParametersValueType >::ConstTransformListType = std::list<ConstTransformPointer>

Definition at line 82 of file itkTransformIOBase.h.

◆ ConstTransformPointer

template<typename TParametersValueType>
using itk::TransformIOBaseTemplate< TParametersValueType >::ConstTransformPointer = typename TransformType::ConstPointer

Definition at line 81 of file itkTransformIOBase.h.

◆ FixedParametersValueType

template<typename TParametersValueType>
using itk::TransformIOBaseTemplate< TParametersValueType >::FixedParametersValueType = double

Definition at line 72 of file itkTransformIOBase.h.

◆ ParametersValueType

template<typename TParametersValueType>
using itk::TransformIOBaseTemplate< TParametersValueType >::ParametersValueType = TParametersValueType

Definition at line 71 of file itkTransformIOBase.h.

◆ Pointer

template<typename TParametersValueType>
using itk::TransformIOBaseTemplate< TParametersValueType >::Pointer = SmartPointer<Self>

Definition at line 64 of file itkTransformIOBase.h.

◆ ScalarType

template<typename TParametersValueType>
using itk::TransformIOBaseTemplate< TParametersValueType >::ScalarType = TParametersValueType

Transform types

Definition at line 70 of file itkTransformIOBase.h.

◆ Self

template<typename TParametersValueType>
using itk::TransformIOBaseTemplate< TParametersValueType >::Self = TransformIOBaseTemplate

Standard class type aliases

Definition at line 62 of file itkTransformIOBase.h.

◆ Superclass

template<typename TParametersValueType>
using itk::TransformIOBaseTemplate< TParametersValueType >::Superclass = LightProcessObject

Definition at line 63 of file itkTransformIOBase.h.

◆ TransformListType

template<typename TParametersValueType>
using itk::TransformIOBaseTemplate< TParametersValueType >::TransformListType = std::list<TransformPointer>

Definition at line 80 of file itkTransformIOBase.h.

◆ TransformPointer

template<typename TParametersValueType>
using itk::TransformIOBaseTemplate< TParametersValueType >::TransformPointer = typename TransformType::Pointer

For writing, a const transform list gets passed in, for reading, a non-const transform list is created from the file.

Definition at line 79 of file itkTransformIOBase.h.

◆ TransformType

template<typename TParametersValueType>
using itk::TransformIOBaseTemplate< TParametersValueType >::TransformType = TransformBaseTemplate<ParametersValueType>

Definition at line 74 of file itkTransformIOBase.h.

Constructor & Destructor Documentation

◆ TransformIOBaseTemplate()

template<typename TParametersValueType>
itk::TransformIOBaseTemplate< TParametersValueType >::TransformIOBaseTemplate ( )
protected

◆ ~TransformIOBaseTemplate()

template<typename TParametersValueType>
itk::TransformIOBaseTemplate< TParametersValueType >::~TransformIOBaseTemplate ( )
overrideprotected

Member Function Documentation

◆ AppendModeOn()

template<typename TParametersValueType>
virtual void itk::TransformIOBaseTemplate< TParametersValueType >::AppendModeOn ( )
virtual

Set the writer to append to the specified file

◆ CanReadFile()

template<typename TParametersValueType>
virtual bool itk::TransformIOBaseTemplate< TParametersValueType >::CanReadFile ( const char *  )
pure virtual

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

Implemented in itk::HDF5TransformIOTemplate< TParametersValueType >, itk::TxtTransformIOTemplate< TParametersValueType >, and itk::MatlabTransformIOTemplate< ParametersValueType >.

◆ CanWriteFile()

template<typename TParametersValueType>
virtual bool itk::TransformIOBaseTemplate< TParametersValueType >::CanWriteFile ( const char *  )
pure virtual

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

Implemented in itk::HDF5TransformIOTemplate< TParametersValueType >, itk::TxtTransformIOTemplate< TParametersValueType >, and itk::MatlabTransformIOTemplate< ParametersValueType >.

◆ CorrectTransformPrecisionType() [1/3]

template<typename TParametersValueType>
static void itk::TransformIOBaseTemplate< TParametersValueType >::CorrectTransformPrecisionType ( std::string &  )
inlinestatic

The transform type has a string representation used when reading and writing transform files. In the case where a double-precision transform is to be written as float, or vice versa, the transform type name used to write the file needs to patched in order for the transform I/O hierarchy to work correctly. These template functions will be chosen at compile time within template classes in order to patch up the type name.

Definition at line 150 of file itkTransformIOBase.h.

◆ CorrectTransformPrecisionType() [2/3]

template<>
void itk::TransformIOBaseTemplate< float >::CorrectTransformPrecisionType ( std::string &  inputTransformName)
inline

Definition at line 187 of file itkTransformIOBase.h.

◆ CorrectTransformPrecisionType() [3/3]

template<>
void itk::TransformIOBaseTemplate< double >::CorrectTransformPrecisionType ( std::string &  inputTransformName)
inline

Definition at line 199 of file itkTransformIOBase.h.

◆ CreateTransform()

template<typename TParametersValueType>
void itk::TransformIOBaseTemplate< TParametersValueType >::CreateTransform ( TransformPointer ptr,
const std::string &  ClassName 
)
protected

◆ GetAppendMode()

template<typename TParametersValueType>
virtual bool itk::TransformIOBaseTemplate< TParametersValueType >::GetAppendMode ( ) const
virtual

Set the writer to append to the specified file

◆ GetFileName()

template<typename TParametersValueType>
virtual const char* itk::TransformIOBaseTemplate< TParametersValueType >::GetFileName ( ) const
virtual

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

◆ GetReadTransformList()

template<typename TParametersValueType>
TransformListType& itk::TransformIOBaseTemplate< TParametersValueType >::GetReadTransformList ( )
inline

Get the list of transforms resulting from a file read

Definition at line 114 of file itkTransformIOBase.h.

◆ GetTransformList()

template<typename TParametersValueType>
TransformListType& itk::TransformIOBaseTemplate< TParametersValueType >::GetTransformList ( )
inline

Get the list of transforms resulting from a file read

Definition at line 109 of file itkTransformIOBase.h.

◆ GetTypeNameString() [1/3]

template<typename TParametersValueType>
static const std::string itk::TransformIOBaseTemplate< TParametersValueType >::GetTypeNameString ( )
inlinestaticprotected

Definition at line 170 of file itkTransformIOBase.h.

◆ GetTypeNameString() [2/3]

template<>
const std::string itk::TransformIOBaseTemplate< float >::GetTypeNameString ( )
inlineprotected

Definition at line 211 of file itkTransformIOBase.h.

◆ GetTypeNameString() [3/3]

template<>
const std::string itk::TransformIOBaseTemplate< double >::GetTypeNameString ( )
inlineprotected

Definition at line 218 of file itkTransformIOBase.h.

◆ GetUseCompression()

template<typename TParametersValueType>
virtual bool itk::TransformIOBaseTemplate< TParametersValueType >::GetUseCompression ( ) const
virtual

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

◆ GetWriteTransformList()

template<typename TParametersValueType>
ConstTransformListType& itk::TransformIOBaseTemplate< TParametersValueType >::GetWriteTransformList ( )
inline

Get the list of transforms resulting from a file read

Definition at line 119 of file itkTransformIOBase.h.

◆ itkOverrideGetNameOfClassMacro()

template<typename TParametersValueType>
itk::TransformIOBaseTemplate< TParametersValueType >::itkOverrideGetNameOfClassMacro ( TransformIOBaseTemplate< TParametersValueType >  )

Run-time type information (and related methods).

◆ OpenStream()

template<typename TParametersValueType>
void itk::TransformIOBaseTemplate< TParametersValueType >::OpenStream ( std::ofstream &  outputStream,
bool  binary 
)
protected

◆ PrintSelf()

template<typename TParametersValueType>
void itk::TransformIOBaseTemplate< TParametersValueType >::PrintSelf ( std::ostream &  os,
Indent  indent 
) const
overrideprotectedvirtual

Methods invoked by Print() to print information about the object including superclasses. Typically not called by the user (use Print() instead) but used in the hierarchical print process to combine the output of several classes.

Reimplemented from itk::LightProcessObject.

◆ Read()

template<typename TParametersValueType>
virtual void itk::TransformIOBaseTemplate< TParametersValueType >::Read ( )
pure virtual

◆ SetAppendMode()

template<typename TParametersValueType>
virtual void itk::TransformIOBaseTemplate< TParametersValueType >::SetAppendMode ( bool  _arg)
virtual

Set the writer to append to the specified file

◆ SetFileName()

template<typename TParametersValueType>
virtual void itk::TransformIOBaseTemplate< TParametersValueType >::SetFileName ( const char *  _arg)
virtual

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

◆ SetTransformList()

template<typename TParametersValueType>
void itk::TransformIOBaseTemplate< TParametersValueType >::SetTransformList ( ConstTransformListType transformList)

Set the list of transforms before writing

◆ SetUseCompression()

template<typename TParametersValueType>
virtual void itk::TransformIOBaseTemplate< TParametersValueType >::SetUseCompression ( bool  _arg)
virtual

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

◆ UseCompressionOn()

template<typename TParametersValueType>
virtual void itk::TransformIOBaseTemplate< TParametersValueType >::UseCompressionOn ( )
virtual

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

◆ Write()

template<typename TParametersValueType>
virtual void itk::TransformIOBaseTemplate< TParametersValueType >::Write ( )
pure virtual

Member Data Documentation

◆ m_AppendMode

template<typename TParametersValueType>
bool itk::TransformIOBaseTemplate< TParametersValueType >::m_AppendMode { false }
private

Definition at line 179 of file itkTransformIOBase.h.

◆ m_FileName

template<typename TParametersValueType>
std::string itk::TransformIOBaseTemplate< TParametersValueType >::m_FileName {}
private

Definition at line 176 of file itkTransformIOBase.h.

◆ m_ReadTransformList

template<typename TParametersValueType>
TransformListType itk::TransformIOBaseTemplate< TParametersValueType >::m_ReadTransformList {}
private

Definition at line 177 of file itkTransformIOBase.h.

◆ m_UseCompression

template<typename TParametersValueType>
bool itk::TransformIOBaseTemplate< TParametersValueType >::m_UseCompression { false }
private

Should we compress the data?

Definition at line 181 of file itkTransformIOBase.h.

◆ m_WriteTransformList

template<typename TParametersValueType>
ConstTransformListType itk::TransformIOBaseTemplate< TParametersValueType >::m_WriteTransformList {}
private

Definition at line 178 of file itkTransformIOBase.h.


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