Medical Imaging Interaction Toolkit  2023.12.99-63768887
Medical Imaging Interaction Toolkit
mitk::AbstractFileIO Class Referenceabstract

Abstract class for implementing a reader and writer. More...

#include <mitkAbstractFileIO.h>

Inheritance diagram for mitk::AbstractFileIO:
Collaboration diagram for mitk::AbstractFileIO:

Public Member Functions

Options GetReaderOptions () const
 
us::Any GetReaderOption (const std::string &name) const
 
void SetReaderOptions (const Options &options)
 
void SetReaderOption (const std::string &name, const us::Any &value)
 
Options GetWriterOptions () const
 
us::Any GetWriterOption (const std::string &name) const
 
void SetWriterOptions (const Options &options)
 
void SetWriterOption (const std::string &name, const us::Any &value)
 
ConfidenceLevel GetReaderConfidenceLevel () const override
 
ConfidenceLevel GetWriterConfidenceLevel () const override
 
std::pair< us::ServiceRegistration< IFileReader >, us::ServiceRegistration< IFileWriter > > RegisterService (us::ModuleContext *context=us::GetModuleContext())
 
- Public Member Functions inherited from mitk::AbstractFileIOReader
ConfidenceLevel GetConfidenceLevel () const override
 The confidence level of the reader or writer implementation. More...
 
- Public Member Functions inherited from mitk::AbstractFileReader
void SetInput (const std::string &location) override
 Set the input location. More...
 
void SetInput (const std::string &location, std::istream *is) override
 Set an input stream to read from. More...
 
std::string GetInputLocation () const override
 Get the current input location. More...
 
std::istream * GetInputStream () const override
 Get the input stream. More...
 
MimeType GetRegisteredMimeType () const
 
std::vector< itk::SmartPointer< BaseData > > Read () override
 Reads a path or stream and creates a list of BaseData objects. More...
 
DataStorage::SetOfObjects::Pointer Read (mitk::DataStorage &ds) override
 Reads the specified file or input stream, loading its contents into the provided DataStorage. More...
 
ConfidenceLevel GetConfidenceLevel () const override
 The confidence level of the reader or writer implementation. More...
 
Options GetOptions () const override
 returns a list of the supported options More...
 
us::Any GetOption (const std::string &name) const override
 
void SetOptions (const Options &options) override
 
void SetOption (const std::string &name, const us::Any &value) override
 
void AddProgressCallback (const ProgressCallback &callback) override
 
void RemoveProgressCallback (const ProgressCallback &callback) override
 
us::ServiceRegistration< IFileReaderRegisterService (us::ModuleContext *context=us::GetModuleContext())
 
void UnregisterService ()
 
std::vector< std::string > GetReadFiles () override
 
void SetProperties (const PropertyList *properties) override
 Optionally provide base data properties as a source of meta data. More...
 
- Public Member Functions inherited from mitk::IFileReader
 ~IFileReader () override
 
virtual ~IFileReader ()
 
- Public Member Functions inherited from mitk::IFileIO
virtual ~IFileIO ()
 
- Public Member Functions inherited from mitk::AbstractFileIOWriter
ConfidenceLevel GetConfidenceLevel () const override
 The confidence level of the reader or writer implementation. More...
 
- Public Member Functions inherited from mitk::AbstractFileWriter
void SetInput (const BaseData *data) override
 Set the input data for writing. More...
 
const BaseDataGetInput () const override
 Get the input data set via SetInput(). More...
 
void SetOutputLocation (const std::string &location) override
 Set the output location. More...
 
std::string GetOutputLocation () const override
 Get the current output location. More...
 
void SetOutputStream (const std::string &location, std::ostream *os) override
 Set an output stream for writing. More...
 
std::ostream * GetOutputStream () const override
 Get the output stream. More...
 
void Write () override=0
 Write the base data to the specified location or output stream. More...
 
ConfidenceLevel GetConfidenceLevel () const override
 The confidence level of the reader or writer implementation. More...
 
MimeType GetRegisteredMimeType () const
 
Options GetOptions () const override
 returns a list of the supported options More...
 
us::Any GetOption (const std::string &name) const override
 
void SetOptions (const Options &options) override
 
void SetOption (const std::string &name, const us::Any &value) override
 
void AddProgressCallback (const ProgressCallback &callback) override
 
void RemoveProgressCallback (const ProgressCallback &callback) override
 
us::ServiceRegistration< IFileWriterRegisterService (us::ModuleContext *context=us::GetModuleContext())
 
void UnregisterService ()
 
- Public Member Functions inherited from mitk::IFileWriter
 ~IFileWriter () override
 

Protected Member Functions

 AbstractFileIO (const AbstractFileIO &other)
 
 AbstractFileIO (const std::string &baseDataType)
 
 AbstractFileIO (const std::string &baseDataType, const CustomMimeType &mimeType, const std::string &description)
 
void SetMimeType (const CustomMimeType &mimeType)
 
const CustomMimeTypeGetMimeType () const
 
void SetReaderDescription (const std::string &description)
 
std::string GetReaderDescription () const
 
void SetWriterDescription (const std::string &description)
 
std::string GetWriterDescription () const
 
void SetDefaultReaderOptions (const Options &defaultOptions)
 
Options GetDefaultReaderOptions () const
 
void SetDefaultWriterOptions (const Options &defaultOptions)
 
Options GetDefaultWriterOptions () const
 
void SetReaderRanking (int ranking)
 Set the service ranking for this file reader. More...
 
int GetReaderRanking () const
 
void SetWriterRanking (int ranking)
 
int GetWriterRanking () const
 
- Protected Member Functions inherited from mitk::AbstractFileIOReader
 AbstractFileIOReader ()
 
 AbstractFileIOReader (const CustomMimeType &mimeType, const std::string &description)
 
- Protected Member Functions inherited from mitk::AbstractFileReader
 AbstractFileReader ()
 
 ~AbstractFileReader () override
 
 AbstractFileReader (const AbstractFileReader &other)
 
 AbstractFileReader (const CustomMimeType &mimeType, const std::string &description)
 
virtual std::vector< itk::SmartPointer< BaseData > > DoRead ()=0
 
virtual us::ServiceProperties GetServiceProperties () const
 
virtual us::ServiceRegistration< CustomMimeTypeRegisterMimeType (us::ModuleContext *context)
 
void SetMimeType (const CustomMimeType &mimeType)
 
const CustomMimeTypeGetMimeType () const
 
void SetMimeTypePrefix (const std::string &prefix)
 
std::string GetMimeTypePrefix () const
 
void SetDescription (const std::string &description)
 
std::string GetDescription () const
 
void SetDefaultOptions (const Options &defaultOptions)
 
Options GetDefaultOptions () const
 
void SetRanking (int ranking)
 Set the service ranking for this file reader. More...
 
int GetRanking () const
 
std::string GetLocalFileName () const
 Get a local file name for reading. More...
 
virtual void SetDefaultDataNodeProperties (DataNode *node, const std::string &filePath)
 
const PropertyListGetProperties () const override
 
- Protected Member Functions inherited from mitk::AbstractFileIOWriter
 AbstractFileIOWriter (const std::string &baseDataType)
 
 AbstractFileIOWriter (const std::string &baseDataType, const CustomMimeType &mimeType, const std::string &description)
 
- Protected Member Functions inherited from mitk::AbstractFileWriter
 ~AbstractFileWriter () override
 
 AbstractFileWriter (const AbstractFileWriter &other)
 
 AbstractFileWriter (const std::string &baseDataType)
 
 AbstractFileWriter (const std::string &baseDataType, const CustomMimeType &mimeType, const std::string &description)
 
virtual us::ServiceProperties GetServiceProperties () const
 
virtual us::ServiceRegistration< CustomMimeTypeRegisterMimeType (us::ModuleContext *context)
 
void SetMimeType (const CustomMimeType &mimeType)
 
const CustomMimeTypeGetMimeType () const
 
void SetMimeTypePrefix (const std::string &prefix)
 
std::string GetMimeTypePrefix () const
 
void SetDescription (const std::string &description)
 Sets a human readable description of this writer. More...
 
std::string GetDescription () const
 
void SetDefaultOptions (const Options &defaultOptions)
 
Options GetDefaultOptions () const
 
void SetRanking (int ranking)
 Set the service ranking for this file writer. More...
 
int GetRanking () const
 
void SetBaseDataType (const std::string &baseDataType)
 Sets the name of the mitk::Basedata that this writer is able to handle. More...
 
virtual std::string GetBaseDataType () const
 
void ValidateOutputLocation () const
 

Additional Inherited Members

- Public Types inherited from mitk::IFileIO
enum  ConfidenceLevel { Unsupported, PartiallySupported, Supported }
 A confidence level describing the confidence of the reader or writer in handling the given data. More...
 
typedef std::map< std::string, us::AnyOptions
 Options for reading or writing data. More...
 
typedef mitk::MessageAbstractDelegate1< float > ProgressCallback
 
- Static Public Member Functions inherited from mitk::IFileIO
static std::string PROP_DESCRIPTION ()
 Service property name for a description. More...
 
static std::string PROP_MIMETYPE ()
 Service property name for the mime-type associated with this file writer. More...
 
- Static Public Member Functions inherited from mitk::IFileWriter
static std::string PROP_BASEDATA_TYPE ()
 Service property name for the supported mitk::BaseData sub-class. More...
 
- Protected Attributes inherited from mitk::AbstractFileReader
std::vector< std::string > m_ReadFiles
 

Detailed Description

Abstract class for implementing a reader and writer.

Definition at line 69 of file mitkAbstractFileIO.h.

Constructor & Destructor Documentation

◆ AbstractFileIO() [1/3]

mitk::AbstractFileIO::AbstractFileIO ( const AbstractFileIO other)
protected

◆ AbstractFileIO() [2/3]

mitk::AbstractFileIO::AbstractFileIO ( const std::string &  baseDataType)
protected

◆ AbstractFileIO() [3/3]

mitk::AbstractFileIO::AbstractFileIO ( const std::string &  baseDataType,
const CustomMimeType mimeType,
const std::string &  description 
)
explicitprotected

Associate this reader instance with the given MIME type.

If the given MIME type has nothing but its name set, the according MIME type is looked up in the service registry.

Parameters
baseDataType
mimeTypeThe MIME type this reader can read.
descriptionA human readable description of this reader.
Exceptions
std::invalid_argumentif mimeType is empty.
See also
RegisterService

Member Function Documentation

◆ GetDefaultReaderOptions()

Options mitk::AbstractFileIO::GetDefaultReaderOptions ( ) const
protected

◆ GetDefaultWriterOptions()

Options mitk::AbstractFileIO::GetDefaultWriterOptions ( ) const
protected

◆ GetMimeType()

const CustomMimeType* mitk::AbstractFileIO::GetMimeType ( ) const
protected
Returns
The mime-type this reader can handle.

◆ GetReaderConfidenceLevel()

◆ GetReaderDescription()

std::string mitk::AbstractFileIO::GetReaderDescription ( ) const
protected

◆ GetReaderOption()

us::Any mitk::AbstractFileIO::GetReaderOption ( const std::string &  name) const

◆ GetReaderOptions()

Options mitk::AbstractFileIO::GetReaderOptions ( ) const

◆ GetReaderRanking()

int mitk::AbstractFileIO::GetReaderRanking ( ) const
protected

◆ GetWriterConfidenceLevel()

◆ GetWriterDescription()

std::string mitk::AbstractFileIO::GetWriterDescription ( ) const
protected

◆ GetWriterOption()

us::Any mitk::AbstractFileIO::GetWriterOption ( const std::string &  name) const

◆ GetWriterOptions()

Options mitk::AbstractFileIO::GetWriterOptions ( ) const

◆ GetWriterRanking()

int mitk::AbstractFileIO::GetWriterRanking ( ) const
protected

◆ RegisterService()

std::pair<us::ServiceRegistration<IFileReader>, us::ServiceRegistration<IFileWriter> > mitk::AbstractFileIO::RegisterService ( us::ModuleContext *  context = us::GetModuleContext())

◆ SetDefaultReaderOptions()

void mitk::AbstractFileIO::SetDefaultReaderOptions ( const Options defaultOptions)
protected

◆ SetDefaultWriterOptions()

void mitk::AbstractFileIO::SetDefaultWriterOptions ( const Options defaultOptions)
protected

◆ SetMimeType()

void mitk::AbstractFileIO::SetMimeType ( const CustomMimeType mimeType)
protected

◆ SetReaderDescription()

void mitk::AbstractFileIO::SetReaderDescription ( const std::string &  description)
protected

◆ SetReaderOption()

void mitk::AbstractFileIO::SetReaderOption ( const std::string &  name,
const us::Any value 
)

◆ SetReaderOptions()

void mitk::AbstractFileIO::SetReaderOptions ( const Options options)

◆ SetReaderRanking()

void mitk::AbstractFileIO::SetReaderRanking ( int  ranking)
protected

Set the service ranking for this file reader.

Default is zero and should only be chosen differently for a reason. The ranking is used to determine which reader to use if several equivalent readers have been found. It may be used to replace a default reader from MITK in your own project. E.g. if you want to use your own reader for nrrd files instead of the default, implement it and give it a higher ranking than zero.

◆ SetWriterDescription()

void mitk::AbstractFileIO::SetWriterDescription ( const std::string &  description)
protected

◆ SetWriterOption()

void mitk::AbstractFileIO::SetWriterOption ( const std::string &  name,
const us::Any value 
)

◆ SetWriterOptions()

void mitk::AbstractFileIO::SetWriterOptions ( const Options options)

◆ SetWriterRanking()

void mitk::AbstractFileIO::SetWriterRanking ( int  ranking)
protected

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