Slicer 5.9
Slicer is a multi-platform, free and open source software package for visualization and medical image computing
Loading...
Searching...
No Matches
vtkTagTable.h
Go to the documentation of this file.
1#ifndef __vtkTagTable_h
2#define __vtkTagTable_h
3
4// MRML includes
5#include "vtkMRML.h"
6
7// VTK includes
8#include <vtkObject.h>
9
10// STD includes
11#include <string>
12#include <map>
13
14class VTK_MRML_EXPORT vtkTagTable : public vtkObject
15{
16public:
18 static vtkTagTable* New();
19 vtkTypeMacro(vtkTagTable, vtkObject);
20 void PrintSelf(ostream& os, vtkIndent indent) override;
21
24 vtkGetStringMacro(Name);
25 vtkSetStringMacro(Name);
26
27 vtkGetMacro(RestoreSelectionState, int);
28 vtkSetMacro(RestoreSelectionState, int);
29
33 virtual void Initialize() {};
34
37 virtual void AddOrUpdateTag(const char* attribute, const char* value);
40 virtual void AddOrUpdateTag(const char* attribute, const char* value, int selected);
43 virtual void AddUniqueTag(const char* attribute, const char* value);
46 virtual int UpdateTag(const char* attribute, const char* value);
47 virtual int UpdateTag(const char* attribute, const char* value, int selected);
48
51 virtual const char* GetTagAttribute(int index);
52
55 virtual const char* GetTagValue(int index);
56
59 virtual const char* GetTagValue(const char* attribute);
60
64 virtual int CheckTableForTag(const char* attribute, const char* value);
65
68 virtual int CheckTableForTag(const char* attribute);
69
70 virtual void SelectTag(const char* attribute);
71 virtual void DeselectTag(const char* attribute);
72 virtual int IsTagSelected(const char* attribute);
73
76 virtual void DeleteTag(const char* attribute);
77
80 virtual void ClearTagTable();
81
84 virtual int GetNumberOfTags();
85
87 virtual void Copy(vtkTagTable* t);
88
90 std::map<std::string, std::string> TagTable;
92 std::map<std::string, int> TagSelectionTable;
93
94private:
95 char* Name;
96 int RestoreSelectionState;
97
98protected:
100 ~vtkTagTable() override;
102 void operator=(const vtkTagTable&);
103};
104
105#endif
virtual void DeleteTag(const char *attribute)
Deletes a column with the name matching "attribute" in the TagTable.
virtual int GetNumberOfTags()
Convenience method that returns the number of tags in TagTable.
virtual void AddOrUpdateTag(const char *attribute, const char *value)
Add a tag column to the TagTable.
std::map< std::string, int > TagSelectionTable
describes whether each attribute is selected or not.
Definition vtkTagTable.h:92
virtual void AddOrUpdateTag(const char *attribute, const char *value, int selected)
Add a tag column to the TagTable.
virtual void AddUniqueTag(const char *attribute, const char *value)
Add a tag column to the TagTable.
static vtkTagTable * New()
The Usual vtk class functions.
virtual int UpdateTag(const char *attribute, const char *value)
Replace a tag column in the TagTable.
virtual void Initialize()
Definition vtkTagTable.h:33
virtual void Copy(vtkTagTable *t)
vtkTagTable(const vtkTagTable &)
virtual const char * GetTagAttribute(int index)
Get the attribute at a particular index in the TagTable.
void operator=(const vtkTagTable &)
virtual const char * GetTagValue(int index)
Get the value of a tag in the TagTable.
virtual const char * GetTagValue(const char *attribute)
Get the value of a tag in the TagTable.
virtual void SelectTag(const char *attribute)
virtual int IsTagSelected(const char *attribute)
virtual int UpdateTag(const char *attribute, const char *value, int selected)
std::map< std::string, std::string > TagTable
describes attribute value pairs
Definition vtkTagTable.h:90
virtual void ClearTagTable()
Clears all tags out of table.
~vtkTagTable() override
virtual void DeselectTag(const char *attribute)
virtual int CheckTableForTag(const char *attribute, const char *value)
virtual int CheckTableForTag(const char *attribute)
Returns index of table for which tag exists, or returns -1.
void PrintSelf(ostream &os, vtkIndent indent) override