#define MLCSO_EXPORT
Defines export symbols for classes, so they can be used in other DLLs.
Field to encapsulate a pointer to an ML base object.
Field to encapsulate a boolean value.
Base class for CSOModules.
ML_MODULE_CLASS_HEADER(CSOBaseModule)
The CSOBoundingBox defines an axis parallel bounding box with double precision.
Base class for modules that convert CSOs to voxel images.
NotifyField * _clearFld
If pressed the output image is invalidated and internal data is cleared.
StringField * _voxelBoundingBoxStringFld
A string representing the starting and the ending points (in 6D) of the voxel bounding box.
BoolField * _listenInteractionNotificationsFld
Shall the module listen to interaction notifications?
Vector3Field * _endWorldBoundingBoxFld
End of the world bounding box.
Vector3Field * _endVoxelBoundingBoxFld
End of the voxel bounding box.
bool _outputImageCanStayValidIfCSOChanged
If set to true, the output image can stay valid even if the input CSO has changed.
virtual void _calcOutSubImageMinMaxValue(double &minValue, double &maxValue, MLDataType &dType)
Calculates the minimum and the maximum output image values, and the data type.
void activateAttachments() override
Initialize module after loading.
FloatField * _backgroundValueFld
The background image value.
virtual void _clear()
Clears internal data and invalidates the output image.
bool _isInNotificationCB
Locking variable for the observer mechanism.
void handleNotification(Field *field) override
Called when input changes.
BoolField * _listenInteractionFinishedFld
Shall the module listen to finished interaction notifications?
CSOList * _inCSOList
The input CSOList (the original one).
void _setBoundingBoxFields(const CSOBoundingBox &voxelBB, const CSOBoundingBox &worldBB)
Sets the given vectors as bounding box fields to the GUI.
BoolField * _copyInputImageFld
Shall the input image be copied?
bool _canProduceOutputImage
Can the module produce a valid output image?
CSOConvertor(int numInImages=1, int numOutImages=1)
Standard constructor.
static void _csoListNotifcationCB(void *userData, int notificationFlag)
Can be called from anywhere from within the network.
bool _hasValidVoxelData
Is the interpolation compound up to date?
Vector3Field * _startVoxelBoundingBoxFld
Start of the voxel bounding box.
~CSOConvertor() override
Standard destructor.
BoolField * _useAlwaysForegroundValueOfModuleFld
Shall the module always use the voxel write value of its GUI?
virtual void _process()
Triggers the computation of the preprocessing.
FloatField * _foregroundValueFld
The foreground (object) image value.
BaseField * _inCSOListFld
The input CSOList (which is to be interpolated).
void calculateOutputImageProperties(int outputIndex, PagedImage *outputImage) override
Sets the properties of the output image.
BoolField * _useImageValuesFld
Shall the image's values be used?
bool _shouldAugmentBoundingBoxZ
Should the bounding box be augmented in z-direction by 1?
BoolField * _fillSurfaceFld
Shall the interpolated surface be filled?
IntField * _boundingBoxMarginFld
The margin for the bounding box. Default is 0 (no margin).
Vector3Field * _startWorldBoundingBoxFld
Start of the world bounding box.
A CSOList comprises a number of CSOs and CSOGroups and is the central object for contour segmentation...
Base class for all fields used in the ML.
Field to encapsulate a float value.
Field to encapsulate an integer value.
Field without value for notifications.
The class PagedImage, representing a fragmented image that manages properties and data of an image lo...
Field to encapsulate a string value.
Field to encapsulate a vector of three double values.
MLint32 MLDataType
MLDataType.