VTK  9.1.0
vtkOverrideInformation.h
Go to the documentation of this file.
1/*=========================================================================
2
3 Program: Visualization Toolkit
4 Module: vtkOverrideInformation.h
5
6 Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
7 All rights reserved.
8 See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
9
10 This software is distributed WITHOUT ANY WARRANTY; without even
11 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
12 PURPOSE. See the above copyright notice for more information.
13
14=========================================================================*/
24#ifndef vtkOverrideInformation_h
25#define vtkOverrideInformation_h
26
27#include "vtkCommonCoreModule.h" // For export macro
28#include "vtkObject.h"
29
31
32class VTKCOMMONCORE_EXPORT vtkOverrideInformation : public vtkObject
33{
34public:
40 void PrintSelf(ostream& os, vtkIndent indent) override;
41
47 const char* GetClassOverrideName() { return this->ClassOverrideName; }
48
54 const char* GetClassOverrideWithName() { return this->ClassOverrideWithName; }
55
60 const char* GetDescription() { return this->Description; }
61
65 vtkObjectFactory* GetObjectFactory() { return this->ObjectFactory; }
66
68
71 vtkSetStringMacro(ClassOverrideName);
72
76 vtkSetStringMacro(ClassOverrideWithName);
77
81 vtkSetStringMacro(Description);
83
84protected:
86
87private:
89 ~vtkOverrideInformation() override;
90 // allow the object factory to set the values in this
91 // class, but only the object factory
92
93 friend class vtkObjectFactory;
94
95 char* ClassOverrideName;
96 char* ClassOverrideWithName;
97 char* Description;
98 vtkObjectFactory* ObjectFactory;
99
100private:
102 void operator=(const vtkOverrideInformation&) = delete;
103};
104
105#endif
a simple class to control print indentation
Definition: vtkIndent.h:113
abstract base class for vtkObjectFactories
abstract base class for most VTK objects
Definition: vtkObject.h:73
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.