MeVisLab Toolbox Reference
|
A concrete class derived from DicomModifyBase which allows the addition or replacement of private DICOM tags in a (cloned) DICOM tree; see also DicomModifyPrivateAddFieldAddOn. More...
#include <mlDicomModifyPrivateAdd.h>
Public Types | |
enum | { NumberOfPrivateTags = 4 } |
Number of private tags created together with one Private creator entry. More... | |
enum | ModificationModes { DoNotModify = 0 , AddOrReplace } |
Available modes for tag/tree modifications. More... | |
enum | { NumModificationModes = AddOrReplace+1 } |
Defines the number of available modification modes. More... | |
Public Member Functions | |
DicomModifyPrivateAdd (const std::string &privateCreator="PRIVATE_CREATOR", MLuint16 groupId=0x009, MLuint8 elementGroupId=0x10, DCMTree::Vr vr=DCMTree::LO, MLuint8 lowerByteOfElementIdsBase=0x10, const std::string &modStrVal="", ModificationModes modModes=DoNotModify, bool splitMode=false) | |
Constructor creating a no operation default object. More... | |
void | setPrivateCreator (const std::string &privateCreator) |
Sets the private creator string, shall be non empty. More... | |
const std::string & | getPrivateCreator () const |
Returns the currently set private creator string. More... | |
void | setPrivateGroupId (MLuint16 groupId) |
Sets preferred group id of the private creator and by the private tags; shall be odd and from [0x09, 0xffff]. More... | |
MLuint16 | getPrivateGroupId () const |
Returns the currently set private group id. More... | |
void | setPrivateElementGroupId (MLuint8 elementGroupId) |
Sets the preferred element group id to be defined by the private creator and to be used by the private tags; shall be >= 0x10 and <= 0xFF. More... | |
MLuint8 | getPrivateElementGroupId () const |
Returns the currently set private element group id. More... | |
void | setPrivateTagLowerByteOfElementId (MLuint8 lowerByte, size_t pIdx) |
Sets the lower byte of the element id of the manipulated private tag with index pIdx. More... | |
MLuint8 | getPrivateTagLowerByteOfElementId (size_t pIdx) const |
Returns the lower byte of the element id of the manipulated private tag. More... | |
void | setSplitMode (bool split, size_t pIdx) |
If true then set or changed values are split at backslashes into different values. More... | |
bool | getSplitMode (size_t pIdx) const |
Returns whether split mode is on. More... | |
void | setPrivateTagVR (DCMTree::Vr vr, size_t pIdx) |
Sets the value representation to be used by the private tags. More... | |
DCMTree::Vr | getPrivateTagVR (size_t pIdx) const |
Returns the currently set value representation for the private tag. More... | |
void | setPrivateTagModificationStringValue (const std::string &modStrVal, size_t pIdx) |
Sets the value to be used to modify the private tag. More... | |
std::string | getPrivateTagModificationStringValue (size_t pIdx) const |
Returns the value used to modify the private tag. More... | |
void | setPrivateTagModificationMode (ModificationModes modMode, size_t pIdx) |
Sets how the tag with given id and modification value shall be modified. More... | |
ModificationModes | getPrivateTagModificationMode (size_t pIdx) const |
Returns the currently set modification mode. More... | |
std::string | applyModifications (DCMTree::TreePtr dcmTree, const FieldContainer *treeInfos=nullptr) override |
Apply a change to dcmTree according to the currently selected _modificationMode. More... | |
Public Member Functions inherited from ml::DicomModifyBase | |
DicomModifyBase (DCMTree::TagId tagId=DCMTree::TagId(), const std::string &modStrVal="") | |
Constructor setting the tag ID and the string value for modifications. More... | |
virtual | ~DicomModifyBase () |
Virtual destructor. More... | |
void | setTagId (DCMTree::TagId tagId) |
Set the id of the tag to be modified. More... | |
void | setTagId (const std::string &tagIdStr) |
Set the id (as std::string) of the tag to be modified; invalid ids will cause an ML_ERROR_PRINT, empty strings shall be ignored by specification and will set an id (0000,0000). More... | |
DCMTree::TagId | getTagId () const |
Returns the id of the tag to be modified (might be temporarily overridden be a "modificationTagIdReplacement" field in treeInfos parameter of applyModifications()). More... | |
void | setModificationStringValue (const std::string &modStrVal) |
Set the string value to be used for the tag modification if not overridden by a treeInfos-"modificationStringValueReplacement" entry as described in applyModifications. More... | |
const std::string & | getModificationStringValue () const |
Returns the string which is used to manipulate tag value(s) (might be temporarily overridden by a "modificationStringValueReplacement" field in treeInfos parameter of applyModifications()). More... | |
bool | getModificationStringValueAsMLInt (MLint &retVal) const |
If the modificationStringValue() can be interpreted as an integer value then true is returned and the string is converted to that integer and returned in retVal; otherwise false is returned and retVal is left unchanged. More... | |
void | setTagIdAndModificationStringValue (DCMTree::TagId tagId, const std::string &modStrVal) |
Calls setTagId(tagId) and setModificationStringValue(modStrVal). More... | |
bool | tagExists (DCMTree::TreePtr dcmTree) const |
DCMTree::TagPtr | getTagIfItExists (DCMTree::TreePtr dcmTree, std::string *errStr=nullptr) const |
DCMTree::TagPtr | addTag (DCMTree::TreePtr dcmTree, std::string *errStr=nullptr, bool setValue=true, bool splitValue=false) const |
Add the tag with ID getTagId() to tree dcmTree and value _modificationStringValue; requires a valid non nullptr dcmTree. More... | |
void | removeTag (DCMTree::TreePtr dcmTree) const |
Remove the tag with the ID getTagId() if it exists, otherwise do nothing; (if dcmTree member is nullptr the call is ignored). More... | |
void | setTagValue (DCMTree::TreePtr dcmTree, std::string *errStr=nullptr, const DICOMTagTools::ValueModifyModes modMode=DICOMTagTools::Replace, bool splitValue=false) const |
Sets the value of tag with getTagId() in dcmTree with new value _modificationStringValue. More... | |
Static Public Attributes | |
static const char *const | ModificationModesStrings [NumModificationModes] |
String versions for ModificationModes. More... | |
A concrete class derived from DicomModifyBase which allows the addition or replacement of private DICOM tags in a (cloned) DICOM tree; see also DicomModifyPrivateAddFieldAddOn.
Definition at line 25 of file mlDicomModifyPrivateAdd.h.
anonymous enum |
Number of private tags created together with one Private creator entry.
Enumerator | |
---|---|
NumberOfPrivateTags |
Definition at line 29 of file mlDicomModifyPrivateAdd.h.
anonymous enum |
Defines the number of available modification modes.
Enumerator | |
---|---|
NumModificationModes |
Definition at line 38 of file mlDicomModifyPrivateAdd.h.
Available modes for tag/tree modifications.
Enumerator | |
---|---|
DoNotModify | No change is applied to the tree. |
AddOrReplace | The tag with id and the given private creator is removed. |
Definition at line 32 of file mlDicomModifyPrivateAdd.h.
ml::DicomModifyPrivateAdd::DicomModifyPrivateAdd | ( | const std::string & | privateCreator = "PRIVATE_CREATOR" , |
MLuint16 | groupId = 0x009 , |
||
MLuint8 | elementGroupId = 0x10 , |
||
DCMTree::Vr | vr = DCMTree::LO , |
||
MLuint8 | lowerByteOfElementIdsBase = 0x10 , |
||
const std::string & | modStrVal = "" , |
||
ModificationModes | modModes = DoNotModify , |
||
bool | splitMode = false |
||
) |
Constructor creating a no operation default object.
|
overridevirtual |
Apply a change to dcmTree according to the currently selected _modificationMode.
dcmTree | The DICOM tree to be modified. |
treeInfos | A FieldContainer which - if not nullptr - can contain additional user defined information fields about dcmTree. |
Reimplemented from ml::DicomModifyBase.
const std::string& ml::DicomModifyPrivateAdd::getPrivateCreator | ( | ) | const |
Returns the currently set private creator string.
MLuint8 ml::DicomModifyPrivateAdd::getPrivateElementGroupId | ( | ) | const |
Returns the currently set private element group id.
MLuint16 ml::DicomModifyPrivateAdd::getPrivateGroupId | ( | ) | const |
Returns the currently set private group id.
MLuint8 ml::DicomModifyPrivateAdd::getPrivateTagLowerByteOfElementId | ( | size_t | pIdx | ) | const |
Returns the lower byte of the element id of the manipulated private tag.
ModificationModes ml::DicomModifyPrivateAdd::getPrivateTagModificationMode | ( | size_t | pIdx | ) | const |
Returns the currently set modification mode.
std::string ml::DicomModifyPrivateAdd::getPrivateTagModificationStringValue | ( | size_t | pIdx | ) | const |
Returns the value used to modify the private tag.
DCMTree::Vr ml::DicomModifyPrivateAdd::getPrivateTagVR | ( | size_t | pIdx | ) | const |
Returns the currently set value representation for the private tag.
bool ml::DicomModifyPrivateAdd::getSplitMode | ( | size_t | pIdx | ) | const |
Returns whether split mode is on.
void ml::DicomModifyPrivateAdd::setPrivateCreator | ( | const std::string & | privateCreator | ) |
Sets the private creator string, shall be non empty.
void ml::DicomModifyPrivateAdd::setPrivateElementGroupId | ( | MLuint8 | elementGroupId | ) |
Sets the preferred element group id to be defined by the private creator and to be used by the private tags; shall be >= 0x10 and <= 0xFF.
void ml::DicomModifyPrivateAdd::setPrivateGroupId | ( | MLuint16 | groupId | ) |
Sets preferred group id of the private creator and by the private tags; shall be odd and from [0x09, 0xffff].
void ml::DicomModifyPrivateAdd::setPrivateTagLowerByteOfElementId | ( | MLuint8 | lowerByte, |
size_t | pIdx | ||
) |
Sets the lower byte of the element id of the manipulated private tag with index pIdx.
lowerByte | The least significant byte of the manipulated private tag, must be from [0x00, 0xFF]. |
pIdx | Selects the private tag for which the parameter shall be set; must be from [0, NumberOfPrivateTags-1]. |
void ml::DicomModifyPrivateAdd::setPrivateTagModificationMode | ( | ModificationModes | modMode, |
size_t | pIdx | ||
) |
Sets how the tag with given id and modification value shall be modified.
modMode | Defined how the private tag shall be modified; see ModificationModes. |
pIdx | Selects the private tag for which the parameter shall be set; must be from [0, NumberOfPrivateTags-1]. |
void ml::DicomModifyPrivateAdd::setPrivateTagModificationStringValue | ( | const std::string & | modStrVal, |
size_t | pIdx | ||
) |
Sets the value to be used to modify the private tag.
modStrVal | the value to be used for the manipulation (set/replace) of the tag value. |
pIdx | Selects the private tag for which the parameter shall be set; must be from [0, NumberOfPrivateTags-1]. |
void ml::DicomModifyPrivateAdd::setPrivateTagVR | ( | DCMTree::Vr | vr, |
size_t | pIdx | ||
) |
Sets the value representation to be used by the private tags.
vr | The value representation to be used by the tag. |
pIdx | Selects the private tag for which the parameter shall be set; must be from [0, NumberOfPrivateTags-1]. |
void ml::DicomModifyPrivateAdd::setSplitMode | ( | bool | split, |
size_t | pIdx | ||
) |
If true then set or changed values are split at backslashes into different values.
|
static |
String versions for ModificationModes.
Definition at line 41 of file mlDicomModifyPrivateAdd.h.