Medical Imaging Interaction Toolkit  2026.06.00
Medical Imaging Interaction Toolkit
mitk::BaseDataSerializer Class Reference

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

#include <mitkBaseDataSerializer.h>

Inheritance diagram for mitk::BaseDataSerializer:
Collaboration diagram for mitk::BaseDataSerializer:

Public Member Functions

 mitkClassMacroItkParent (BaseDataSerializer, itk::Object)
 
virtual void SetFilenameHint (const char *_arg)
 Sets a hint for the output filename (without path or extension). More...
 
virtual const char * GetFilenameHint () const
 Returns the current filename hint. More...
 
virtual void SetWorkingDirectory (const char *_arg)
 Sets the working directory where serialized files will be stored. More...
 
virtual const char * GetWorkingDirectory () const
 Returns the current working directory for serialized files. More...
 
virtual void SetData (const BaseData *_arg)
 Sets the BaseData object to be serialized. More...
 
virtual std::string Serialize ()
 Serializes the previously set BaseData object to a file. More...
 

Protected Member Functions

 BaseDataSerializer ()
 
 ~BaseDataSerializer () override
 
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 to files.

Provides the interface for serializing mitk::BaseData-derived objects into files on disk. Sub-classes must implement the actual serialization logic.

The naming convention for sub-classes must follow this pattern:

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

Sub-classes are discovered at runtime through the ITK object factory mechanism. Use the MITK_REGISTER_SERIALIZER macro to register a new serializer.

See also
BasePropertySerializer, PropertyListSerializer, SceneIO, MITK_REGISTER_SERIALIZER

Definition at line 41 of file mitkBaseDataSerializer.h.

Constructor & Destructor Documentation

◆ BaseDataSerializer()

mitk::BaseDataSerializer::BaseDataSerializer ( )
protected

◆ ~BaseDataSerializer()

mitk::BaseDataSerializer::~BaseDataSerializer ( )
overrideprotected

Member Function Documentation

◆ GetFilenameHint()

virtual const char* mitk::BaseDataSerializer::GetFilenameHint ( ) const
virtual

Returns the current filename hint.

◆ GetUniqueFilenameInWorkingDirectory()

std::string mitk::BaseDataSerializer::GetUniqueFilenameInWorkingDirectory ( )
protected

◆ GetWorkingDirectory()

virtual const char* mitk::BaseDataSerializer::GetWorkingDirectory ( ) const
virtual

Returns the current working directory for serialized files.

◆ mitkClassMacroItkParent()

mitk::BaseDataSerializer::mitkClassMacroItkParent ( BaseDataSerializer  ,
itk::Object   
)

◆ Serialize()

virtual std::string mitk::BaseDataSerializer::Serialize ( )
virtual

Serializes the previously set BaseData object to a file.

The base implementation logs the request and returns an empty string. Sub-classes must override this method to perform the actual serialization, writing data to a file in the working directory.

Returns
The filename (without path) of the newly created file, or an empty string if serialization failed or is not implemented.
Precondition
The Data object must be set via SetData().
The WorkingDirectory must be set via SetWorkingDirectory().

Reimplemented in mitk::SegmentationTaskListSerializer, mitk::SurfaceSerializer, mitk::PointSetSerializer, mitk::ImageSerializer, mitk::GeometryDataSerializer, mitk::ROISerializer, mitk::PlanarFigureSerializer, mitk::MultiLabelSegmentationSerializer, mitk::MAPRegistrationWrapperSerializer, mitk::ContourModelSetSerializer, mitk::ContourModelSerializer, and mitk::ExampleDataStructureSerializer.

◆ SetData()

virtual void mitk::BaseDataSerializer::SetData ( const BaseData *  _arg)
virtual

Sets the BaseData object to be serialized.

Parameters
[in]_argPointer to the BaseData object.

◆ SetFilenameHint()

virtual void mitk::BaseDataSerializer::SetFilenameHint ( const char *  _arg)
virtual

Sets a hint for the output filename (without path or extension).

◆ SetWorkingDirectory()

virtual void mitk::BaseDataSerializer::SetWorkingDirectory ( const char *  _arg)
virtual

Sets the working directory where serialized files will be stored.

Member Data Documentation

◆ m_Data

BaseData::ConstPointer mitk::BaseDataSerializer::m_Data
protected

Definition at line 85 of file mitkBaseDataSerializer.h.

◆ m_FilenameHint

std::string mitk::BaseDataSerializer::m_FilenameHint
protected

Definition at line 83 of file mitkBaseDataSerializer.h.

◆ m_WorkingDirectory

std::string mitk::BaseDataSerializer::m_WorkingDirectory
protected

Definition at line 84 of file mitkBaseDataSerializer.h.


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