22#include <ThirdPartyWarningsDisable.h>
23#include <boost/unordered_set.hpp>
24#include <ThirdPartyWarningsRestore.h>
49#define addMemberAndAccessMethod(type, name) \
51 type name() const { return _##name; } \
52 void name(type value) { _##name = value; } \
56#define addMemberAndAccessMethodWithCSO(type, name) \
58 type name() const { return _##name; } \
59 virtual type name(CSO* cso) const; \
60 void name(type value) { _##name = value; } \
64#define overwriteAccessMethodsWithCSO(type, name) \
66 using CSOVisualizationSettings::name; \
67 virtual type name(CSO* cso) const override;
102 MLssize_t getStylePalettePathPointsLookUp(
CSO* cso)
const;
104 MLssize_t getStylePaletteSeedPointsLookUp(
CSO* cso)
const;
108 bool hasStylePalette()
const;
112 unsigned short getLineStyleFromStylePalette(
MLssize_t index)
const;
113 int getLineWidthFromStylePalette(
MLssize_t index)
const;
114 int getSeedPointStyleFromStylePalette(
MLssize_t index)
const;
115 int getSeedPointSizeFromStylePalette(
MLssize_t index)
const;
117 boost::unordered_set < int > _visibleIds;
124#undef addMemberAndAccessMethodWithCSO
125#undef addMemberAndAccessMethod
#define SOCSO_EXPORT
Header file for system independent resolution.
addMemberAndAccessMethod(int, stylePaletteLookUpPathPoints)
overwriteAccessMethodsWithCSO(float, seedPointOnSliceSize)
addMemberAndAccessMethod(int, stylePaletteLookUpSeedPoints)
void setStylePalette(StylePalette *stylePalette)
addMemberAndAccessMethod(int, visibleByMode)
overwriteAccessMethodsWithCSO(SbColor, pathPointsOnSliceColor)
overwriteAccessMethodsWithCSO(int, seedPointOnSliceStyle)
addMemberAndAccessMethod(bool, shouldUseStylePaletteLookUpForSeedPoints)
addMemberAndAccessMethod(bool, shouldUseStylePaletteLookUpForPathPoints)
overwriteAccessMethodsWithCSO(int, pathPointsOnSliceLineStyle)
CSOVisualizationSettingsWithStylePalette()
Constructor sets members to default values.
void parseVisibleIdList()
addMemberAndAccessMethod(std::string, visibleIdList)
overwriteAccessMethodsWithCSO(SbColor, seedPointOnSliceColor)
bool isCSOVisible(CSO *cso) override
overwriteAccessMethodsWithCSO(float, pathPointsOnSliceLineWidth)
addMemberAndAccessMethod(bool, invertVisibility)
The CSO represents a contour segmentation object.
Base object class StylePalette for providing a collection of colors, line styles and marker types.
Target mlrange_cast(Source arg)
Generic version of checked ML casts.
#define ML_CLASS_HEADER(className)
Same like ML_CLASS_HEADER_EXPORTED with a non existing export symbol.
SSIZE_T MLssize_t
The signed ML size type which is a signed 32 bit size_t on 32 bit platforms and 64 bit one on 64 bit ...
CSOStylePaletteLookUpType
Defines how the optionally attached StylePalette should be used.
CSOVisibleObjectIdsFor
Mode for setting the CSOs' or CSOGroups' visibility by their id.
@ CSOs
Ids represent CSO ids.
@ Groups
Ids represent Group ids.