VTK  9.6.20260110
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
14
15#ifndef vtkOverrideInformation_h
16#define vtkOverrideInformation_h
17
18#include "vtkCommonCoreModule.h" // For export macro
19#include "vtkObject.h"
20
21VTK_ABI_NAMESPACE_BEGIN
24class VTKCOMMONCORE_EXPORT vtkOverrideInformation : public vtkObject
25{
26public:
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
62 vtkOverrideAttribute* GetOverrideAttributes() { return this->OverrideAttributes; }
63
65
68 vtkSetStringMacro(ClassOverrideName);
69
73 vtkSetStringMacro(ClassOverrideWithName);
74
78 vtkSetStringMacro(Description);
80
81protected:
84
85private:
86 vtkOverrideInformation();
87 ~vtkOverrideInformation() override;
88 // allow the object factory to set the values in this
89 // class, but only the object factory
90
91 friend class vtkObjectFactory;
92
93 char* ClassOverrideName;
94 char* ClassOverrideWithName;
95 char* Description;
96 vtkObjectFactory* ObjectFactory;
97 vtkOverrideAttribute* OverrideAttributes;
98
99 vtkOverrideInformation(const vtkOverrideInformation&) = delete;
100 void operator=(const vtkOverrideInformation&) = delete;
101};
102
103VTK_ABI_NAMESPACE_END
104#endif
a simple class to control print indentation
Definition vtkIndent.h:108
abstract base class for vtkObjectFactories
Attribute for vtkObjectFactory overrides.
virtual void SetObjectFactory(vtkObjectFactory *)
const char * GetClassOverrideName()
Returns the name of the class being overridden.
vtkObjectFactory * GetObjectFactory()
Return the specific object factory that this override occurs in.
vtkOverrideAttribute * GetOverrideAttributes()
Get the override attributes if any.
const char * GetDescription()
Return a human readable or GUI displayable description of this override.
static vtkOverrideInformation * New()
const char * GetClassOverrideWithName()
Returns the name of the class that will override the class.
void PrintSelf(ostream &os, vtkIndent indent) override
Print ObjectFactor to stream.
virtual void SetOverrideAttributes(vtkOverrideAttribute *attrs)