VTK: Common/Core/vtkOverrideInformation.h Source File

| VTK 9.3.1

vtkOverrideInformation.h
Go to the documentation of this file.
1 // SPDX-FileCopyrightText: Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
2 // SPDX-License-Identifier: BSD-3-Clause
15 #ifndef vtkOverrideInformation_h
16 #define vtkOverrideInformation_h
17
18 #include "vtkCommonCoreModule.h" // For export macro
19 #include "vtkObject.h"
20
21 VTK_ABI_NAMESPACE_BEGIN
22 class vtkObjectFactory;
23
24 class VTKCOMMONCORE_EXPORT vtkOverrideInformation : public vtkObject
25 {
26 public:
27 static vtkOverrideInformation* New();
28 vtkTypeMacro(vtkOverrideInformation, vtkObject);
32 void PrintSelf(ostream& os, vtkIndent indent) override;
33
39 const char* GetClassOverrideName() { return this->ClassOverrideName; }
40
46 const char* GetClassOverrideWithName() { return this->ClassOverrideWithName; }
47
52 const char* GetDescription() { return this->Description; }
53
57 vtkObjectFactory* GetObjectFactory() { return this->ObjectFactory; }
58
60
63 vtkSetStringMacro(ClassOverrideName);
64
68 vtkSetStringMacro(ClassOverrideWithName);
69
73 vtkSetStringMacro(Description);
75
76 protected:
77 virtual void SetObjectFactory(vtkObjectFactory*);
78
79 private:
80 vtkOverrideInformation();
81 ~vtkOverrideInformation() override;
82 // allow the object factory to set the values in this
83 // class, but only the object factory
84
85 friend class vtkObjectFactory;
86
87 char* ClassOverrideName;
88 char* ClassOverrideWithName;
89 char* Description;
90 vtkObjectFactory* ObjectFactory;
91
92 vtkOverrideInformation(const vtkOverrideInformation&) = delete;
93 void operator=(const vtkOverrideInformation&) = delete;
94 };
95
96 VTK_ABI_NAMESPACE_END
97 #endif
vtkIndent
a simple class to control print indentation
Definition: vtkIndent.h:38
vtkObjectFactory
abstract base class for vtkObjectFactories
Definition: vtkObjectFactory.h:54
vtkObject
abstract base class for most VTK objects
Definition: vtkObject.h:61
vtkOverrideInformation
Factory object override information.
Definition: vtkOverrideInformation.h:25
vtkOverrideInformation::GetClassOverrideWithName
const char * GetClassOverrideWithName()
Returns the name of the class that will override the class.
Definition: vtkOverrideInformation.h:46
vtkOverrideInformation::SetObjectFactory
virtual void SetObjectFactory(vtkObjectFactory *)
vtkOverrideInformation::GetDescription
const char * GetDescription()
Return a human readable or GUI displayable description of this override.
Definition: vtkOverrideInformation.h:52
vtkOverrideInformation::GetObjectFactory
vtkObjectFactory * GetObjectFactory()
Return the specific object factory that this override occurs in.
Definition: vtkOverrideInformation.h:57
vtkOverrideInformation::New
static vtkOverrideInformation * New()
vtkOverrideInformation::GetClassOverrideName
const char * GetClassOverrideName()
Returns the name of the class being overridden.
Definition: vtkOverrideInformation.h:39
vtkOverrideInformation::PrintSelf
void PrintSelf(ostream &os, vtkIndent indent) override
Print ObjectFactor to stream.
vtkObject.h