MeVisLab Toolbox Reference
ml::DicomPresentationStateIdentificationTagInterface Class Reference

Manages the module field interface according to DICOM PresentationCreationDate and PresentationCreationTime tags in C.11.10 Presentation State Identification Module, however without Content Identification Macro Attributes, which can be handled with ContentIdentificationMacroTagInterface, for example. More...

#include <mlDicomPresentationStateIdentificationTagInterface.h>

Inheritance diagram for ml::DicomPresentationStateIdentificationTagInterface:
ml::DicomContentDateTimeTagInterface ml::DicomModifyFieldAddOnBase ml::DicomModifyList ml::FieldAddOnBase ml::Base

Public Member Functions

 DicomPresentationStateIdentificationTagInterface (Module &modRef, bool allowEmptyStrings=true, bool allowOldFormats=true)
 Constructor, setting the reference of the module for which the fields shall be managed. More...
 
void addFields () override
 Add fields to field container of module. More...
 
void inheritValues (DCMTree::Const_TreePtr dcmTree) override
 Implements the copy of tag values from the given dcmTree to the fields. More...
 
FieldAddOnBase::FieldChangeState handleFieldChanges (Field *field) override
 Handle field notifications. More...
 
std::string applyModifications (DCMTree::TreePtr dcmTree, const FieldContainer *treeInfos=nullptr) override
 See DicomModifyFieldAddOnBase::applyModifications() for documentation. More...
 
std::string checkConsistency () const override
 Checks for invalid parameters; return textual description on error, or empty string on success. More...
 
BoolFieldgetAutoSetUpPresentationCreationDateFld ()
 Access interface to members; see corresponding member for details. More...
 
const BoolFieldgetAutoSetUpPresentationCreationDateFld () const
 
BoolFieldgetAutoSetUpPresentationCreationTimeFld ()
 
const BoolFieldgetAutoSetUpPresentationCreationTimeFld () const
 
NotifyFieldgetSetCurrentDateFld ()
 
const NotifyFieldgetSetCurrentDateFld () const
 
NotifyFieldgetSetCurrentTimeFld ()
 
const NotifyFieldgetSetCurrentTimeFld () const
 
- Public Member Functions inherited from ml::DicomContentDateTimeTagInterface
 DicomContentDateTimeTagInterface (Module &modRef, bool allowEmptyStrings=true, bool allowOldFormats=true, const std::string &contentDateFieldName="contentDate", const std::string &contentTimeFieldName="contentTime", const std::string &msgContentDateFieldName="Content Date", const std::string &msgContentTimeFieldName="Content Time", const DCMTree::RawTagId dateTagId=DCMTree_ContentDate, const DCMTree::RawTagId timeTagId=DCMTree_ContentTime)
 Constructor, setting the reference of the module for which the fields shall be managed. More...
 
StringFieldgetContentDateFld ()
 Provide access to fields and tag ids; for documentation see corresponding fields. More...
 
StringFieldgetContentTimeFld ()
 
DCMTree::RawTagId getContentDateTagId () const
 
DCMTree::RawTagId getContentTimeTagId () const
 
const std::string & getContentDateMessage () const
 
const std::string & getContentTimeMessage () const
 
- Public Member Functions inherited from ml::DicomModifyFieldAddOnBase
 DicomModifyFieldAddOnBase (FieldContainer &fieldContainerRef, size_t numInstances=1, bool createInputModifyTagsPluginBaseConnectorField=false, bool createOutputModifyTagsPluginBaseConnectorField=false)
 Constructor, setting the reference of the FieldContainer managing the fields, the number of field instances to create and optionally input and output fields to create modification pipelines. More...
 
 ~DicomModifyFieldAddOnBase () override
 Destructor resetting connector fields if they exist. More...
 
size_t getNumInstances () const
 Returns the number of instances to be created by derived fields. More...
 
void handleFieldActivationChanges () override
 Handle class changes according to Module::activateAttachments. More...
 
BaseFieldgetOutputModifierListFld () const
 Provide access to output base field if it was created. More...
 
BaseFieldgetInputModifierListFld () const
 Provide access to input base connector field if it was created. More...
 
- Public Member Functions inherited from ml::DicomModifyList
 DicomModifyList ()
 Constructor creating an empty list of tag modifiers and setting the optional input plugin with a concatenated DicomModifyList. More...
 
 ~DicomModifyList () override
 Destructor also destroying all of its stored Modifiers. More...
 
void addModifier (DicomModifyBase *modifier, bool atEnd=true)
 Add an object derived from DicomModifyBase which then will be owned (and on destruction deleted) by this. More...
 
void clear ()
 Makes modifier array empty and deletes all of them. More...
 
std::vector< DicomModifyBase * > & getModifierList ()
 Get direct access to internal list to allow callers direct manipulations which, however, must obey the restriction that ownership belongs to *this, i.e. More...
 
const std::vector< DicomModifyBase * > & getModifierList () const
 Same as getModifierList() only for constant access. More...
 
void setInputPlugin (DicomModifyList *inputPlugin=nullptr)
 Sets an optional plugin to be called by applyModififcations or resets it to nullptr; the input is called after the objects in _modfiers list. More...
 
DicomModifyListgetInputPlugin () const
 Returns the optional plugin to be called by applyModififcations. More...
 
- Public Member Functions inherited from ml::Base
 Base ()
 Constructor. More...
 
virtual ~Base ()
 Destructor. More...
 
virtual BasedeepCopy () const
 Creates a deep copy of the given object. More...
 
bool isOfAllowedType (const std::vector< const RuntimeType * > &types) const
 Checks whether this object's type is equal to or derived from one of the types given in the argument. More...
 
virtual bool isRefCountedBase () const
 Returns whether the instance is derived from RefCountedBase. More...
 
virtual std::string detailString () const
 Returns a string describing this object. More...
 
virtual bool implementsPersistence (PersistenceInterface) const
 Override this method to declare which persistence interfaces are implemented by your derived class. More...
 
virtual std::string persistentState () const
 Returns a string describing the object's internal state. More...
 
virtual void setPersistentState (const std::string &state)
 Restores the object's internal state from a string that had been previously generated using persistentState(). More...
 
virtual void addStateToTree (TreeNode *) const
 Attaches the object state as children of the given parent node. More...
 
virtual void readStateFromTree (TreeNode *)
 Reads the object state from the children of the given parent node. More...
 
virtual void writeTo (AbstractPersistenceOutputStream *) const
 Writes the objects state to the data stream object. More...
 
virtual void readFrom (AbstractPersistenceInputStream *, int)
 Reads the objects state from the data stream object. More...
 
- Public Member Functions inherited from ml::FieldAddOnBase
 FieldAddOnBase (FieldContainer &fieldContainerRef)
 Constructor, setting the reference of the FieldContainer managing the fields. More...
 
virtual ~FieldAddOnBase ()
 Destructor. More...
 
FieldContainergetFieldContainer ()
 Returns the referenced container. More...
 
const FieldContainergetFieldContainer () const
 Returns the referenced container. More...
 
std::vector< Field * > & getFields ()
 Return modification access to the list of managed fields, use at own risk! More...
 
const std::vector< Field * > & getFields () const
 Return constant access to the list of managed fields! More...
 
virtual FieldChangeState getMergedFieldChangeState (FieldChangeState state1, FieldChangeState state2) const
 Returns a FieldChangeState which best represents a merge of the two given states. More...
 
virtual bool hasField (Field *field) const
 Returns true if the passed fieldPtr is in _fieldPointers, otherwise false. More...
 

Protected Member Functions

void _setCurrentDate ()
 If called then the Presentation Creation Date Field is initialized with the current date. More...
 
void _setCurrentTime ()
 If called then the Presentation Creation Time Field is initialized with the current time. More...
 
- Protected Member Functions inherited from ml::FieldAddOnBase
void _addFieldPointer (Field *field)
 Helper routine to add a Field pointer to _fieldPointers, empty pointers and pointers added more than once will be handled fatally. More...
 

Protected Attributes

BoolField_autoSetUpPresentationCreationDateFld = nullptr
 If enabled then the Presentation Creation Date Field is initialized with the current date when inheriting DICOM information. More...
 
BoolField_autoSetUpPresentationCreationTimeFld = nullptr
 If enabled then the Presentation Creation Time Field is initialized with the current time when inheriting DICOM information. More...
 
NotifyField_setCurrentDateFld = nullptr
 If notified then the Presentation Creation Date Field is initialized with the current date. More...
 
NotifyField_setCurrentTimeFld = nullptr
 If notified then the Presentation Creation Time Field is initialized with the current time. More...
 
- Protected Attributes inherited from ml::DicomContentDateTimeTagInterface
StringField_contentDateFld
 Fields. More...
 
StringField_contentTimeFld
 Content of the corresponding DICOM tag definition. More...
 
const bool _allowEmptyStrings
 If true then empty strings in date/time settings are allowed, otherwise not. More...
 
const bool _allowOldFormats
 If true then old date specification formats are allowed, otherwise not. More...
 
const std::string _contentDateFieldName
 The constructor defined name to be used for the _contentDateFld. More...
 
const std::string _contentTimeFieldName
 The constructor defined name to be used for the _contentTimeFld. More...
 
const std::string _msgContentDateFieldName
 The constructor defined name to be used for the content date in messages. More...
 
const std::string _msgContentTimeFieldName
 The constructor defined name to be used for the content time in messages. More...
 
const DCMTree::RawTagId _contentDateTagId
 The constructor defined tag id to be used for the content date. More...
 
const DCMTree::RawTagId _contentTimeTagId
 The constructor defined tag id to be used for the content time. More...
 

Additional Inherited Members

- Public Types inherited from ml::Base
enum  PersistenceInterface { PersistenceByString , PersistenceByTreeNode , PersistenceByStream }
 This enum describes the different persistence interfaces available. More...
 
- Public Types inherited from ml::FieldAddOnBase
enum  FieldChangeState { NoChange = 0 , StatusOnlyChange , RecalculationRequired }
 Describes the type of a field changes detected in handleFieldChanges(Field *field). More...
 
- Static Public Member Functions inherited from ml::DicomModifyFieldAddOnBase
static bool isIn (const std::string &str, const char *const *values, size_t numValues)
 Static helper function which checks whether str is part of the given list of values which has numValues entries. More...
 

Detailed Description

Manages the module field interface according to DICOM PresentationCreationDate and PresentationCreationTime tags in C.11.10 Presentation State Identification Module, however without Content Identification Macro Attributes, which can be handled with ContentIdentificationMacroTagInterface, for example.

Definition at line 26 of file mlDicomPresentationStateIdentificationTagInterface.h.

Constructor & Destructor Documentation

◆ DicomPresentationStateIdentificationTagInterface()

ml::DicomPresentationStateIdentificationTagInterface::DicomPresentationStateIdentificationTagInterface ( Module modRef,
bool  allowEmptyStrings = true,
bool  allowOldFormats = true 
)

Constructor, setting the reference of the module for which the fields shall be managed.

Member Function Documentation

◆ _setCurrentDate()

void ml::DicomPresentationStateIdentificationTagInterface::_setCurrentDate ( )
protected

If called then the Presentation Creation Date Field is initialized with the current date.

◆ _setCurrentTime()

void ml::DicomPresentationStateIdentificationTagInterface::_setCurrentTime ( )
protected

If called then the Presentation Creation Time Field is initialized with the current time.

◆ addFields()

void ml::DicomPresentationStateIdentificationTagInterface::addFields ( )
overridevirtual

Add fields to field container of module.

Reimplemented from ml::DicomContentDateTimeTagInterface.

◆ applyModifications()

std::string ml::DicomPresentationStateIdentificationTagInterface::applyModifications ( DCMTree::TreePtr  dcmTree,
const FieldContainer treeInfos = nullptr 
)
overridevirtual

◆ checkConsistency()

std::string ml::DicomPresentationStateIdentificationTagInterface::checkConsistency ( ) const
overridevirtual

Checks for invalid parameters; return textual description on error, or empty string on success.

Reimplemented from ml::DicomContentDateTimeTagInterface.

◆ getAutoSetUpPresentationCreationDateFld() [1/2]

BoolField& ml::DicomPresentationStateIdentificationTagInterface::getAutoSetUpPresentationCreationDateFld ( )
inline

Access interface to members; see corresponding member for details.

Definition at line 51 of file mlDicomPresentationStateIdentificationTagInterface.h.

◆ getAutoSetUpPresentationCreationDateFld() [2/2]

const BoolField& ml::DicomPresentationStateIdentificationTagInterface::getAutoSetUpPresentationCreationDateFld ( ) const
inline

◆ getAutoSetUpPresentationCreationTimeFld() [1/2]

BoolField& ml::DicomPresentationStateIdentificationTagInterface::getAutoSetUpPresentationCreationTimeFld ( )
inline

◆ getAutoSetUpPresentationCreationTimeFld() [2/2]

const BoolField& ml::DicomPresentationStateIdentificationTagInterface::getAutoSetUpPresentationCreationTimeFld ( ) const
inline

◆ getSetCurrentDateFld() [1/2]

NotifyField& ml::DicomPresentationStateIdentificationTagInterface::getSetCurrentDateFld ( )
inline

◆ getSetCurrentDateFld() [2/2]

const NotifyField& ml::DicomPresentationStateIdentificationTagInterface::getSetCurrentDateFld ( ) const
inline

◆ getSetCurrentTimeFld() [1/2]

NotifyField& ml::DicomPresentationStateIdentificationTagInterface::getSetCurrentTimeFld ( )
inline

◆ getSetCurrentTimeFld() [2/2]

const NotifyField& ml::DicomPresentationStateIdentificationTagInterface::getSetCurrentTimeFld ( ) const
inline

◆ handleFieldChanges()

FieldAddOnBase::FieldChangeState ml::DicomPresentationStateIdentificationTagInterface::handleFieldChanges ( Field field)
overridevirtual

Handle field notifications.

Reimplemented from ml::DicomModifyFieldAddOnBase.

◆ inheritValues()

void ml::DicomPresentationStateIdentificationTagInterface::inheritValues ( DCMTree::Const_TreePtr  dcmTree)
overridevirtual

Implements the copy of tag values from the given dcmTree to the fields.

Reimplemented from ml::DicomContentDateTimeTagInterface.

Member Data Documentation

◆ _autoSetUpPresentationCreationDateFld

BoolField* ml::DicomPresentationStateIdentificationTagInterface::_autoSetUpPresentationCreationDateFld = nullptr
protected

If enabled then the Presentation Creation Date Field is initialized with the current date when inheriting DICOM information.

Definition at line 70 of file mlDicomPresentationStateIdentificationTagInterface.h.

◆ _autoSetUpPresentationCreationTimeFld

BoolField* ml::DicomPresentationStateIdentificationTagInterface::_autoSetUpPresentationCreationTimeFld = nullptr
protected

If enabled then the Presentation Creation Time Field is initialized with the current time when inheriting DICOM information.

Definition at line 73 of file mlDicomPresentationStateIdentificationTagInterface.h.

◆ _setCurrentDateFld

NotifyField* ml::DicomPresentationStateIdentificationTagInterface::_setCurrentDateFld = nullptr
protected

If notified then the Presentation Creation Date Field is initialized with the current date.

Definition at line 76 of file mlDicomPresentationStateIdentificationTagInterface.h.

◆ _setCurrentTimeFld

NotifyField* ml::DicomPresentationStateIdentificationTagInterface::_setCurrentTimeFld = nullptr
protected

If notified then the Presentation Creation Time Field is initialized with the current time.

Definition at line 79 of file mlDicomPresentationStateIdentificationTagInterface.h.


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