Project global and OS specific declarations.
#define MLDICOMTAGINTERFACES_EXPORT
DLL export macro definition.
Field to encapsulate a vector of 3 float values representing an (rgb) color with all properties of Ve...
The class DicomModifyFieldAddOnBase is dedicated to manage fields for ML modules and instances derive...
Class managing the module field interface according to DICOM Segmentation Image Module Attributes,...
NotifyField * _removeSegmentFld
Remove currently selected segment.
IntField * _currentSegmentFld
Segment counter to index the currently shown segment in segementSequence.
DoubleField * _segmentImageValueRangeMinFld
[Min,Max[ interval in which input image values are considered as part of the segment; interval border...
FieldAddOnBase::FieldChangeState handleFieldChanges(Field *field) override
Handle field notifications according to Module::activateAttachments with a return of field change sta...
StringField * _segmentAlgorithmNameFld
Segment Algorithm Name(if type is not MANUAL).
DicomSegmentSequenceTagInterface(Module &modRef)
Constructor, setting the reference of the module for which the fields shall be managed.
std::string checkConsistency() const override
Checks for invalid parameters; return textual description on error, or empty string on success; requi...
IntField * _segmentNumberFld
Segment Number >= 1.
void addFields() override
Add fields to field container of module.
IntField * _numberOfSegmentsFld
The number of currently available segments.
StringField * _segmentDescriptionFld
Segment Description.
DoubleField * _segmentImageValueRangeMaxFld
Vector3Field * _recommendedDisplayCIELabValueFld
Value of RecommendedDisplayCIELabValue tag of currently selected volume or (0,0,0) if not available o...
EnumField * _segmentAlgorithmTypeFld
Segment Algorithm Type (one of AUTOMATIC, SEMIAUTOMATIC, MANUAL).
const DicomSegmentItemVector & getSegmentSequence() const
Allows read access to the segment sequence.
void handleFieldActivationChanges() override
Handle class changes according to Module::activateAttachments.
StringField * _segmentLabelFld
Segment Label.
~DicomSegmentSequenceTagInterface() override
NotifyField * _appendSegmentFld
Append a new segment at end.
ColorField * _rgbFld
A reduced quality version of the RecommendedDisplayCIELabValue as rgb.
void _updateSegmentNumbers()
Small helper function setting all segmentNumbers of all segments.
StringField * _codedSegmentSequenceFld
Internal, non-user, field to store the content of the segment sequence as coded string.
void inheritValues(DCMTree::Const_TreePtr dcmTree) override
Implements the copy of tag values from the given dcmTree to the fields.
std::string applyModifications(DCMTree::TreePtr dcmTree, const FieldContainer *treeInfos=nullptr) override
See DicomModifyFieldAddOnBase::applyModifications() for documentation; adds field values as tags to d...
DicomSegmentItemVector _segmentSequence
Stores the segment sequence;.
DicomSegmentItemVector & getSegmentSequence()
Allows read-write access to the segment sequence.
Field to encapsulate a double value.
Field to encapsulate an enumerated value.
FieldChangeState
Describes the type of a field changes detected in handleFieldChanges(Field *field).
Defines the class FieldContainer to encapsulate a vector of fields for (see class Field).
Base class for all fields used in the ML.
Field to encapsulate an integer value.
Base class for an image processing module of the ML.
Field without value for notifications.
Field to encapsulate a string value.
Field to encapsulate a vector of 3 double values.
Header file of the DicomModifyFieldAddOnBase class dedicated to manage fields for ML modules and inst...
Header file of the class implementing a segmentation item according to the DICOM Segmentation Image M...
boost::shared_ptr< const Tree > Const_TreePtr
boost::shared_ptr< Tree > TreePtr
shared pointer to a DCMTree::Tree
std::vector< DicomSegmentItem > DicomSegmentItemVector
Type describing a sequence of SegmentItems similar to its description in the DICOM standard under SEG...