18#ifndef itkTransformIOBase_h
19#define itkTransformIOBase_h
21#include "ITKIOTransformBaseExport.h"
31#ifndef ITKIOTransformBase_TEMPLATE_EXPORT
32# if defined(ITK_TEMPLATE_VISIBILITY_DEFAULT) || defined(__linux__) && defined(ITK_BUILD_SHARED_LIBS)
34# define ITKIOTransformBase_TEMPLATE_EXPORT __attribute__((visibility("default")))
36# define ITKIOTransformBase_TEMPLATE_EXPORT
57template <
typename TParametersValueType>
86 itkSetStringMacro(FileName);
87 itkGetStringMacro(FileName);
119 ConstTransformListType &
131 itkSetMacro(AppendMode,
bool);
132 itkGetConstMacro(AppendMode,
bool);
133 itkBooleanMacro(AppendMode);
137 itkSetMacro(UseCompression,
bool);
138 itkGetConstMacro(UseCompression,
bool);
139 itkBooleanMacro(UseCompression);
152 itkGenericExceptionMacro(
"Unknown ScalarType" <<
typeid(
ScalarType).name());
169 static inline std::string
172 itkGenericExceptionMacro(
"Unknown ScalarType" <<
typeid(
ScalarType).name());
190 if (inputTransformName.find(
"float") == std::string::npos)
192 const std::string::size_type begin = inputTransformName.find(
"double");
193 if (begin == std::string::npos)
195 itkGenericExceptionMacro(
"Transform type name has neither float nor double precision: " << inputTransformName);
197 inputTransformName.replace(begin, 6,
"float");
206 if (inputTransformName.find(
"double") == std::string::npos)
208 const std::string::size_type begin = inputTransformName.find(
"float");
209 if (begin == std::string::npos)
211 itkGenericExceptionMacro(
"Transform type name has neither float nor double precision: " << inputTransformName);
213 inputTransformName.replace(begin, 5,
"double");
239#ifndef ITK_TEMPLATE_EXPLICIT_TransformIOBase
248#if defined(ITKIOTransformBase_EXPORTS)
250# define ITKIOTransformBase_EXPORT_EXPLICIT ITK_FORWARD_EXPORT
253# define ITKIOTransformBase_EXPORT_EXPLICIT ITKIOTransformBase_EXPORT
258ITK_GCC_PRAGMA_DIAG_PUSH()
259ITK_GCC_PRAGMA_DIAG(ignored
"-Wattributes")
264ITK_GCC_PRAGMA_DIAG_POP()
267#undef ITKIOTransformBase_EXPORT_EXPLICIT
Control indentation during Print() invocation.
Implements transparent reference counting.
The "itk" namespace contains all Insight Segmentation and Registration Toolkit (ITK) classes....
TransformIOBaseTemplate< double > TransformIOBase
template class ITKIOTransformBase_EXPORT_EXPLICIT TransformIOBaseTemplate< float >
template class ITKIOTransformBase_EXPORT_EXPLICIT TransformIOBaseTemplate< double >