Public Types | Public Member Functions | Protected Member Functions | Protected Attributes

mitk::BaseDataSerializer Class Reference

Base class for objects that serialize BaseData types. More...

#include <mitkBaseDataSerializer.h>

Inheritance diagram for mitk::BaseDataSerializer:
Inheritance graph
[legend]

List of all members.

Public Types

typedef BaseDataSerializer Self
typedef itk::Object Superclass
typedef itk::SmartPointer< SelfPointer
typedef itk::SmartPointer
< const Self
ConstPointer

Public Member Functions

virtual const char * GetClassName () const
virtual void SetFilenameHint (const char *_arg)
virtual const char * GetFilenameHint () const
virtual void SetWorkingDirectory (const char *_arg)
virtual const char * GetWorkingDirectory () const
virtual void SetData (const BaseData *_arg)
virtual std::string Serialize ()
 Serializes given BaseData object.

Protected Member Functions

 BaseDataSerializer ()
virtual ~BaseDataSerializer ()
std::string GetUniqueFilenameInWorkingDirectory ()

Protected Attributes

std::string m_FilenameHint
std::string m_WorkingDirectory
BaseData::ConstPointer m_Data

Detailed Description

Base class for objects that serialize BaseData types.

The name of sub-classes must be deduced from the class name of the object that should be serialized. The serialization assumes that

  If the class derived from BaseData is called GreenData
  Then the serializer for this class must be called GreenDataSerializer
  

Definition at line 41 of file mitkBaseDataSerializer.h.


Member Typedef Documentation

typedef itk::SmartPointer<const Self> mitk::BaseDataSerializer::ConstPointer

Definition at line 45 of file mitkBaseDataSerializer.h.

typedef itk::SmartPointer<Self> mitk::BaseDataSerializer::Pointer

Definition at line 45 of file mitkBaseDataSerializer.h.

Definition at line 45 of file mitkBaseDataSerializer.h.

Definition at line 45 of file mitkBaseDataSerializer.h.


Constructor & Destructor Documentation

mitk::BaseDataSerializer::BaseDataSerializer (  ) [protected]

Definition at line 22 of file mitkBaseDataSerializer.cpp.

: m_FilenameHint("unnamed")
, m_WorkingDirectory("")
{
}
mitk::BaseDataSerializer::~BaseDataSerializer (  ) [protected, virtual]

Definition at line 28 of file mitkBaseDataSerializer.cpp.

{
}

Member Function Documentation

virtual const char* mitk::BaseDataSerializer::GetClassName (  ) const [virtual]
virtual const char* mitk::BaseDataSerializer::GetFilenameHint (  ) const [virtual]
std::string mitk::BaseDataSerializer::GetUniqueFilenameInWorkingDirectory (  ) [protected]

Definition at line 42 of file mitkBaseDataSerializer.cpp.

{
  // tmpname
  static unsigned long count = 0;
        unsigned long n = count++;
  std::ostringstream name;
  for (int i = 0; i < 6; ++i)
        {
                name << char('a' + (n % 26));
                n /= 26;
        }
  std::string myname;
  myname.append(name.str());
  return myname;
}
virtual const char* mitk::BaseDataSerializer::GetWorkingDirectory (  ) const [virtual]
std::string mitk::BaseDataSerializer::Serialize (  ) [virtual]

Serializes given BaseData object.

Returns:
the filename of the newly created file.

This should be overwritten by specific sub-classes.

Reimplemented in mitk::PlanarFigureSerializer, mitk::ImageSerializer, mitk::PointSetSerializer, and mitk::SurfaceSerializer.

Definition at line 32 of file mitkBaseDataSerializer.cpp.

References MITK_INFO.

{
  MITK_INFO << this->GetNameOfClass() 
           << " is asked to serialize an object " << (const void*) this->m_Data
           << " into a directory " << m_WorkingDirectory
           << " using a filename hint " << m_FilenameHint;

  return "";
}
virtual void mitk::BaseDataSerializer::SetData ( const BaseData _arg ) [virtual]
virtual void mitk::BaseDataSerializer::SetFilenameHint ( const char *  _arg ) [virtual]
virtual void mitk::BaseDataSerializer::SetWorkingDirectory ( const char *  _arg ) [virtual]

Member Data Documentation

Definition at line 72 of file mitkBaseDataSerializer.h.

Definition at line 70 of file mitkBaseDataSerializer.h.

Definition at line 71 of file mitkBaseDataSerializer.h.


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Defines