VTK  9.3.20240328
vtkViewNodeFactory.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
16 #ifndef vtkViewNodeFactory_h
17 #define vtkViewNodeFactory_h
18 
19 #include "vtkObject.h"
20 #include "vtkRenderingSceneGraphModule.h" // For export macro
21 
22 VTK_ABI_NAMESPACE_BEGIN
23 class vtkViewNode;
24 
25 class VTKRENDERINGSCENEGRAPH_EXPORT vtkViewNodeFactory : public vtkObject
26 {
27 public:
29  vtkTypeMacro(vtkViewNodeFactory, vtkObject);
30  void PrintSelf(ostream& os, vtkIndent indent) override;
31 
36  void RegisterOverride(const char* name, vtkViewNode* (*func)());
37 
42 
43 protected:
45  ~vtkViewNodeFactory() override;
46 
47 private:
48  vtkViewNodeFactory(const vtkViewNodeFactory&) = delete;
49  void operator=(const vtkViewNodeFactory&) = delete;
50 
51  class vtkInternals;
52  vtkInternals* Internals;
53 };
54 
55 VTK_ABI_NAMESPACE_END
56 #endif
a simple class to control print indentation
Definition: vtkIndent.h:108
abstract base class for most VTK objects
Definition: vtkObject.h:161
factory that chooses vtkViewNodes to create
vtkViewNode * CreateNode(vtkObject *)
Creates and returns a vtkViewNode for the provided renderable.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
static vtkViewNodeFactory * New()
~vtkViewNodeFactory() override
void RegisterOverride(const char *name, vtkViewNode *(*func)())
Give a function pointer to a class that will manufacture a vtkViewNode when given a class name string...
a node within a VTK scene graph
Definition: vtkViewNode.h:31
@ name
Definition: vtkX3D.h:219