MeVisLab Toolbox Reference
CSOManager.h
Go to the documentation of this file.
1/*************************************************************************************
2**
3** Copyright 2007, MeVis Medical Solutions AG
4**
5** The user may use this file in accordance with the license agreement provided with
6** the Software or, alternatively, in accordance with the terms contained in a
7** written agreement between the user and MeVis Medical Solutions AG.
8**
9** For further information use the contact form at https://www.mevislab.de/contact
10**
11**************************************************************************************/
12
13
16
17#pragma once
18
19#include "../CSOList.h"
20
23
24
26
28
33{
34
35public:
36
39
42
47
48
50 inline int getSelectionPathPointColoringMode() { return _selectionPathPointColoringModeFld->getEnumValue(); }
52 inline int getSelectionPathPointWidthMode() { return _selectionPathPointWidthModeFld->getEnumValue(); }
57
59 Vector3 getSelectedPathPointsFixedColor() const { return _selectionFixedPathPointColorFld->getVector3Value(); }
61 float getSelectedPathPointsBrightenValue() const { return _selectionBrightenPathPointColorFld->getFloatValue(); }
63 float getSelectedPathPointsFixedLineWidth() const { return _selectionFixedPathPointWidthFld->getFloatValue(); }
65 float getSelectedPathPointsWidenValue() const { return _selectionWidenPathPointWidthFld->getFloatValue(); }
66
68 Vector3 getSelectedSeedPointFixedColor() const { return _selectedSeedPointFixedColorFld->getVector3Value(); }
70 float getSelectedSeedPointBrightenValue() const { return _selectedSeedPointBrightenColorFld->getFloatValue(); }
72 float getSelectedSeedPointFixedSize() const { return _selectedSeedPointSizeFld->getFloatValue(); }
74 float getSelectedSeedPointEnlargeValue() const { return _selectedSeedPointEnlargeSizeFld->getFloatValue(); }
75
77 inline int getSelectedSeedPointColoringMode() { return _selectedSeedPointColoringModeFld->getEnumValue(); }
79 inline int getSelectedSeedPointSizeMode() { return _selectedSeedPointSizeModeFld->getEnumValue(); }
84
86
88 std::string getCSODefaultLabel();
89
91 inline std::string getCSODefaultDescription() const { return _csoDefaultDescriptionFld->getStringValue(); }
93 inline bool getCSODefaultShowState() const { return _csoDefaultShowStateFld->getBoolValue(); }
95 inline bool getCSODefaultVoxelizeState() const { return _csoDefaultVoxelizeStateFld->getBoolValue(); }
97 inline bool getCSODefaultEditableState() const { return _csoDefaultEditableStateFld->getBoolValue(); }
98
100
102 std::string getGroupDefaultLabel();
103
105 inline std::string getGroupDefaultDescription() const { return _groupDefaultDescriptionFld->getStringValue(); }
107 inline bool getGroupDefaultUseTimePointIndex() const { return _groupDefaultUseTimePointIndexFld->getBoolValue(); }
109 inline int getGroupDefaultTimePointIndex() const { return static_cast<int>(_groupDefaultTimePointIndexFld->getIntValue()); }
111 inline bool getGroupDefaultUseShowState() const { return _groupDefaultUseShowStateFld->getBoolValue(); }
113 inline bool getGroupDefaultShowState() const { return _groupDefaultShowStateFld->getBoolValue(); }
115 inline bool getGroupDefaultUseVoxelizeState() const { return _groupDefaultUseVoxelizeStateFld->getBoolValue(); }
117 inline bool getGroupDefaultVoxelizeState() const { return _groupDefaultVoxelizeStateFld->getBoolValue(); }
119 inline bool getGroupDefaultUseEditableState() const { return _groupDefaultUseEditableStateFld->getBoolValue(); }
121 inline bool getGroupDefaultEditableState() const { return _groupDefaultEditableStateFld->getBoolValue(); }
122
124 inline bool getGroupDefaultUsePathPointStyle() const { return _groupDefaultUsePathPointStyleFld->getBoolValue(); }
125 inline CSOPathPointsStyle getGroupDefaultPathPointStyle() const { return static_cast<CSOPathPointsStyle>(_groupDefaultPathPointStyleFld->getEnumValue()); }
127 inline bool getGroupDefaultUsePathPointWidth() const { return _groupDefaultUsePathPointWidthFld->getBoolValue(); }
128 inline float getGroupDefaultPathPointWidth() const { return _groupDefaultPathPointWidthFld->getFloatValue(); }
130 inline bool getGroupDefaultUsePathPointColor() const { return _groupDefaultUsePathPointColorFld->getBoolValue(); }
131 inline Vector3 getGroupDefaultPathPointColor() const { return _groupDefaultPathPointColorFld->getVector3Value(); }
133 inline bool getGroupDefaultUsePathPointAlpha() const { return _groupDefaultUsePathPointAlphaFld->getBoolValue(); }
134 inline float getGroupDefaultPathPointAlpha() const { return _groupDefaultPathPointAlphaFld->getFloatValue(); }
135
137 inline bool getGroupDefaultUseSeedPointStyle() const { return _groupDefaultUseSeedPointStyleFld->getBoolValue(); }
138 inline int getGroupDefaultSeedPointStyle() const { return _groupDefaultSeedPointStyleFld->getEnumValue(); }
140 inline bool getGroupDefaultUseSeedPointSize() const { return _groupDefaultUseSeedPointSizeFld->getBoolValue(); }
141 inline float getGroupDefaultSeedPointSize() const { return _groupDefaultSeedPointSizeFld->getFloatValue(); }
143 inline bool getGroupDefaultUseSeedPointColor() const { return _groupDefaultUseSeedPointColorFld->getBoolValue(); }
144 inline Vector3 getGroupDefaultSeedPointColor() const { return _groupDefaultSeedPointColorFld->getVector3Value(); }
146 inline bool getGroupDefaultUseSeedPointAlpha() const { return _groupDefaultUseSeedPointAlphaFld->getBoolValue(); }
147 inline float getGroupDefaultSeedPointAlpha() const { return _groupDefaultSeedPointAlphaFld->getFloatValue(); }
148
150 inline bool getGroupDefaultUseVoxelWriteMode() const { return _groupDefaultUseVoxelWriteModeFld->getBoolValue(); }
151 inline int getGroupDefaultVoxelWriteMode() const { return _groupDefaultVoxelWriteModeFld->getEnumValue(); }
153 inline bool getGroupDefaultUseVoxelWriteValue() const { return _groupDefaultUseVoxelWriteValueFld->getBoolValue(); }
154 inline float getGroupDefaultVoxelWriteValue() const { return _groupDefaultVoxelWriteValueFld->getFloatValue(); }
155
156
158 inline int getGroupDefaultNumMaximumCSOs() const { return static_cast<int>(_groupDefaultNumMaximumCSOsFld->getIntValue()); }
160 inline CSOGroupOverflowHandling getGroupDefaultOverflowHandling() const { return static_cast<CSOGroupOverflowHandling>(_groupDefaultOverflowHandlingFld->getEnumValue()); }
162 inline CSORemoveHandling getGroupDefaultRemoveFromGroupHandling() const { return static_cast<CSORemoveHandling>(_groupDefaultRemoveFromGroupHandlingFld->getEnumValue()); }
163 inline CSORemoveHandling getGroupDefaultDeleteGroupCSOHandling() const { return static_cast<CSORemoveHandling>(_groupDefaultDeleteGroupCSOHandlingFld->getEnumValue()); }
165 inline CSORemoveEmptyGroupHandling getDefaultRemoveEmptyGroupHandling() const { return static_cast<CSORemoveEmptyGroupHandling>(_listDefaultRemoveEmptyGroupHandlingFld->getEnumValue()); }
166
167protected:
168
170 ~CSOManager() override;
171
173 void activateAttachments() override;
174
177
180
181private:
182
183 /* FIELDS */
184
186 BaseField* _outCSOListFld;
188 BaseField* _inCSOListFld;
189
191 BaseField* _inUndoContextFld;
192
194 BoolField* _workDirectlyOnInputCSOListFld;
196 NotifyField* _copyInputCSOListFld;
197
199 StringField* _csoDisplayTreeFld;
201 StringField* _groupDisplayTreeFld;
203 BoolField* _shouldUpdateCsoDisplayTreeFld;
205 BoolField* _shouldUpdateGroupDisplayTreeFld;
206
208 StringField* _csoSelectedItemsFld;
210 StringField* _groupSelectedItemsFld;
212 StringField* _groupSelectedCSOItemsFld;
214 StringField* _csoSelectedGroupItemsFld;
215
217 BoolField* _enableUndoRedoFld;
219 NotifyField* _triggerUndoFld;
221 NotifyField* _triggerRedoFld;
223 IntField* _numUndosFld;
225 IntField* _numRedosFld;
227 IntField* _undoStackLimitFld;
228
230 NotifyField* _addCSOtoGroupFld;
232 NotifyField* _breakCSOFromGroupFld;
233
235 NotifyField* _removeAllCSOsAndGroupsFld;
236
238 NotifyField* _csoRemoveSelectedFld;
240 NotifyField* _csoCopySelectedFld;
242 NotifyField* _csoPasteFld;
243
245 NotifyField* _groupCreateNewFld;
247 BoolField* _selectLastCreatedGroupFld;
249 NotifyField* _groupRemoveSelectedFld;
251 NotifyField* _groupCopySelectedFld;
253 NotifyField* _groupPasteFld;
254
256 TypedEnumField<CSOSelectionColoring>* _selectionPathPointColoringModeFld;
258 TypedEnumField<CSOSelectionLineWidth>* _selectionPathPointWidthModeFld;
260 FloatField* _selectionBrightenPathPointColorFld;
262 ColorField* _selectionFixedPathPointColorFld;
264 FloatField* _selectionWidenPathPointWidthFld;
266 FloatField* _selectionFixedPathPointWidthFld;
267
269 TypedEnumField<CSOSelectedSeedPointColoring>* _selectedSeedPointColoringModeFld;
271 TypedEnumField<CSOSelectedSeedPointSize>* _selectedSeedPointSizeModeFld;
273 FloatField* _selectedSeedPointBrightenColorFld;
275 ColorField* _selectedSeedPointFixedColorFld;
277 FloatField* _selectedSeedPointEnlargeSizeFld;
279 FloatField* _selectedSeedPointSizeFld;
280
282 IntField* _csoSingleIdFld;
284 StringField* _csoSingleLabelFld;
286 StringField* _csoSingleDescriptionFld;
287
289 IntField* _csoSingleTimePointIndexFld;
291 BoolField* _csoSingleShowStateFld;
293 BoolField* _csoSingleVoxelizeStateFld;
295 BoolField* _csoSingleEditableStateFld;
296
298 TypedEnumField<CSOPathPointsStyle>* _csoSinglePathPointStyleFld;
300 FloatField* _csoSinglePathPointWidthFld;
302 ColorField* _csoSinglePathPointColorFld;
304 FloatField* _csoSinglePathPointAlphaFld;
305
307 TypedEnumField<CSOSeedPointStyle>* _csoSingleSeedPointStyleFld;
309 FloatField* _csoSingleSeedPointSizeFld;
311 ColorField* _csoSingleSeedPointColorFld;
313 FloatField* _csoSingleSeedPointAlphaFld;
314
316 TypedEnumField<CSOVoxelWriteModes>* _csoSingleVoxelWriteModeFld;
318 FloatField* _csoSingleVoxelWriteValueFld;
319
321 StringField* _csoDefaultLabelFld;
323 BoolField* _csoDefaultLabelAddUniqueIdFld;
325 StringField* _csoDefaultLabelUniqueIdFormatFld;
327 BoolField* _csoDefaultLabelAddUniqueIdAlwaysFld;
328
330 StringField* _csoDefaultDescriptionFld;
332 BoolField* _csoDefaultShowStateFld;
334 BoolField* _csoDefaultVoxelizeStateFld;
336 BoolField* _csoDefaultEditableStateFld;
337
339 NotifyField* _csoSingleApplyFld;
340
341
343 IntField* _groupSingleIdFld;
345 StringField* _groupSingleLabelFld;
347 StringField* _groupSingleDescriptionFld;
348
350 BoolField* _groupSingleUseTimePointIndexFld;
352 IntField* _groupSingleTimePointIndexFld;
354 BoolField* _groupSingleUseShowStateFld;
356 BoolField* _groupSingleShowStateFld;
358 BoolField* _groupSingleUseVoxelizeStateFld;
360 BoolField* _groupSingleVoxelizeStateFld;
362 BoolField* _groupSingleUseEditableStateFld;
364 BoolField* _groupSingleEditableStateFld;
365
366
368 BoolField* _groupSingleUsePathPointStyleFld;
369 TypedEnumField<CSOPathPointsStyle>* _groupSinglePathPointStyleFld;
371 FloatField* _groupSinglePathPointWidthFld;
372 BoolField* _groupSingleUsePathPointWidthFld;
374 BoolField* _groupSingleUsePathPointColorFld;
375 ColorField* _groupSinglePathPointColorFld;
377 BoolField* _groupSingleUsePathPointAlphaFld;
378 FloatField* _groupSinglePathPointAlphaFld;
379
380
381
383 BoolField* _groupSingleUseSeedPointStyleFld;
384 TypedEnumField<CSOSeedPointStyle>* _groupSingleSeedPointStyleFld;
386 BoolField* _groupSingleUseSeedPointSizeFld;
387 FloatField* _groupSingleSeedPointSizeFld;
389 BoolField* _groupSingleUseSeedPointColorFld;
390 ColorField* _groupSingleSeedPointColorFld;
392 BoolField* _groupSingleUseSeedPointAlphaFld;
393 FloatField* _groupSingleSeedPointAlphaFld;
394
396 BoolField* _groupSingleUseVoxelWriteModeFld;
398 TypedEnumField<CSOVoxelWriteModes>* _groupSingleVoxelWriteModeFld;
400 BoolField* _groupSingleUseVoxelWriteValueFld;
401 FloatField* _groupSingleVoxelWriteValueFld;
402
404 IntField* _groupSingleNumMaximumCSOsFld;
406 TypedEnumField<CSOGroupOverflowHandling>* _groupSingleOverflowHandlingFld;
408 TypedEnumField<CSORemoveHandling>* _groupSingleRemoveFromGroupHandlingFld;
410 TypedEnumField<CSORemoveHandling>* _groupSingleDeleteGroupCSOHandlingFld;
411
413 StringField* _groupDefaultLabelFld;
415 BoolField* _groupDefaultLabelAddUniqueIdFld;
417 StringField* _groupDefaultLabelUniqueIdFormatFld;
419 BoolField* _groupDefaultLabelAddUniqueIdAlwaysFld;
420
422 StringField* _groupDefaultDescriptionFld;
423
425 BoolField* _groupDefaultUseTimePointIndexFld;
427 IntField* _groupDefaultTimePointIndexFld;
429 BoolField* _groupDefaultUseShowStateFld;
431 BoolField* _groupDefaultShowStateFld;
433 BoolField* _groupDefaultUseVoxelizeStateFld;
435 BoolField* _groupDefaultVoxelizeStateFld;
437 BoolField* _groupDefaultUseEditableStateFld;
439 BoolField* _groupDefaultEditableStateFld;
440
442 BoolField* _groupDefaultUsePathPointStyleFld;
443 TypedEnumField<CSOPathPointsStyle>* _groupDefaultPathPointStyleFld;
445 BoolField* _groupDefaultUsePathPointWidthFld;
446 FloatField* _groupDefaultPathPointWidthFld;
448 BoolField* _groupDefaultUsePathPointColorFld;
449 ColorField* _groupDefaultPathPointColorFld;
451 BoolField* _groupDefaultUsePathPointAlphaFld;
452 FloatField* _groupDefaultPathPointAlphaFld;
453
455 BoolField* _groupDefaultUseSeedPointSizeFld;
456 FloatField* _groupDefaultSeedPointSizeFld;
458 BoolField* _groupDefaultUseSeedPointStyleFld;
459 TypedEnumField<CSOSeedPointStyle>* _groupDefaultSeedPointStyleFld;
461 BoolField* _groupDefaultUseSeedPointColorFld;
462 ColorField* _groupDefaultSeedPointColorFld;
464 BoolField* _groupDefaultUseSeedPointAlphaFld;
465 FloatField* _groupDefaultSeedPointAlphaFld;
466
468 BoolField* _groupDefaultUseVoxelWriteModeFld;
470 TypedEnumField<CSOVoxelWriteModes>* _groupDefaultVoxelWriteModeFld;
472 BoolField* _groupDefaultUseVoxelWriteValueFld;
473 FloatField* _groupDefaultVoxelWriteValueFld;
474
476 IntField* _groupDefaultNumMaximumCSOsFld;
478 TypedEnumField<CSOGroupOverflowHandling>* _groupDefaultOverflowHandlingFld;
480 TypedEnumField<CSORemoveHandling>* _groupDefaultRemoveFromGroupHandlingFld;
481 TypedEnumField<CSORemoveHandling>* _groupDefaultDeleteGroupCSOHandlingFld;
483 NotifyField* _groupSingleApplyFld;
484
486
488 TypedEnumField<CSORemoveEmptyGroupHandling>* _listSingleRemoveEmptyGroupHandlingFld;
490 TypedEnumField<CSORemoveEmptyGroupHandling>* _listDefaultRemoveEmptyGroupHandlingFld;
491
493
495 BoolField* _useSelectionCSONotificationFld;
497 BoolField* _useSelectionGroupNotificationFld;
499 BoolField* _useFinishedCSONotificationFld;
501 BoolField* _useFinishedGroupNotificationFld;
503 BoolField* _useCSOMovedNotificationFld;
505 BoolField* _useRepaintNotificationFld;
507 BoolField* _useInteractionInitNotificationFld;
509 BoolField* _useNewCSOStartedNotificationFld;
510
512 NotifyField* _notifyOnSelectionCSOFld;
514 NotifyField* _notifyOnSelectionGroupFld;
516 NotifyField* _notifyOnFinishedCSOFld;
518 NotifyField* _notifyOnFinishedGroupFld;
520 NotifyField* _notifyOnCSOMovedFld;
522 NotifyField* _notifyOnRepaintFld;
524 NotifyField* _notifyOnInteractionInitFld;
526 NotifyField* _notifyOnStartNewCSOFld;
527
529
531 BoolField* _enableSelectionNotificationFld;
533 BoolField* _enableFinishedNotificationFld;
535 BoolField* _enableCSOMovedNotificationFld;
537 BoolField* _enableRepaintNotificationFld;
538
540 NotifyField* _triggerSelectionNotificationFld;
542 NotifyField* _triggerFinishedNotificationFld;
544 NotifyField* _triggerCSOMovedNotificationFld;
546 NotifyField* _triggerRepaintNotificationFld;
548 BoolField* _outputApplicationEventsDebugFld;
549
551
552 /* MEMBER VARIABLES */
553
556 struct GroupCSOPair {
557 CSO* cso;
558 CSOGroup* group;
559 };
560
562 CSOListPtr _outCSOList;
564 CSOListPtr _inCSOList;
565
567 bool _isOutputCSOListOwner;
569 bool _isWorkingDirectlyOnInputCSOList;
570
572 std::vector<GroupCSOPair>_csoSelectedGroups;
574 std::vector<GroupCSOPair>_groupSelectedCSOs;
575
577 std::vector<CSO*>_copiedCSOs;
579 std::vector<CSOGroup*>_copiedGroups;
580
582 bool _isInNotificationCB;
583
585 bool _useSelectionCSONotification;
587 bool _useSelectionGroupNotification;
589 bool _useFinishedCSONotification;
591 bool _useFinishedGroupNotification;
593 bool _useCSOMovedNotification;
595 bool _useRepaintNotification;
597 bool _useInteractionInitNotification;
599 bool _useNewCSOStartedNotification;
600
602 bool _selectedCSOItemsChangedFromField;
604 bool _selectedCSOGroupItemsChangedFromField;
605
607 bool _isNotifyingItself;
608
609 /* METHODS */
610
612 static void _csoListNotificationCB(void* userData, int notificationFlag);
613
615 void _updateManagerFields();
616
618 void _updateCSOManagerFields();
620 void _updateGroupManagerFields();
621
623 void _updateInformationFields();
624
627 bool _parseCSOSelectedItemsString();
630 bool _parseGroupSelectedItemsString();
631
633 void _parseStringToVector(std::string toParse, std::vector<int>& parsedIds);
634
636 void _parseCSOGroupToVector();
638 void _parseGroupCSOToVector();
639
641 void _parsePair(std::string toParse, int& firstId, int& secondId);
643 void _addPairToVector(int csoId, int groupId, std::vector<GroupCSOPair>& gcPairVec);
644
645
648 void _openUndoRedoGroup(const std::string& description);
651 void _closeUndoRedoGroup();
652
654 void _createCSOString();
656 void _createGroupString();
657
659 void _updateCSOInformationFields();
661 void _updateGroupInformationFields();
662
664 void _copySelectedCSOs();
666 void _copySelectedGroups();
668 void _pasteCopiedCSOs();
670 void _pasteCopiedGroups();
671
673 void _addSelectedCSOtoGroup();
675 void _breakSelectedCSOFromGroup();
676
678 void _removeCSOs();
680 void _removeGroups();
681
683 void _createGroup();
684
685 static void baseEventCB(void* userData, BaseEvent* event);
686
687 int _eventGroupCounter;
688
690};
691
693
#define MLCSO_EXPORT
Defines export symbols for classes, so they can be used in other DLLs.
Definition MLCSOSystem.h:23
BaseEvent is the base class for all events emitted from EventSourceBase.
Field to encapsulate a pointer to an ML base object.
Definition mlFields.h:797
Field to encapsulate a boolean value.
Definition mlFields.h:58
A CSOGroup comprises a number of CSOs, which themselves can be in a number of different CSOGroups.
Definition CSOGroup.h:38
The CSOManager allows for storing and iterating CSOs, and implements an undo/redo mechanism.
Definition CSOManager.h:33
void getSelectedSeedPointColor(Vector3 &origColor)
Returns the selected seed point color (on base of the given color if in 'brighten' mode).
bool getGroupDefaultShowState() const
Returns the default show state for CSOGroups.
Definition CSOManager.h:113
float getSelectedPathPointsBrightenValue() const
Returns the brighten value for selected path points.
Definition CSOManager.h:61
bool getGroupDefaultUseVoxelWriteValue() const
Returns the default voxel write value for CSOGroups.
Definition CSOManager.h:153
float getSelectedSeedPointBrightenValue() const
Returns the brighten value for selected seed points.
Definition CSOManager.h:70
Vector3 getSelectedSeedPointFixedColor() const
Returns the fixed color for selected seed points.
Definition CSOManager.h:68
float getSelectedSeedPointEnlargeValue() const
Returns the value for selected seed points.
Definition CSOManager.h:74
float getGroupDefaultPathPointAlpha() const
Definition CSOManager.h:134
CSOGroupOverflowHandling getGroupDefaultOverflowHandling() const
Returns the default overflow handling mode for CSOGroups.
Definition CSOManager.h:160
int getGroupDefaultTimePointIndex() const
Returns the default time point index for CSOGroups.
Definition CSOManager.h:109
void activateAttachments() override
Initialize module after loading.
CSORemoveHandling getGroupDefaultRemoveFromGroupHandling() const
Returns the default remove from group handling mode for CSOGroups.
Definition CSOManager.h:162
bool getGroupDefaultUsePathPointStyle() const
Returns the default line style for CSOGroups.
Definition CSOManager.h:124
CSORemoveHandling getGroupDefaultDeleteGroupCSOHandling() const
Definition CSOManager.h:163
bool getCSODefaultEditableState() const
Returns the default editable state for CSOs.
Definition CSOManager.h:97
bool getGroupDefaultUsePathPointAlpha() const
Returns the default alpha value for CSOGroups.
Definition CSOManager.h:133
std::string getGroupDefaultDescription() const
Returns the default description for CSOGroups.
Definition CSOManager.h:105
int getGroupDefaultVoxelWriteMode() const
Definition CSOManager.h:151
Vector3 getGroupDefaultSeedPointColor() const
Definition CSOManager.h:144
std::string getGroupDefaultLabel()
Returns the default label for CSOGroups.
std::string getCSODefaultDescription() const
Returns the default description for CSOs.
Definition CSOManager.h:91
bool getGroupDefaultUseSeedPointSize() const
Returns the default marker size for CSOGroups.
Definition CSOManager.h:140
float getSelectedPathPointsWidenValue() const
Returns the widen value for selected path points.
Definition CSOManager.h:65
bool getGroupDefaultUseSeedPointStyle() const
Returns the default marker mode for CSOGroups.
Definition CSOManager.h:137
bool getGroupDefaultEditableState() const
Returns the default editable state for CSOGroups.
Definition CSOManager.h:121
Vector3 getSelectedPathPointsFixedColor() const
Returns the fixed color for selected path points without regarding the coloring mode.
Definition CSOManager.h:59
bool getCSODefaultShowState() const
Returns the default show state for CSOs.
Definition CSOManager.h:93
void handleNotification(Field *field) override
Called when input changes.
bool getCSODefaultVoxelizeState() const
Returns the default voxelize state for CSOs.
Definition CSOManager.h:95
int getGroupDefaultNumMaximumCSOs() const
Returns the default maximum number of CSOs for CSOGroups.
Definition CSOManager.h:158
bool getGroupDefaultUseSeedPointAlpha() const
Returns the default marker alpha value for CSOGroups.
Definition CSOManager.h:146
void updateGroupManager()
Updates the Group list view and the single Group fields.
void updateCSOManager()
Updates the CSO list view and the single CSO fields.
int getSelectedSeedPointSizeMode()
Returns the size mode for selected seed points (enlarge / fixed size).
Definition CSOManager.h:79
bool getGroupDefaultUseEditableState() const
Returns whether the member CSOs shall use the CSOGroup's editable state by default.
Definition CSOManager.h:119
CSORemoveEmptyGroupHandling getDefaultRemoveEmptyGroupHandling() const
Returns the default remove empty group handling mode for CSOLists.
Definition CSOManager.h:165
Vector3 getGroupDefaultPathPointColor() const
Definition CSOManager.h:131
void updateManager()
Updates the tree views and the single CSO/Group fields.
bool getGroupDefaultVoxelizeState() const
Returns the default voxelize state for CSOGroups.
Definition CSOManager.h:117
void getSelectionPathPointWidth(float &origLineWidth)
Returns the selection line width (on base of the given line width if in 'widen' mode).
~CSOManager() override
Standard destructor.
void setInternalVariables()
Sets internal state variables.
float getSelectedPathPointsFixedLineWidth() const
Returns the fixed line width value for selected path points.
Definition CSOManager.h:63
int getSelectionPathPointColoringMode()
Returns the coloring mode for selected CSOs (brighten / fixed color).
Definition CSOManager.h:50
bool getGroupDefaultUseShowState() const
Returns whether the member CSOs shall use the CSOGroup's show state by default.
Definition CSOManager.h:111
CSOPathPointsStyle getGroupDefaultPathPointStyle() const
Definition CSOManager.h:125
float getGroupDefaultVoxelWriteValue() const
Definition CSOManager.h:154
std::string getCSODefaultLabel()
Returns the default label for CSOs.
bool getGroupDefaultUseTimePointIndex() const
Returns whether the member CSOs shall use the CSOGroup's time point index by default.
Definition CSOManager.h:107
bool getGroupDefaultUsePathPointWidth() const
Returns the default line width for CSOGroups.
Definition CSOManager.h:127
bool getGroupDefaultUseVoxelizeState() const
Returns whether the member CSOs shall use the CSOGroup's voxelize state by default.
Definition CSOManager.h:115
bool getGroupDefaultUseSeedPointColor() const
Returns the default marker color for CSOGroups.
Definition CSOManager.h:143
int getSelectionPathPointWidthMode()
Returns the line width mode for selected CSOs (widen / fixed width).
Definition CSOManager.h:52
float getGroupDefaultSeedPointSize() const
Definition CSOManager.h:141
float getSelectedSeedPointFixedSize() const
Returns the fixed size value for selected seed points.
Definition CSOManager.h:72
int getSelectedSeedPointColoringMode()
Returns the coloring mode for selected seed points (brighten / fixed color).
Definition CSOManager.h:77
void getSelectionPathPointColor(Vector3 &origColor)
Returns the selection color (on base of the given color if in 'brighten' mode).
int getGroupDefaultSeedPointStyle() const
Definition CSOManager.h:138
CSOManager(int numInImages=0, int numOutImages=0)
Standard constructor.
bool getGroupDefaultUsePathPointColor() const
Returns the default color for CSOGroups.
Definition CSOManager.h:130
bool getGroupDefaultUseVoxelWriteMode() const
Returns the default voxel write mode for CSOGroups.
Definition CSOManager.h:150
float getGroupDefaultSeedPointAlpha() const
Definition CSOManager.h:147
void getSelectedSeedPointSize(float &origSize)
Returns the selected seed point size (on base of the given size if in 'enlarge' mode).
float getGroupDefaultPathPointWidth() const
Definition CSOManager.h:128
The CSO represents a contour segmentation object.
Definition CSO.h:44
Field to encapsulate a vector of 3 float values representing an (rgb) color with all properties of Ve...
Definition mlFields.h:1441
Base class for all fields used in the ML.
Definition mlField.h:73
Field to encapsulate a float value.
Definition mlFields.h:415
Field to encapsulate an integer value.
Definition mlFields.h:126
Base class for an image processing module of the ML.
Definition mlModule.h:151
Field without value for notifications.
Definition mlFields.h:659
Field to encapsulate a string value.
Definition mlFields.h:610
TypedEnumField is used to encapsulate a C++ enum value and work with a real enum value instead of int...
Definition mlFields.h:384
#define ML_MODULE_CLASS_HEADER(className)
Like ML_CLASS_HEADER for the usage of derived classes from Module.
Target mlrange_cast(Source arg)
Generic version of checked ML casts.
CSORemoveHandling
Enumeration for the removal handling of CSOs from group and if group is deleted.
CSOPathPointsStyle
Enumeration of line styles (order as StylePalette::LineStyle).
Definition CSODefines.h:42
CSORemoveEmptyGroupHandling
Enumeration for empty groups removal.
CSOGroupOverflowHandling
Enumeration for the group overflow handling modes.