17 #ifndef _mitk_TubeGraphProperty_h
18 #define _mitk_TubeGraphProperty_h
26 #include <itkObject.h>
71 bool IsTubeVisible(
const TubeDescriptorType &tube);
78 void SetTubeActive(
const TubeDescriptorType &tube,
const bool &active);
84 void SetTubesActive(std::vector<TubeDescriptorType> &tubes);
91 bool IsTubeActive(
const TubeDescriptorType &tube);
93 std::vector<TubeDescriptorType> GetActiveTubes();
95 Color GetColorOfTube(
const TubeDescriptorType &tube);
97 void SetTubesToLabels(std::map<TubeToLabelGroupType, std::string> tubeToLabelMap);
99 std::map<TubeToLabelGroupType, std::string> GetTubesToLabels();
104 void DeactivateAllTubes();
107 Annotation *GetAnnotationByName(std::string annotation);
108 std::vector<Annotation *> GetAnnotations();
109 void RemoveAnnotation(
Annotation *annotation);
111 void AddLabelGroup(
LabelGroup *labelGroup,
unsigned int position);
112 void RemoveLabelGroup(
LabelGroup *labelGroup);
113 LabelGroupSetType GetLabelGroups();
114 unsigned int GetNumberOfLabelGroups();
115 unsigned int GetIndexOfLabelGroup(
LabelGroup *labelGroup);
116 LabelGroup *GetLabelGroupByName(std::string labelGroup);
125 virtual std::string GetValueAsString()
const override;
133 std::vector<TubeDescriptorType> m_ActiveTubes;
134 LabelGroupSetType m_LabelGroups;
135 std::map<TubeToLabelGroupType, std::string> m_TubeToLabelsMap;
136 std::vector<Annotation *> m_Annotations;
138 bool TubeDescriptorsCompare(
const TubeDescriptorType &tube1,
const TubeDescriptorType &tube2);
143 virtual bool IsEqual(
const BaseProperty &property)
const override;
144 virtual bool Assign(
const BaseProperty &property)
override;
TubeGraph::TubeDescriptorType TubeDescriptorType
#define MITKTUBEGRAPH_EXPORT
itk::SmartPointer< Self > Pointer
DataCollection - Class to facilitate loading/accessing structured data.
Abstract base class for properties.
std::pair< TubeDescriptorType, std::string > TubeToLabelGroupType
std::pair< VertexDescriptorType, VertexDescriptorType > TubeDescriptorType
Property for tube graphs.
#define mitkClassMacro(className, SuperClassName)
std::string labelGroupName
itk::RGBPixel< float > Color
Color Standard RGB color typedef (float)
std::vector< TubeGraphProperty::LabelGroup * > LabelGroupSetType
std::vector< Label * > labels