VTK  9.3.20240424
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
21VTK_ABI_NAMESPACE_BEGIN
23
24class VTKCOMMONCORE_EXPORT vtkOverrideInformation : public vtkObject
25{
26public:
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
76protected:
78
79private:
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
93 void operator=(const vtkOverrideInformation&) = delete;
94};
95
96VTK_ABI_NAMESPACE_END
97#endif
a simple class to control print indentation
Definition vtkIndent.h:108
abstract base class for vtkObjectFactories
abstract base class for most VTK objects
Definition vtkObject.h:162
Factory object override information.
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.
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.