| 
|   | CSO () | 
|   | Standard constructor. The unique id is initialized with 0.  
  | 
|   | 
|   | CSO (CSOList *csoList) | 
|   | Constructor takes a pointer to the CSOList this CSO is in; in this method, the unique id is set.  
  | 
|   | 
|   | CSO (const CSO &cso, CSOList *csoList=nullptr, unsigned int csoId=INVALID_CSO_ID) | 
|   | Copy constructor; the unique id is taken from the given CSOList but if the CSOList is NULL, the unique id of the copied CSO is 0.  
  | 
|   | 
| virtual  | ~CSO () | 
|   | Standard destructor.  
  | 
|   | 
| void  | reverseSeedPointOrder () | 
|   | Reverses the order of all seed points and clears all path points in between.  
  | 
|   | 
| void  | resortSeedPointsClockwise () | 
|   | 
| void  | storeInUndoManager () | 
|   | Stores the geometric information of the CSO in the UndoRedo manager.  
  | 
|   | 
| void  | storeVisualAttributesInUndoManager () | 
|   | 
| CSOManager *  | getManager () const | 
|   | 
| bool  | isSelected () const | 
|   | Returns whether this CSO is selected in its CSOList. If there is no enclosing CSOList, the method returns false.  
  | 
|   | 
| void  | setAttributesFrom (const CSO *const cso) | 
|   | Copies all attributes from the given CSO to this one.  
  | 
|   | 
| bool  | saveAttributes (std::ostream &outStream, bool useAscii=false) | 
|   | Save attributes to stream and returns whether the saving was successful.  
  | 
|   | 
| void  | loadAttributes (std::istream &inStream, short version, bool swapBytes, bool useAscii=false) | 
|   | Load attributes from stream.  
  | 
|   | 
| const CSOAttributes &  | getAttributes () const | 
|   | Get const access to all CSO attributes.  
  | 
|   | 
| CSOAttributes &  | getWritableAttributes () | 
|   | Get write access to all CSO attributes (NOTE: be careful, no events are emitted when changing the attributes).  
  | 
|   | 
 | 
| void  | applyTransformationMatrix (const Matrix4 &matrix) | 
|   | 
| void  | moveSeedPointsAndPathPoints (const Vector3 &offset, int timepoint) | 
|   | Moves all seed points and all path points by the given coordinates offset and sets it to the given timepoint.  
  | 
|   | 
| void  | moveSeedPointsAndPathPoints (double dx, double dy, double dz, int timepoint) | 
|   | Moves all seed points and all path points by the given coordinates offset and sets it to the given timepoint.  
  | 
|   | 
| void  | moveSeedPointsAndPathPoints (const Vector3 &offset) | 
|   | Moves all seed points and all path points by the given coordinates offset.  
  | 
|   | 
| void  | moveSeedPointsAndPathPoints (double dx, double dy, double dz) | 
|   | Moves all seed points and all path points by the given coordinates offset.  
  | 
|   | 
| void  | setAbsoluteMovementCommand (double fromX, double fromY, double fromZ, double toX, double toY, double toZ, int fromTimePointIndex, int toTimePointIndex) | 
|   | Sets the absolute movement for undo/redo.  
  | 
|   | 
| void  | moveSingleSeedPoint (CSOSeedPoint *sPoint, double dx, double dy, double dz) | 
|   | Moves a certain seed point by the given coordinate offset.  
  | 
|   | 
| void  | setAbsoluteSeedPointMovementCommand () | 
|   | Sets the absolute movement of a single seed point for undo/redo.  
  | 
|   | 
| void  | setSeedPointsAndPathPoints (const CSO *cso) | 
|   | Sets the seed points and the path point of the given CSO.  
  | 
|   | 
 | 
| CSOSeedPoint *  | appendSeedAndPathPointNoEvent () | 
|   | 
| CSOSeedPoint *  | appendSeedAndPathPointNoEvent (const Vector3 &position) | 
|   | Appends a seed point and a path point list to the end of the seed point list and returns a pointer to it.  
  | 
|   | 
| CSOSeedPoint *  | appendSeedAndPathPoint () | 
|   | Appends a seed point and a path point list to the end of the seed point list and returns a pointer to it.  
  | 
|   | 
| CSOSeedPoint *  | appendSeedAndPathPoint (const Vector3 &position) | 
|   | Appends a seed point and a path point list to the end of the seed point list and returns a pointer to it.  
  | 
|   | 
| void  | setSeedAndPathPoints (unsigned int numSeedPoints, bool isClosed=true) | 
|   | Generates the given number of seed points and path point lists between those.  
  | 
|   | 
| void  | setInitialSeedAndPathPointsNoEvent (unsigned int numSeedPoints, bool isClosed=true) | 
|   | See setSeedAndPathPoints, but faster because no events are emitted and no checks are done, an empty CSO is expected.  
  | 
|   | 
| CSOPathPoints *  | insertPathPointsEndStart () | 
|   | Inserts a CSOPathPoint between the ending and the starting seed points and returns a pointer to it.  
  | 
|   | 
| CSOPathPoints *  | insertPathPointsEndStartNoEvent () | 
|   | Inserts a CSOPathPoint between the ending and the starting seed points and returns a pointer to it.  
  | 
|   | 
| CSOSeedPoint *  | appendSeedPoint () | 
|   | Appends just a seed point to the internal list and returns a pointer to it.  
  | 
|   | 
| CSOPathPoints *  | appendPathPoints () | 
|   | Appends just a path point list the internal list and returns a pointer to it.  
  | 
|   | 
| void  | removeSeedPoint (CSOSeedPoint *sPoint) | 
|   | Removes the given seed point from this CSO.  
  | 
|   | 
| void  | removeAllSeedAndPathPoints () | 
|   | Removes all seed points and all path point lists from this CSO.  
  | 
|   | 
| CSOSeedPoint *  | insertSeedPointAt (CSOPathPoints *toBeSplitPath, const Vector3 &toInsertPos) | 
|   | Inserts a seed point into the given toBeSplitPath at the given position.  
  | 
|   | 
| void  | setInsertRemoveSeedPointCommand () | 
|   | Triggers the according undo/redo command to be put on the stack.  
  | 
|   | 
 | 
| CSOSeedPoint *  | getSeedPointAt (unsigned int index) const | 
|   | 
| CSOSeedPoint *  | getFirstSeedPoint () const | 
|   | Returns a pointer to the first seed point of this CSO.  
  | 
|   | 
| CSOSeedPoint *  | getLastSeedPoint () const | 
|   | Returns a pointer to the last seed point of this CSO.  
  | 
|   | 
| unsigned int  | numSeedPoints () const | 
|   | Returns the number of seed points.  
  | 
|   | 
| bool  | getSeedPointIndex (CSOSeedPoint *sPoint, unsigned int &index) const | 
|   | Sets the sIndex to the index of the given seed point and returns whether such a seed point exists.  
  | 
|   | 
| unsigned int  | numPathPointLists () const | 
|   | Returns the number of path point lists.  
  | 
|   | 
| void  | fillPathPointCoordinatesFlattened (std::vector< Vector3 > &pathPointCoords) const | 
|   | Fills up the given std::vector<Vector3> with all the path point coordinates in order.  
  | 
|   | 
| void  | fillPathPointCoordinatesFlattened (std::vector< Vector4 > &pathPointCoordsAndValues) const | 
|   | Fills up the given std::vector<Vector4> with all the path point coordinates and values in order.  
  | 
|   | 
| CSOPathPoints *  | getPathPointsAt (unsigned int index) const | 
|   | Returns the list of path points at a given position.  
  | 
|   | 
| unsigned int  | getTotalNumPathPoints () const | 
|   | Returns the total number of path points in this CSO; this number may differ from the number of path points obtained by a flattened positions vector.  
  | 
|   | 
| unsigned int  | getTotalNumUniquePathPoints () const | 
|   | Returns the total number of unique path points in this CSO; this number equals the number of path points obtained by a flattened positions vector.  
  | 
|   | 
| void  | swapPoints (CSO &other) | 
|   | Swaps the seed and path points of two cso. No events are emitted.  
  | 
|   | 
 | 
| void  | addSelectedSeedPoint (CSOSeedPoint *sPoint) | 
|   | 
| void  | setSelectedSeedPoint (CSOSeedPoint *sPoint) | 
|   | Sets the given seed point as being selected, and deselects all previously selected seed points.  
  | 
|   | 
| void  | setSeedPointSelectedAt (unsigned int index) | 
|   | Sets the seed point at the given index selected.  
  | 
|   | 
| bool  | isSelectedSeedPoint (CSOSeedPoint *sPoint) const | 
|   | Returns whether the given seed point is selected.  
  | 
|   | 
| void  | clearSelectedSeedPoints () | 
|   | Clears the list of selected seed points.  
  | 
|   | 
| unsigned int  | getNumSelectedSeedPoints () const | 
|   | Returns the number of selected seed points.  
  | 
|   | 
| CSOSeedPoint *  | getSelectedSeedPointAt (unsigned int index) const | 
|   | Returns a pointer to a selected seed point at the given index.  
  | 
|   | 
 | 
| bool  | addToGroup (CSOGroup &group, bool useUndoRedo=true) | 
|   | 
| void  | removeFromGroup (CSOGroup &group, bool useUndoRedo=true) | 
|   | Removes this CSO from the given group.  
  | 
|   | 
| bool  | isInGroup (const CSOGroup *group) const | 
|   | Returns whether this CSO is in the given Group.  
  | 
|   | 
| bool  | isInSameGroupsAs (CSO *cso) const | 
|   | 
| bool  | isInGroup (unsigned int groupId) const | 
|   | Returns whether this CSO is in the group with the given ID.  
  | 
|   | 
| unsigned int  | numGroups () const | 
|   | Returns the number of groups this CSO is in.  
  | 
|   | 
| CSOGroup *  | getGroupAt (unsigned int index) const | 
|   | Returns the group at the specified index. If the index is out of bounds, NULL is returned.  
  | 
|   | 
| unsigned int  | getGroupIdAt (unsigned int index) const | 
|   | Returns a group id at the specified index.  
  | 
|   | 
| void  | removeFromAllGroups () | 
|   | Removes this CSO from all its groups.  
  | 
|   | 
 | 
| void  | _addReferenceToGroup (const CSOGroup &group) | 
|   | 
| void  | _removeReferenceToGroup (const CSOGroup &group) | 
|   | Removes the given group from the internal list.  
  | 
|   | 
 | 
| void  | setType (const std::string &type) | 
|   | 
| const std::string &  | getType () const | 
|   | Returns the type of the CSO. This is set by the Processor, which generated this CSO.  
  | 
|   | 
| void  | setSubType (const std::string &subtype) | 
|   | Sets the subtype of the CSO. This is set by the Processor, which generates this CSO.  
  | 
|   | 
| const std::string &  | getSubType () const | 
|   | Returns the type of the CSO. This is set by the Processor, which generated this CSO.  
  | 
|   | 
| void  | setCreatorId (int id) | 
|   | Sets the creator ID of the CSO. This is set by the Processor, which generates this CSO.  
  | 
|   | 
| int  | getCreatorId () const | 
|   | Returns the creator ID of the CSO. This is set by the Processor, which generated this CSO.  
  | 
|   | 
 | 
| void  | setUserData (const std::string &name, Variant value) | 
|   | 
| Variant  | getUserData (const std::string &name) const | 
|   | Returns the user data under the given name or an invalid value if the entry does not exist.  
  | 
|   | 
| void  | getUserDataNames (std::vector< std::string > &names) const | 
|   | Fills the given vector with the keys/name under which user data are stored for this CSO.  
  | 
|   | 
| void  | removeUserData (const std::string &name) | 
|   | Removes a user data entry.  
  | 
|   | 
 | 
| const CSOBoundingBox &  | getWorldBoundingBox () const | 
|   | 
| CSOBoundingBox  | getVoxelBoundingBox (const Matrix4 &worldToVoxelMatrix, size_t hashKey) const | 
|   | Returns the bounding box of this contour in voxel coordinates computed by the given (image) matrix.  
  | 
|   | 
| CSOBoundingBox  | getVoxelBoundingBoxSeedPoints (const Matrix4 &worldToVoxelMatrix, size_t hashKey) const | 
|   | Returns the bounding box of the seed points of this CSO in voxel coordinates computed by the given (image) matrix.  
  | 
|   | 
| bool  | isInPlane () const | 
|   | Returns the plane status (do all seed points lie in a plane?).  
  | 
|   | 
| bool  | isInPlane (Vector3 &planeNormal) const | 
|   | Returns the plane status and fills the argument vector with the plane normal (only valid if all seed points lie in a plane).  
  | 
|   | 
| const Vector3 &  | getPlaneNormal () const | 
|   | Returns the plane normal. Only valid, if isInPlane returns 'true'.  
  | 
|   | 
| void  | computePlaneNormal () | 
|   | Forces to recompute the plane normal (status).  
  | 
|   | 
| void  | setIsInPlane (bool status) | 
|   | Sets the plane normal status for this CSO.  
  | 
|   | 
| void  | setPlaneNormal (const Vector3 &planeNormal) | 
|   | Sets the plane normal which becomes valid by this.  
  | 
|   | 
| void  | invalidatePlaneNormal () | 
|   | Invalidates the plane normal.  
  | 
|   | 
| double  | getLength () const | 
|   | Returns the length of this CSO (this is sum of the the euclidean distances between all successive path points).  
  | 
|   | 
| double  | getArea () const | 
|   | Returns the area of this CSO (this value is only meaningful if all points lie in a plane)  
  | 
|   | 
| void  | invalidateArea () | 
|   | Invalidates the internal area flag, so it can be recomputed.  
  | 
|   | 
| bool  | isSelfIntersecting () const | 
|   | Returns whether this CSO is self-intersecting.  
  | 
|   | 
| void  | setIsClosed (bool isClosed) | 
|   | Sets the closed state of this contour.  
  | 
|   | 
| bool  | isClosed () const | 
|   | Returns whether the CSO is closed.  
  | 
|   | 
| bool  | isPoint () const | 
|   | Returns whether the CSO is just a point.  
  | 
|   | 
| bool  | isEmpty () const | 
|   | Returns whether the CSO is empty; an empty CSO has neither seed points nor path points.  
  | 
|   | 
| void  | setIsFinished (bool isFinished) | 
|   | Sets the finished status of this contour. Note that the finished status is set to 'true' if the contour is set to isClosed = true.  
  | 
|   | 
| bool  | getIsFinished () const | 
|   | Returns the finished status of this contour.  
  | 
|   | 
| void  | setNeedsInterpolation (bool needsInterpolation) | 
|   | Sets if this CSO needs interpolation.  
  | 
|   | 
| bool  | getNeedsInterpolation () const | 
|   | Returns whether this CSO needs interpolation.  
  | 
|   | 
| void  | determineNeedsInterpolation () | 
|   | Determines by investigating the CSO's seed points if this CSO needs interpolation and sets this state to the CSO's internal variable.  
  | 
|   | 
| void  | setNeedInterpolationAllSeedPoints (bool needsInterpolation) | 
|   | Sets the need for interpolation to all member seed points.  
  | 
|   | 
| void  | setNeedInterpolation (CSOSeedPoint *seedPoint) | 
|   | Sets the need of being interpolated to the given seed point and to the CSO's state.  
  | 
|   | 
| void  | pathChanged () | 
|   | Sets any pre-computed values depending on the exact path to invalid.  
  | 
|   | 
 | 
| void  | setCSOList (CSOList *csoList) | 
|   | 
| CSOList *  | getCSOList () const | 
|   | Returns the internal pointer to the embracing CSOList.  
  | 
|   | 
| unsigned int  | getId () const | 
|   | Returns the unique ID of this CSO.  
  | 
|   | 
 | 
| void  | setLabel (const std::string &label) | 
|   | 
| const std::string &  | getLabel () const | 
|   | Returns the label of this CSO.  
  | 
|   | 
| void  | setDescription (std::string description) | 
|   | Sets the description of this CSO.  
  | 
|   | 
| const std::string &  | getDescription () const | 
|   | Returns the description of this CSO.  
  | 
|   | 
| void  | setTimePointIndex (MLint index) | 
|   | Sets the time point index of this CSO.  
  | 
|   | 
| int  | getTimePointIndex () const | 
|   | Returns the time point index of this CSO.  
  | 
|   | 
| void  | setShowState (bool state) | 
|   | Sets the 'show' status of this CSO.  
  | 
|   | 
| bool  | getShowState () const | 
|   | Returns the 'show' status of this CSO.  
  | 
|   | 
| void  | setVoxelizeState (bool state) | 
|   | Sets the 'voxelize' state of this CSO.  
  | 
|   | 
| bool  | getVoxelizeState () const | 
|   | Returns the 'voxelize' state of this CSO.  
  | 
|   | 
| void  | setEditableState (bool state) | 
|   | Sets the 'editable' state of this CSO.  
  | 
|   | 
| bool  | getEditableState () const | 
|   | Returns the 'editable' state of this CSO.  
  | 
|   | 
| void  | setPathPointStyle (CSOPathPointsStyle style) | 
|   | Sets the style of the path points.  
  | 
|   | 
| void  | setPathPointStyle (int style) | 
|   | Sets the style of the path points as an int.  
  | 
|   | 
| CSOPathPointsStyle  | getPathPointStyle () const | 
|   | Returns the style of the path points.  
  | 
|   | 
| void  | setPathPointWidth (float width) | 
|   | Sets the width of the path points.  
  | 
|   | 
| float  | getPathPointWidth () const | 
|   | Returns the width of the path points.  
  | 
|   | 
| void  | setPathPointColor (const Vector3 &color) | 
|   | Sets the color of the path points.  
  | 
|   | 
| Vector3  | getPathPointColor () const | 
|   | Returns the color of the path points.  
  | 
|   | 
| void  | setPathPointAlpha (float alpha) | 
|   | Sets the alpha value of the path points.  
  | 
|   | 
| float  | getPathPointAlpha () const | 
|   | Returns the alpha value of the path points.  
  | 
|   | 
| void  | setSeedPointStyle (int style) | 
|   | Sets the style of the seed points.  
  | 
|   | 
| int  | getSeedPointStyle () const | 
|   | Returns the style of the seed points.  
  | 
|   | 
| void  | setSeedPointSize (float size) | 
|   | Sets the size of the seed points.  
  | 
|   | 
| float  | getSeedPointSize () const | 
|   | Returns the size of the seed points.  
  | 
|   | 
| void  | setSeedPointColor (const Vector3 &color) | 
|   | Sets the color of the seed points.  
  | 
|   | 
| Vector3  | getSeedPointColor () const | 
|   | Returns the color of the seed points.  
  | 
|   | 
| void  | setSeedPointAlpha (float alpha) | 
|   | Sets the alpha value of the seed points.  
  | 
|   | 
| float  | getSeedPointAlpha () const | 
|   | Returns the alpha value of the seed points.  
  | 
|   | 
| void  | setVoxelWriteMode (int mode) | 
|   | Sets the voxel write mode of this CSO.  
  | 
|   | 
| int  | getVoxelWriteMode () const | 
|   | Returns the voxel write mode of this CSO.  
  | 
|   | 
| void  | setVoxelWriteValue (float value) | 
|   | Sets the voxel write value of this CSO.  
  | 
|   | 
| float  | getVoxelWriteValue () const | 
|   | Returns the voxel write value of this CSO.  
  | 
|   | 
| void  | setAllValuesTo (float value) | 
|   | Sets all position values to the given value.  
  | 
|   | 
 | 
| int  | getPrivateTimePointIndex () const | 
|   | 
| bool  | getPrivateShowState () const | 
|   | Returns the private attribute 'showState'.  
  | 
|   | 
| bool  | getPrivateVoxelizeState () const | 
|   | Returns the private attribute 'voxelizeState'.  
  | 
|   | 
| bool  | getPrivateEditableState () const | 
|   | Returns the private attribute 'editableState'.  
  | 
|   | 
| int  | getPrivatePathPointStyle () const | 
|   | Returns the private attribute 'path point style'.  
  | 
|   | 
| float  | getPrivatePathPointWidth () const | 
|   | Returns the private attribute 'path point width'.  
  | 
|   | 
| Vector3  | getPrivatePathPointColor () const | 
|   | Returns the private attribute 'path point color'.  
  | 
|   | 
| float  | getPrivatePathPointAlpha () const | 
|   | Returns the private attribute 'path point alpha'.  
  | 
|   | 
| int  | getPrivateSeedPointStyle () const | 
|   | Returns the private attribute 'seed point style'.  
  | 
|   | 
| float  | getPrivateSeedPointSize () const | 
|   | Returns the private attribute 'seed point size'.  
  | 
|   | 
| Vector3  | getPrivateSeedPointColor () const | 
|   | Returns the private attribute 'seed point color'.  
  | 
|   | 
| float  | getPrivateSeedPointAlpha () const | 
|   | Returns the private attribute 'seed point alpha'.  
  | 
|   | 
| int  | getPrivateVoxelWriteMode () const | 
|   | Returns the private attribute 'voxelWriteMode'.  
  | 
|   | 
| float  | getPrivateVoxelWriteValue () const | 
|   | Returns the private attribute 'voxelWriteValue'.  
  | 
|   | 
| void  | setPrivateIsFinished (bool isFinished) | 
|   | Sets the 'isFinished' flag without any side effects.  
  | 
|   | 
| void  | setPrivateIsClosed (bool isClosedP) | 
|   | Sets the 'isClosed' flag without any side effects.  
  | 
|   | 
| void  | setPrivateIsInPlane (bool isInPlaneP) | 
|   | Sets the 'isInPlane' flag without any side effects.  
  | 
|   | 
| void  | setPrivateBoundingBox (const CSOBoundingBox &bb) | 
|   | Sets the bounding box of this CSO.  
  | 
|   | 
| void  | setPrivatePlaneNormal (const Vector3 &normal) | 
|   | Sets the plane normal of this CSO.  
  | 
|   | 
| void  | setId (unsigned int newId) | 
|   | Sets the unique ID of this CSO.  
  | 
|   |