MeVisLab Toolbox Reference
ml::PrivateDICOMTagDecoderPluginBase Class Referenceabstract

Base class for plugins decoding private DICOM tags to a PrivateDICOMTagValueFields container. More...

#include <mlPrivateDICOMTagDecoderPluginBase.h>

Inheritance diagram for ml::PrivateDICOMTagDecoderPluginBase:
ml::Base ml::GDCMPrivateDICOMTagDecoders ml::GenericPrivateDICOMTagDecoder ml::MRSASCIITagDecoder ml::PMTFToshibaPrivateDICOMTagDecoders ml::PrivateSequenceDICOMTagDecoders

Public Types

enum  DecodeStates { NOT_DECODED = 0 , PARTIALLY_DECODED , FULLY_DECODED }
 Return states of decoding. More...
 
typedef std::map< DCMTree::RawTagId, std::string > PrivateCreatorIdMap
 A type storing tag group ids for strings found in private tags (tags with odd numbers and id 0x10-0xFF). More...
 
- Public Types inherited from ml::Base
enum  PersistenceInterface { PersistenceByString , PersistenceByTreeNode , PersistenceByStream }
 This enum describes the different persistence interfaces available. More...
 

Public Member Functions

 PrivateDICOMTagDecoderPluginBase (PrivateCreatorIdMap *privateCreatorMap=nullptr)
 Default constructor implementation creating a link symbol to make this base class always linked. More...
 
 ~PrivateDICOMTagDecoderPluginBase () override
 Virtual destructor. More...
 
virtual DecodeStates decodePrivateTag (const std::string &privateCreator, DCMTree::Const_TagPtr tagPtr, PrivateDICOMTagValueFields &resultFields)=0
 When deriving a decoder for private tags then implement this method. More...
 
PrivateCreatorIdMapgetPrivateCreatorMap () const
 Returns the map which stores a set of known private creators, typically from the currently traversed DICOM tree. More...
 
void setPrivateCreatorMap (PrivateCreatorIdMap *pcm)
 Sets the map which stores a set of known private creators, typically from the currently traversed DICOM tree. More...
 
- Public Member Functions inherited from ml::Base
 Base ()
 Constructor. More...
 
virtual ~Base ()
 Destructor. More...
 
virtual BasedeepCopy () const
 Set addStateToTree version number that can be accessed via getAddStateVersion() More...
 
bool isOfAllowedType (const std::vector< const RuntimeType * > &types) const
 Check if this object's type is equal to or derived from one of the types given in the argument. More...
 
virtual bool isRefCountedBase () const
 Returns if the instance is derived from RefCountedBase. More...
 
virtual std::string detailString () const
 Return 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
 Write the objects state to the data stream object. More...
 
virtual void readFrom (AbstractPersistenceInputStream *, int)
 Read the objects state from the data stream object. More...
 

Additional Inherited Members

- Protected Member Functions inherited from ml::Base
virtual char * getPersistentState () const
 Returns a C string describing the object's internal state. More...
 
virtual void setPersistentState (const char *)
 Restores the object's internal state from a string that had been previously generated using getPersistentState(). More...
 
virtual void clearPersistentState (char *) const
 Disposes a string previously allocated by getPersistentState(). More...
 

Detailed Description

Base class for plugins decoding private DICOM tags to a PrivateDICOMTagValueFields container.

Definition at line 33 of file mlPrivateDICOMTagDecoderPluginBase.h.

Member Typedef Documentation

◆ PrivateCreatorIdMap

A type storing tag group ids for strings found in private tags (tags with odd numbers and id 0x10-0xFF).

Definition at line 38 of file mlPrivateDICOMTagDecoderPluginBase.h.

Member Enumeration Documentation

◆ DecodeStates

Return states of decoding.

Enumerator
NOT_DECODED 

The tag data could not be decoded.

PARTIALLY_DECODED 

The tag data could be decoded partially.

FULLY_DECODED 

The tag data could be decoded fully.

Definition at line 48 of file mlPrivateDICOMTagDecoderPluginBase.h.

Constructor & Destructor Documentation

◆ PrivateDICOMTagDecoderPluginBase()

ml::PrivateDICOMTagDecoderPluginBase::PrivateDICOMTagDecoderPluginBase ( PrivateCreatorIdMap privateCreatorMap = nullptr)

Default constructor implementation creating a link symbol to make this base class always linked.

◆ ~PrivateDICOMTagDecoderPluginBase()

ml::PrivateDICOMTagDecoderPluginBase::~PrivateDICOMTagDecoderPluginBase ( )
override

Virtual destructor.

Member Function Documentation

◆ decodePrivateTag()

virtual DecodeStates ml::PrivateDICOMTagDecoderPluginBase::decodePrivateTag ( const std::string &  privateCreator,
DCMTree::Const_TagPtr  tagPtr,
PrivateDICOMTagValueFields resultFields 
)
pure virtual

When deriving a decoder for private tags then implement this method.

Parameters
privateCreatorA string with the name of the private creator this tags belongs to.
tagPtrThe tag whose value shall be decoded.
resultFieldsThe field value list filled with extracted information from tagPtr or returned empty if no data could be decoded.
Returns
PrivateDICOMTagDecoderPluginBase::NOT_DECODED if the tag could not be decoded, PrivateDICOMTagDecoderPluginBase::PARTIALLY_DECODED if some of the tag value components were decoded or PrivateDICOMTagDecoderPluginBase::FULLY_DECODED if entire tag value could be decoded.

Implemented in ml::PrivateSequenceDICOMTagDecoders, ml::PMTFToshibaPrivateDICOMTagDecoders, ml::MRSASCIITagDecoder, ml::GenericPrivateDICOMTagDecoder, and ml::GDCMPrivateDICOMTagDecoders.

◆ getPrivateCreatorMap()

PrivateCreatorIdMap* ml::PrivateDICOMTagDecoderPluginBase::getPrivateCreatorMap ( ) const
inline

Returns the map which stores a set of known private creators, typically from the currently traversed DICOM tree.

Definition at line 67 of file mlPrivateDICOMTagDecoderPluginBase.h.

◆ setPrivateCreatorMap()

void ml::PrivateDICOMTagDecoderPluginBase::setPrivateCreatorMap ( PrivateCreatorIdMap pcm)
inline

Sets the map which stores a set of known private creators, typically from the currently traversed DICOM tree.

Definition at line 70 of file mlPrivateDICOMTagDecoderPluginBase.h.


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