26class CSOVoxelSetGroup;
55 int numCSOVoxelSet()
const {
return static_cast<int>(_csoVoxelSets.size()); }
113 std::vector<CSOVoxelSet*> _csoVoxelSets;
115 std::vector<CSOVoxelSetGroup*> _csoVoxelSetGroups;
123 void _loadVersion(
TreeNode* parent,
int version);
#define MLCSO_EXPORT
Defines export symbols for classes, so they can be used in other DLLs.
Class representing general ML objects that support import/export via strings (setPersistentState() an...
A CSOList comprises a number of CSOs and CSOGroups and is the central object for contour segmentation...
CSOVoxelSetList()
Standard constructor.
void addOrReplaceCSOVoxelSetWithId(int id, const CSOVoxelSet &other)
Adds or replaces an existing CSOVoxelSet with the specified ID in this list.
CSOVoxelSet * addCSOVoxelSet()
Adds and returns a new CSOVoxelSet.
void setVoxelToWorldMatrix(const Matrix4 &voxelToWorldMatrix)
Sets the voxelToWorldMatrix.
int numCSOVoxelSetGroup() const
Returns the number of CSOVoxelSetGroups.
void setSubImageBox(const SubImageBox &subImageBox)
Sets the SubImageBox.
void setupInternalStructureAsCSOList(CSOList *csoList, PagedImage *image=nullptr)
Establishes the internal structure as the specified CSOList.
void removeCSOVoxelSetWithId(int id)
Removes a CSOVoxelSet with a specifed ID.
CSOVoxelSetGroup * addCSOVoxelSetGroup()
Adds and returns a new CSOVoxelSetGroup.
void setupInternalStructureAsImage(const PagedImage *image)
Establishes the internal structure fitting to the specified image.
const SubImageBox & getImageBox() const
Returns the image box (the box is empty if no valid PagedImage was available).
int getMaxTimepointIndex() const
Computes and returns the maximum time point index.
int numCSOVoxelSet() const
Returns the number of CSOVoxelSets.
bool isInsideImage(const Vector3 &position)
Returns whether a specified position is inside the association image.
void destroy()
Deletes internal structures.
~CSOVoxelSetList() override
Standard destructor.
MLdouble getMinVoxelValue() const
Computes and returns the minimum voxel value.
CSOVoxelSetGroup * csoVoxelSetGroupWithId(int id)
Returns the pointer to a CSOVoxelSetGroup with a specified ID. The nullptr is returned if the CSOVoxe...
MLdouble getMaxVoxelValue() const
Computes and returns the maximum voxel value.
CSOVoxelSet * csoVoxelSetWithId(int id)
Returns the pointer to a CSOVoxelSet with a specified ID. The nullptr is returned if the voxel set do...
CSOVoxelSet * csoVoxelSetAt(size_t index) const
Returns the pointer to a CSOVoxelSet at a specified index.
void readStateFromTree(TreeNode *parent) override
Implements import functionality (as used by the LoadBase module).
CSOVoxelSetGroup * csoVoxelSetGroupAt(size_t index) const
Returns the pointer to a CSOVoxelSetGroup at a specified index.
void addStateToTree(TreeNode *parent) const override
ML_SET_ADDSTATE_VERSION(2)
Matrix4 getVoxelToWorldMatrix() const
Returns the image matrix if a valid PagedImage was set. Otherwise, it returns the identity matrix.
The CSOVoxelSet represents a contour segmentation object in discrete voxel coordinates.
The class PagedImage, representing a fragmented image that manages properties and data of an image lo...
The class TreeNode is the abstract base class for the import/export of ML objects.
#define ML_CLASS_HEADER(className)
Same like ML_CLASS_HEADER_EXPORTED with a non-existing export symbol.