Slicer 5.9
Slicer is a multi-platform, free and open source software package for visualization and medical image computing
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
vtkCodedEntry.h
Go to the documentation of this file.
1/*=auto=========================================================================
2
3Portions (c) Copyright 2017 Brigham and Women's Hospital (BWH) All Rights Reserved.
4
5See COPYRIGHT.txt
6or http://www.slicer.org/copyright/copyright.txt for details.
7
8=========================================================================auto=*/
9
10#ifndef __vtkCodedEntry_h
11#define __vtkCodedEntry_h
12
13// MRML includes
14#include "vtkMRML.h"
15
16// VTK includes
17#include <vtkObject.h>
18
19// STL includes
20#include <vector>
21
29class VTK_MRML_EXPORT vtkCodedEntry : public vtkObject
30{
31public:
32
33 static vtkCodedEntry *New();
34 vtkTypeMacro(vtkCodedEntry, vtkObject);
35 void PrintSelf(ostream& os, vtkIndent indent) override;
36
38 virtual void Initialize();
39
41 virtual bool IsEmpty();
42
44 virtual void Copy(vtkCodedEntry* aEntry);
45
49 vtkGetStringMacro(CodeValue);
50 vtkSetStringMacro(CodeValue);
51
57 vtkGetStringMacro(CodingSchemeDesignator);
58 vtkSetStringMacro(CodingSchemeDesignator);
59
65 vtkGetStringMacro(CodeMeaning);
66 vtkSetStringMacro(CodeMeaning);
67
69 virtual void SetValueSchemeMeaning(const std::string& value, const std::string& scheme, const std::string& meaning);
70
72 virtual bool SetValueSchemeMeaning(const std::vector<std::string>& valueSchemeMeaning);
73
75 virtual std::vector<std::string> GetValueSchemeMeaning();
76
80 std::string GetAsPrintableString();
81
85 std::string GetAsString();
86
91 bool SetFromString(const std::string& content);
92
94 static bool AreEqual(vtkCodedEntry* entry1, vtkCodedEntry* entry2);
95
96protected:
98 ~vtkCodedEntry() override;
101
102protected:
103 char* CodeValue{nullptr};
105 char* CodeMeaning{nullptr};
106};
107
108#endif
std::string GetAsPrintableString()
void operator=(const vtkCodedEntry &)
virtual void SetValueSchemeMeaning(const std::string &value, const std::string &scheme, const std::string &meaning)
Convenience function for setting code value, coding scheme, and code meaning with a single method cal...
virtual bool IsEmpty()
All fields are empty.
vtkCodedEntry(const vtkCodedEntry &)
static vtkCodedEntry * New()
bool SetFromString(const std::string &content)
virtual void Copy(vtkCodedEntry *aEntry)
Copy one type into another.
std::string GetAsString()
~vtkCodedEntry() override
char * CodingSchemeDesignator
static bool AreEqual(vtkCodedEntry *entry1, vtkCodedEntry *entry2)
Returns true if the two coded entries have the same content.
virtual void Initialize()
Reset state of object.
virtual bool SetValueSchemeMeaning(const std::vector< std::string > &valueSchemeMeaning)
Convenience function for setting code value, coding scheme, and code meaning with a single method cal...
virtual std::vector< std::string > GetValueSchemeMeaning()
Convenience function for getting code value, coding scheme, and code meaning as a string vector.
void PrintSelf(ostream &os, vtkIndent indent) override