MeVisLab Toolbox Reference
ml::DirectDicomImportOtherImporter Class Reference

Derived importer to import non DICOM files into DirectDicomImport. More...

#include <mlDirectDicomImportOtherImporter.h>

Inheritance diagram for ml::DirectDicomImportOtherImporter:
ml::DirectDicomImportImporterBase ml::ProgressLogger

Public Member Functions

 DirectDicomImportOtherImporter (DirectDicomImport &ddiOp)
 Constructor using a DirectDicomImport instance associated with.
 ~DirectDicomImportOtherImporter () override
 Destructor.
void appendFields (FieldContainer &fieldContainer) override
 Creates and appends all parameter fields for this importer. To be called in constructor.
void handleNotification (Field &field) override
 Handles changes of fields added by appendFields.
void import (const FileListTools::FileList &fileList) override
Public Member Functions inherited from ml::DirectDicomImportImporterBase
 DirectDicomImportImporterBase (DirectDicomImport &ddiOp)
 Constructor using a DirectDicomImport instance associated with.
 ~DirectDicomImportImporterBase () override
 Destructor.
void updateProgressIndicator (const std::string &info, float percState) override
void _updateConsole (bool fullUpdate=true) override
virtual DicomConfigurableMessageFilterBaseRefCountedPtr getMessageCollector () const
 Privides access to the message collector of the internally referenced DDI instance.
Public Member Functions inherited from ml::ProgressLogger
 ProgressLogger (std::stringstream *outputStream=nullptr, NotifyField *intCheckField=nullptr, StringField *statusField=nullptr, bool useRichTextCoding=true)
virtual ~ProgressLogger ()
 Destructor.
void setAutoNewLineTermination (bool on)
 Enable/disable automatic newline termination of logged messages.
bool isAutoNewLineTerminationOn () const
 Returns enabled/disabled automatic newline termination of logged messages.
virtual bool messageHook (const ProgressLogger &, MLMessageType, const std::string *, const std::string *, MLErrorCode *, const std::string *, unsigned int *)
void logAnyMessage (std::string msg, unsigned int formatFlags=NoFlags)
 Log any string into the console.
void logFatalError (const std::string &func, MLErrorCode err, const std::string &reason)
void logError (const std::string &func, MLErrorCode err, const std::string &reason)
 See logFatalError() for details.
void logWarning (const std::string &func, MLErrorCode err, const std::string &reason)
 See logFatalError() for details.
void logInfo (const std::string &func, const std::string &reason="")
void logFullFatalError (const std::string &func, MLErrorCode err, const std::string &reason)
void logFullError (const std::string &func, MLErrorCode err, const std::string &reason)
 See logFullFatalError() for details.
void logFullWarning (const std::string &func, MLErrorCode err, const std::string &reason)
 See logFullFatalError() for details.
void logFullInfo (const std::string &func, const std::string &reason)
bool getRichTextCodingFlag () const
void setRichTextCodingFlag (bool useRichTextCoding)
 See getRichTextCodingFlag() for details.
bool getUpdateProgressDuringInterruptChecksFlag () const
void setUpdateProgressDuringInterruptChecksFlag (bool callUpdateProgressDuringInterruptChecks)
 See getUpdateProgressDuringInterruptChecksFlag() for details.
void setStatusUpdateTimeIntervalInSeconds (double checkIntervalInSeconds)
double getStatusUpdateTimeIntervalInSeconds () const
void setCheckTimeIntervalInSeconds (double checkIntervalInSeconds)
double getCheckTimeIntervalInSeconds () const
 Returns the currently set interrupt check time interval.
void setInterruptCheckFunction (InterruptCheckFunc checkFunc, void *userData)
InterruptCheckFunc getInterruptCheckFunction () const
 Returns the currently set function for interrupt checks.
void * getInterruptCheckFunctionUserData () const
 Returns the currently set user data pointer for interrupt checks.
void setInterruptCheckField (NotifyField *interruptField=nullptr)
NotifyFieldgetInterruptCheckField () const
void setStatusField (StringField *statusField)
 Set a StringField which always shall be updated with all logged messages; ignored if nullptr.
StringFieldgetStatusField () const
virtual bool wasInterrupted ()
virtual bool getInterruptedFlag () const
 Returns current state of interruption flag (but does not check for interruption).
virtual void setInterruptedFlag (bool wasInterrupted)
 Sets current state of interruption flag (but does not check for interruption).
virtual bool orToInterruptedFlag (bool wasInterrupted)
void setHadFlags (bool hadFlag)
 Sets all had*Flags to hadFlag.
void setFatalErrorMessagePrefix (const std::string &msg)
 Set/get prefixes for messages.
void setErrorMessagePrefix (const std::string &msg)
void setWarningMessagePrefix (const std::string &msg)
void setInfoMessagePrefix (const std::string &msg)
std::string getFatalErrorMessagePrefix () const
std::string getErrorMessagePrefix () const
std::string getWarningMessagePrefix () const
std::string getInfoMessagePrefix () const
bool hadFatalError () const
 Returns true if any fatal error, error, warning or info was logged; can be reset with corresponding setHad*Flag().
bool hadError () const
bool hadWarning () const
bool hadInfo () const
void setHadFatalErrorFlag (bool hadFatalErrorFlag)
 Sets the state of the corresponding _had* member; used to clear recent logging states.
void setHadErrorFlag (bool hadErrorFlag)
void setHadWarningFlag (bool hadWarningFlag)
void setHadInfoFlag (bool hadInfoFlag)

Protected Member Functions

virtual void _determineProperties (const FileListTools::FileList &fileList, std::vector< _FilePropHelper > &filePropVec, float progressStart, float progressEnd)
virtual void _propertySort (std::vector< _FilePropHelper > &filePropVec)
 Sort filePropVec according image extent and file name given by the vector entries.
virtual size_t _composeAndAppendVolumes (const std::vector< _FilePropHelper > &filePropVec, const FileListTools::FileList &fileList, DicomMessageCollector &dcmMsgCollector)
virtual void _postProcessVolumes (size_t lastNumVolumesToProcess)
virtual void _appendMetaData (ImagePropertyExtensionContainer &imgPropContainer, const std::string &metaData, const std::string &fileName)
virtual void _appendNewDirectVolumeReferenceFromFilePropHelper (const _FilePropHelper &fileProp, const FileListTools::FileList &fileList, DicomMessageCollector &dcmMsgCollector)
Protected Member Functions inherited from ml::DirectDicomImportImporterBase
virtual MultiFileVolumeList_getOutVolumeList ()
Protected Member Functions inherited from ml::ProgressLogger
std::string _doAutoNewLineTerminate (const std::string &msg) const
 Helper to terminate msg with newline at end according.
virtual bool _isStopPressed () const

Additional Inherited Members

Public Types inherited from ml::ProgressLogger
enum  FormatFlags {
  NoFlags = 0 , Bold = 1 , Green = 2 , Yellow = 4 ,
  Red = 8 , Blue = 16
}
 Enumerator describing some formatting flags. More...
typedef bool(* InterruptCheckFunc) (void *userData)
 Function type to check to for an interruption.
Static Public Member Functions inherited from ml::ProgressLogger
static bool isPressedField (NotifyField *fieldToCheck)
Static Protected Member Functions inherited from ml::ProgressLogger
static void _updateProgressIndicatorCB (void *userData, const std::string &info, float state)

Detailed Description

Derived importer to import non DICOM files into DirectDicomImport.

Definition at line 29 of file mlDirectDicomImportOtherImporter.h.

Constructor & Destructor Documentation

◆ DirectDicomImportOtherImporter()

ml::DirectDicomImportOtherImporter::DirectDicomImportOtherImporter ( DirectDicomImport & ddiOp)

Constructor using a DirectDicomImport instance associated with.

◆ ~DirectDicomImportOtherImporter()

ml::DirectDicomImportOtherImporter::~DirectDicomImportOtherImporter ( )
override

Destructor.

Member Function Documentation

◆ _appendMetaData()

virtual void ml::DirectDicomImportOtherImporter::_appendMetaData ( ImagePropertyExtensionContainer & imgPropContainer,
const std::string & metaData,
const std::string & fileName )
protectedvirtual

Append tag dump (and file name for entry when it's created) to an ImagePropertyExtension entry.

Parameters
imgPropContainerThe container to which the entry is added if it still does not exist, otherwise the first StringImagePropertyExtension will be used.
metaDataThe meta data string to be set in first entry or to be appended if the extension already exists.
fileNameThe file name to be set if the extension entry is not found and created.

◆ _appendNewDirectVolumeReferenceFromFilePropHelper()

virtual void ml::DirectDicomImportOtherImporter::_appendNewDirectVolumeReferenceFromFilePropHelper ( const _FilePropHelper & fileProp,
const FileListTools::FileList & fileList,
DicomMessageCollector & dcmMsgCollector )
protectedvirtual

Creates and append a new DirectDicomVolumeReference with settings from a _FilePropHelper.

Parameters
filePropThe file property providing basic information (such as file name, image properties, format etc.) used to initialize the newly created and appended VolumeReference.
fileListThe list of files and their properties from which the volume was/is created.
dcmMsgCollectorCollects error, info and issue messages (typically related to a handle).

◆ _composeAndAppendVolumes()

virtual size_t ml::DirectDicomImportOtherImporter::_composeAndAppendVolumes ( const std::vector< _FilePropHelper > & filePropVec,
const FileListTools::FileList & fileList,
DicomMessageCollector & dcmMsgCollector )
protectedvirtual

Compose same sized images with same voxel type of entries in filePropVec to volumes and append those volume to the volume list; all other images are appended as single volumes.

Parameters
filePropVecThe vector of file properties whose elements shall be composed to groups of same sized volumes.
fileListThe list of files and their properties from which the volume was/is created.
dcmMsgCollectorCollects error, info and issue messages (typically related to a handle).
Returns
The number of newly added MultiFileVolumes.

◆ _determineProperties()

virtual void ml::DirectDicomImportOtherImporter::_determineProperties ( const FileListTools::FileList & fileList,
std::vector< _FilePropHelper > & filePropVec,
float progressStart,
float progressEnd )
protectedvirtual

Determine a vector of image properties and file names of loadable files.

Parameters
fileListImageVector containing all files potentially including suppressed and DICOM files.
filePropVecA vector of image properties together with file names first cleared and then filled with image properties and file names of loadable files.
progressStartStart of the display range of the progress indicator.
progressEndEnd of the display range of the progress indicator.

◆ _postProcessVolumes()

virtual void ml::DirectDicomImportOtherImporter::_postProcessVolumes ( size_t lastNumVolumesToProcess)
protectedvirtual

Some settings can be set up best after full composition of the volumes, for example storing the image meta data in MultiFileVolume options; this function processes the most recent lastNumVolumesToProcess in _getOutVolumeList(). If std::string::npos is passed then all volumes will be post processed.

◆ _propertySort()

virtual void ml::DirectDicomImportOtherImporter::_propertySort ( std::vector< _FilePropHelper > & filePropVec)
protectedvirtual

Sort filePropVec according image extent and file name given by the vector entries.

◆ appendFields()

void ml::DirectDicomImportOtherImporter::appendFields ( FieldContainer & fieldContainer)
overridevirtual

Creates and appends all parameter fields for this importer. To be called in constructor.

Reimplemented from ml::DirectDicomImportImporterBase.

◆ handleNotification()

void ml::DirectDicomImportOtherImporter::handleNotification ( Field & field)
overridevirtual

Handles changes of fields added by appendFields.

Reimplemented from ml::DirectDicomImportImporterBase.

◆ import()

void ml::DirectDicomImportOtherImporter::import ( const FileListTools::FileList & fileList)
overridevirtual

Builds MultiFileVolume(s) from files provided by fileList.

Parameters
fileListManager for a map of file names associated with filter attributes. after import with perhaps updated file attributes.

Implements ml::DirectDicomImportImporterBase.


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