VTK  9.3.0
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:
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:
78 
79 private:
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 
96 VTK_ABI_NAMESPACE_END
97 #endif
a simple class to control print indentation
Definition: vtkIndent.h:29
abstract base class for vtkObjectFactories
abstract base class for most VTK objects
Definition: vtkObject.h:52
Factory object override information.
const char * GetClassOverrideWithName()
Returns the name of the class that will override the class.
virtual void SetObjectFactory(vtkObjectFactory *)
const char * GetDescription()
Return a human readable or GUI displayable description of this override.
vtkObjectFactory * GetObjectFactory()
Return the specific object factory that this override occurs in.
static vtkOverrideInformation * New()
const char * GetClassOverrideName()
Returns the name of the class being overridden.
void PrintSelf(ostream &os, vtkIndent indent) override
Print ObjectFactor to stream.