VTK  9.3.0
vtkGraphicsFactory.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
17 #ifndef vtkGraphicsFactory_h
18 #define vtkGraphicsFactory_h
19 
20 #include "vtkObject.h"
21 #include "vtkRenderingCoreModule.h" // For export macro
22 
23 VTK_ABI_NAMESPACE_BEGIN
24 class VTKRENDERINGCORE_EXPORT vtkGraphicsFactory : public vtkObject
25 {
26 public:
28  vtkTypeMacro(vtkGraphicsFactory, vtkObject);
29  void PrintSelf(ostream& os, vtkIndent indent) override;
30 
37  static vtkObject* CreateInstance(const char* vtkclassname);
38 
42  static const char* GetRenderLibrary();
43 
45 
49  static void SetUseMesaClasses(int use);
50  static int GetUseMesaClasses();
52 
54 
58  static void SetOffScreenOnlyMode(int use);
59  static int GetOffScreenOnlyMode();
61 
62 protected:
63  vtkGraphicsFactory() = default;
64 
65  static int UseMesaClasses;
66  static int OffScreenOnlyMode;
67 
68 private:
69  vtkGraphicsFactory(const vtkGraphicsFactory&) = delete;
70  void operator=(const vtkGraphicsFactory&) = delete;
71 };
72 
73 VTK_ABI_NAMESPACE_END
74 #endif
static int OffScreenOnlyMode
static const char * GetRenderLibrary()
What rendering library has the user requested.
static void SetUseMesaClasses(int use)
This option enables the creation of Mesa classes instead of the OpenGL classes when using mangled Mes...
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
vtkGraphicsFactory()=default
static vtkObject * CreateInstance(const char *vtkclassname)
Create and return an instance of the named vtk object.
static vtkGraphicsFactory * New()
static int GetUseMesaClasses()
This option enables the creation of Mesa classes instead of the OpenGL classes when using mangled Mes...
static void SetOffScreenOnlyMode(int use)
This option enables the off-screen only mode.
static int GetOffScreenOnlyMode()
This option enables the off-screen only mode.
a simple class to control print indentation
Definition: vtkIndent.h:38
abstract base class for most VTK objects
Definition: vtkObject.h:61
#define VTK_NEWINSTANCE