MeVisLab Toolbox Reference
ml::XYLibReaderPlugin Class Reference

Representation for the DM file as data structure. More...

#include <mlXYLibReaderPlugin.h>

Inheritance diagram for ml::XYLibReaderPlugin:
ml::FileReaderPluginsBase

Public Member Functions

 XYLibReaderPlugin ()
 Constructor.
 ~XYLibReaderPlugin () override
 Destructor. If still open the the file will also be closed.
bool isSupported (const std::string &fileName) const override
double getPluginPriority () const override
MLErrorCode loadFile (const std::string &fileName) override
size_t getNumberOfImagesInFile () override
const PagedImagegetPagedImageProperties () override
MLErrorCode fillSubImage (SubImage &dstSubImage) override
std::string getTagDump (const size_t maxNumBinaryEntries=8, const size_t maxNumStringEntries=20) override
void close () override
bool supportsFillingInReferenceCoordinates () const override
 Returns true if the loader instance support SubImage filling in reference coordinates, otherwise false.
virtual const XYLibHeadergetHeader () const
 For convenience allow access to _header.
Public Member Functions inherited from ml::FileReaderPluginsBase
 FileReaderPluginsBase ()
 Constructor.
virtual ~FileReaderPluginsBase ()
 Destructor cleaning up allocated structures and closing a possibly open file.
virtual std::string getCodedImageIndexString (unsigned int imgIdx)
virtual unsigned int extractImageIndexValue (const std::string &codedLoaderPluginString)
virtual void setSelectedImageIndex (size_t idx=0)
virtual size_t getSelectedImageIndex () const
 Returns the currently selected image from inside the loaded file.
virtual void setReferenceForFillingInReferenceCoordinates (const PagedImage *refImg=nullptr)
virtual const PagedImagegetReferenceForFillingInReferenceCoordinates () const
 Returns the recently set "enabled" state set with setSubImageFillingInReferenceCoordinates().

Static Public Member Functions

static std::string getStringIdentifier ()
 Returns the string identifier for this plugin.
Static Public Member Functions inherited from ml::FileReaderPluginsBase
static FileReaderPluginsBasecreateLoaderInstance (const std::string &fileName)

Additional Inherited Members

Protected Member Functions inherited from ml::FileReaderPluginsBase
ImageVector _determineWorldDifferenceAsVoxelShift (const PagedImage &destination) const

Detailed Description

Representation for the DM file as data structure.

Definition at line 33 of file mlXYLibReaderPlugin.h.

Constructor & Destructor Documentation

◆ XYLibReaderPlugin()

ml::XYLibReaderPlugin::XYLibReaderPlugin ( )

Constructor.

Referenced by getHeader().

◆ ~XYLibReaderPlugin()

ml::XYLibReaderPlugin::~XYLibReaderPlugin ( )
override

Destructor. If still open the the file will also be closed.

Member Function Documentation

◆ close()

void ml::XYLibReaderPlugin::close ( )
overridevirtual

Closes the file and cleans up data structures. Property requests and fillSubImage calls will not operate successfully any more after this call.

Implements ml::FileReaderPluginsBase.

◆ fillSubImage()

MLErrorCode ml::XYLibReaderPlugin::fillSubImage ( SubImage & dstSubImage)
overridevirtual

Copy overlapping regions in dstSubImage with image data from the loaded file; note that the calculation of the overlapping region depends on whether a PagedImage was set with setReferenceForFillingInReferenceCoordinates or not. Loaders which do not support filling in reference coordinates (which return false on supportsFillingInReferenceCoordinates()) will silently ignore the reference image.

Parameters
dstSubImageThe subimage to be filled with data from the loaded file where the image regions overlap. Non overlapping regions are left unchanged.
Returns
ML_RESULT_OK on success or an error or a descriptive code explaining the error. On error free operation and empty overlapping region also ML_RESULT_OK is returned.

Implements ml::FileReaderPluginsBase.

◆ getHeader()

virtual const XYLibHeader & ml::XYLibReaderPlugin::getHeader ( ) const
virtual

For convenience allow access to _header.

References XYLibReaderPlugin().

◆ getNumberOfImagesInFile()

size_t ml::XYLibReaderPlugin::getNumberOfImagesInFile ( )
overridevirtual

Returns the number of images which are accessible in the loaded file; normally one, but some formats can contain more than on image per file.

Implements ml::FileReaderPluginsBase.

◆ getPagedImageProperties()

const PagedImage & ml::XYLibReaderPlugin::getPagedImageProperties ( )
overridevirtual

Returns the image properties of the currently loaded image. Validity can be determined with isValid() on returned object.

Implements ml::FileReaderPluginsBase.

◆ getPluginPriority()

double ml::XYLibReaderPlugin::getPluginPriority ( ) const
overridevirtual

XYLibReaderPlugin might detect a loadable file which actually is of another format. Known collisions are, for example, that .raw files of DMFileReaderPlugin are recognized as readable. Therefore use this plugin only if no other loader is found and return the smallest possible priority value. [0,1] is the allowed range, i.e. use 0.

Reimplemented from ml::FileReaderPluginsBase.

◆ getStringIdentifier()

std::string ml::XYLibReaderPlugin::getStringIdentifier ( )
static

Returns the string identifier for this plugin.

◆ getTagDump()

std::string ml::XYLibReaderPlugin::getTagDump ( const size_t maxNumBinaryEntries = 8,
const size_t maxNumStringEntries = 20 )
overridevirtual

This function returns a tag dump of the loaded file or "" if not possible. Parameters maxNumBinaryEntries and maxNumStringEntries are ignored by this loader.

Reimplemented from ml::FileReaderPluginsBase.

◆ isSupported()

bool ml::XYLibReaderPlugin::isSupported ( const std::string & fileName) const
overridevirtual

Applies a fast check whether the file is probably supported or not, for
example via the suffix. If false is returned then file is definitely not loadable; if true then opening with loadFile() is worth a try.

Implements ml::FileReaderPluginsBase.

◆ loadFile()

MLErrorCode ml::XYLibReaderPlugin::loadFile ( const std::string & fileName)
overridevirtual

Opens and loads a file such that getPagedImageProperties() and fillSubImage() can be used to retrieve information from the file. Corresponding close is performed with close() or the destructor.

Parameters
fileNameThe absolute path to the file to be loaded.
Returns
ML_RESULT_OK on successfully opened file or a descriptive code explaining the error.

Implements ml::FileReaderPluginsBase.

◆ supportsFillingInReferenceCoordinates()

bool ml::XYLibReaderPlugin::supportsFillingInReferenceCoordinates ( ) const
overridevirtual

Returns true if the loader instance support SubImage filling in reference coordinates, otherwise false.

Reimplemented from ml::FileReaderPluginsBase.


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