Medical Imaging Interaction Toolkit  2023.04.00
Medical Imaging Interaction Toolkit
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
mitkStringProperty.h
Go to the documentation of this file.
1 /*============================================================================
2 
3 The Medical Imaging Interaction Toolkit (MITK)
4 
5 Copyright (c) German Cancer Research Center (DKFZ)
6 All rights reserved.
7 
8 Use of this source code is governed by a 3-clause BSD license that can be
9 found in the LICENSE file.
10 
11 ============================================================================*/
12 
13 #ifndef mitkStringProperty_h
14 #define mitkStringProperty_h
15 
16 #include <itkConfigure.h>
17 
18 #include "mitkBaseProperty.h"
19 #include <MitkCoreExports.h>
20 
21 #include <string>
22 
23 namespace mitk
24 {
25 #ifdef _MSC_VER
26 #pragma warning(push)
27 #pragma warning(disable : 4522)
28 #endif
29 
35  {
36  protected:
37  std::string m_Value;
38 
39  StringProperty(const char *string = nullptr);
40  StringProperty(const std::string &s);
41 
43 
44  public:
46  typedef std::string ValueType;
47 
48  itkFactorylessNewMacro(Self);
49  itkCloneMacro(Self);
51  mitkNewMacro1Param(StringProperty, const std::string&);
52 
53  itkGetStringMacro(Value);
54  itkSetStringMacro(Value);
55 
56  std::string GetValueAsString() const override;
57 
58  static const char *PATH;
59 
60  using BaseProperty::operator=;
61 
62  private:
63  // purposely not implemented
64  StringProperty &operator=(const StringProperty &);
65 
66  itk::LightObject::Pointer InternalClone() const override;
67 
68  bool IsEqual(const BaseProperty &property) const override;
69  bool Assign(const BaseProperty &property) override;
70  };
71 
72 #ifdef _MSC_VER
73 #pragma warning(pop)
74 #endif
75 
76 } // namespace mitk
77 
78 #endif
mitk::BaseProperty
Abstract base class for properties.
Definition: mitkBaseProperty.h:35
mitk::StringProperty::PATH
static const char * PATH
Definition: mitkStringProperty.h:58
mitk::StringProperty
Property for strings.
Definition: mitkStringProperty.h:34
mitkNewMacro1Param
#define mitkNewMacro1Param(classname, type)
Definition: mitkCommon.h:68
mitk::StringProperty::m_Value
std::string m_Value
Definition: mitkStringProperty.h:37
mitk
DataCollection - Class to facilitate loading/accessing structured data.
Definition: RenderingTests.dox:1
mitk::StringProperty::ValueType
std::string ValueType
Definition: mitkStringProperty.h:45
MitkCoreExports.h
mitkClassMacro
#define mitkClassMacro(className, SuperClassName)
Definition: mitkCommon.h:36
mitkBaseProperty.h
MITKCORE_EXPORT
#define MITKCORE_EXPORT
Definition: MitkCoreExports.h:15