MeVisLab Toolbox Reference
mlRelatedDicomVolumeFieldAddOn.h
Go to the documentation of this file.
1// Copyright (c) Fraunhofer MEVIS, Germany. All rights reserved.
2// **InsertLicense** code
3//----------------------------------------------------------------------------------
7
12//----------------------------------------------------------------------------------
13#pragma once
14
16#include <mlFieldAddOnBase.h>
17#include <DCMTree_Lib.h>
18
20
21class MultiFileVolumeList;
22
23//----------------------------------------------------------------------------------
25//----------------------------------------------------------------------------------
27{
28public:
31
33 void addFields() override;
34
37
40
42 virtual std::string checkConsistency() const;
43
45 virtual void resetFields();
46
48 virtual std::string updateResultFields(DCMTree::Const_TreePtr dcmTree,
50
52 inline StringField &getRelatedSequencesSourceConfigFld() const { return *_relatedSequencesSourceConfigFld; }
53 inline BoolField &getEnableRelatedVolumesFld() const { return *_enableRelatedVolumesFld; }
54 inline IntField &getFirstVolumeIndexDerivedFromFld() const { return *_firstVolumeIndexDerivedFromFld; }
55 inline StringField &getVolumeIndexesDerivedFromFld() const { return *_volumeIndexesDerivedFromFld; }
56 inline IntField &getFirstSharedFrameOfReferenceVolumeIndexFld() const { return *_firstSharedFrameOfReferenceVolumeIndexFld; }
57 inline StringField &getSharedFrameOfReferenceVolumeIndexesFld() const { return *_sharedFrameOfReferenceVolumeIndexesFld; }
58 inline IntField &getFirstRelatedVolumeIndexFld() const { return *_firstRelatedVolumeIndexFld; }
59 inline StringField &getRelatedVolumeIndexesFld() const { return *_relatedVolumeIndexesFld; }
61
62protected:
63
64 // The managed fields.
65
67 BoolField *_enableRelatedVolumesFld = nullptr;
68
84 StringField *_relatedSequencesSourceConfigFld = nullptr;
85
87 IntField *_firstVolumeIndexDerivedFromFld = nullptr;
88
90 StringField *_volumeIndexesDerivedFromFld = nullptr;
91
92
95 IntField *_firstSharedFrameOfReferenceVolumeIndexFld = nullptr;
96
99 StringField *_sharedFrameOfReferenceVolumeIndexesFld = nullptr;
100
101
103 IntField *_firstRelatedVolumeIndexFld = nullptr;
104
106 StringField *_relatedVolumeIndexesFld = nullptr;
107};
108
110
Project global and OS specific declarations.
#define MLDIRECTDICOMIMPORTOUTPUTS_EXPORT
DLL export macro definition.
Field to encapsulate a boolean value.
Definition mlFields.h:58
Abstract base class for field interfaces to be added to other ML module classes.
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.
Definition mlField.h:73
Field to encapsulate an integer value.
Definition mlFields.h:126
Class managing a list of MultiFileVolume instances for the DirectDicomImport module; taking ownership...
Class managing fields fields to show and reference other volumes in a MultiFileVolumeList.
StringField & getSharedFrameOfReferenceVolumeIndexesFld() const
StringField & getRelatedSequencesSourceConfigFld() const
Provide direct access to the fields; see corresponding fields for comments.
RelatedDicomVolumeFieldAddOn(FieldContainer &fieldContainerRef)
Constructor, setting the reference of the FieldContainer managing the fields.
FieldAddOnBase::FieldChangeState handleFieldChanges(Field *field) override
Handle field notifications.
virtual void resetFields()
Sets field to default state.
virtual std::string updateResultFields(DCMTree::Const_TreePtr dcmTree, MultiFileVolumeList *volList)
Update the field state to new values of dcmTree and volList; if any of them is nullptr then resetFiel...
void addFields() override
Add fields to field container of module.
virtual std::string checkConsistency() const
Checks for invalid parameters; return textual description on error, or empty string on success.
void handleFieldActivationChanges() override
Do the activateAttachment-like stuff in this method.
Field to encapsulate a string value.
Definition mlFields.h:610
Header file of the abstract base class FieldAddOnBase managing fields independently of an ML Module.
Target mlrange_cast(Source arg)
Generic version of checked ML casts.
boost::shared_ptr< const Tree > Const_TreePtr
Definition DCMTree_Lib.h:73