ITK  4.1.0
Insight Segmentation and Registration Toolkit
Classes | Namespaces | Defines | Functions
itkMetaDataObject.h File Reference

Go to the source code of this file.

Classes

class  itk::MetaDataObject< MetaDataObjectType >
 Allows arbitrary data types to be stored as MetaDataObjectBase types, and to be stored in a MetaDataDictionary. More...

Namespaces

namespace  itk

Defines

#define ITK_IMAGE_TYPE_METADATAPRINT(STORAGE_TYPE)
#define ITK_TEMPLATE_MetaDataObject(_, EXPORT, TypeX, TypeY)
#define NATIVE_TYPE_METADATAPRINT(TYPE_NAME)
#define ITK_OBJECT_TYPE_METADATAPRINT_1COMMA(TYPE_NAME_PART1, TYPE_NAME_PART2)

Functions

template<class T >
void itk::EncapsulateMetaData (MetaDataDictionary &Dictionary, const char *key, const T &invalue)
template<class T >
bool itk::ExposeMetaData (MetaDataDictionary &Dictionary, const std::string key, T &outval)
template<class T >
bool itk::ExposeMetaData (MetaDataDictionary &Dictionary, const char *const key, T &outval)
template<class T >
bool itk::ExposeMetaData (const MetaDataDictionary &Dictionary, const std::string key, T &outval)
template<class T >
bool itk::ExposeMetaData (const MetaDataDictionary &Dictionary, const char *const key, T &outval)
template<class T >
void itk::EncapsulateMetaData (MetaDataDictionary &Dictionary, const std::string &key, const T &invalue)

Define Documentation

#define ITK_IMAGE_TYPE_METADATAPRINT (   STORAGE_TYPE)
Value:
ITK_OBJECT_TYPE_METADATAPRINT_1COMMA(itk::Image< STORAGE_TYPE, 1 >::Pointer) \
  ITK_OBJECT_TYPE_METADATAPRINT_1COMMA(itk::Image< STORAGE_TYPE, 2 >::Pointer) \
  ITK_OBJECT_TYPE_METADATAPRINT_1COMMA(itk::Image< STORAGE_TYPE, 3 >::Pointer) \
  ITK_OBJECT_TYPE_METADATAPRINT_1COMMA(itk::Image< STORAGE_TYPE, 4 >::Pointer) \
  ITK_OBJECT_TYPE_METADATAPRINT_1COMMA(itk::Image< STORAGE_TYPE, 5 >::Pointer) \
  ITK_OBJECT_TYPE_METADATAPRINT_1COMMA(itk::Image< STORAGE_TYPE, 6 >::Pointer) \
  ITK_OBJECT_TYPE_METADATAPRINT_1COMMA(itk::Image< STORAGE_TYPE, 7 >::Pointer) \
  ITK_OBJECT_TYPE_METADATAPRINT_1COMMA(itk::Image< STORAGE_TYPE, 8 >::Pointer) \

An ugly macro to facilitate creating a simple implementation of the MetaDataObject<Type>::Print() function for itk::Image<STORAGE_TYPE,[1-8]>::Pointer

Parameters:
STORAGE_TYPEThe storage type of the image type to print.

Definition at line 306 of file itkMetaDataObject.h.

#define ITK_OBJECT_TYPE_METADATAPRINT_1COMMA (   TYPE_NAME_PART1,
  TYPE_NAME_PART2 
)
Value:
template< >                                                                  \
  void                                                                         \
  itk::MetaDataObject< TYPE_NAME_PART1, TYPE_NAME_PART2 >                      \
  ::Print(std::ostream & os) const                                             \
    {                                                                          \
    this->m_MetaDataObjectValue->Print(os);                                    \
    }                                                                          \
  template< >                                                                  \
  void                                                                         \
  itk::MetaDataObject< const TYPE_NAME_PART1, TYPE_NAME_PART2 >                \
  ::Print(std::ostream & os) const                                             \
    {                                                                          \
    this->m_MetaDataObjectValue->Print(os);                                    \
    }

An ugly macro to facilitate creating a simple implementation of the MetaDataObject< Type >::Print() function for itk::Objects that have 1 comma in their type definition.

Parameters:
TYPE_NAME_PART1
TYPE_NAME_PART2

Definition at line 282 of file itkMetaDataObject.h.

#define ITK_TEMPLATE_MetaDataObject (   _,
  EXPORT,
  TypeX,
  TypeY 
)
Value:
namespace itk                                                  \
  {                                                              \
  _( 1 ( class EXPORT MetaDataObject< ITK_TEMPLATE_1 TypeX > ) ) \
  namespace Templates                                            \
  {                                                              \
  typedef MetaDataObject< ITK_TEMPLATE_1 TypeX >                 \
  MetaDataObject##TypeY;                                       \
  }                                                              \
  }

Definition at line 346 of file itkMetaDataObject.h.

#define NATIVE_TYPE_METADATAPRINT (   TYPE_NAME)
Value:
template< >                                       \
  void                                              \
  itk::MetaDataObject< TYPE_NAME >                  \
  ::Print(std::ostream & os) const                  \
    {                                               \
    os << this->m_MetaDataObjectValue << std::endl; \
    }                                               \
  template< >                                       \
  void                                              \
  itk::MetaDataObject< const TYPE_NAME >            \
  ::Print(std::ostream & os) const                  \
    {                                               \
    os << this->m_MetaDataObjectValue << std::endl; \
    }

An ugly macro to facilitate creating a simple implementation of the MetaDataObject<Type>::Print() function for types that have operator<< defined.

Parameters:
TYPE_NAMEthe native type parameter type

Definition at line 257 of file itkMetaDataObject.h.