VTK  9.3.20240417
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
27 #ifndef vtkGraphicsFactory_h
28 #define vtkGraphicsFactory_h
29 
30 #include "vtkObject.h"
31 #include "vtkRenderingCoreModule.h" // For export macro
32 
33 VTK_ABI_NAMESPACE_BEGIN
34 class VTKRENDERINGCORE_EXPORT vtkGraphicsFactory : public vtkObject
35 {
36 public:
38  vtkTypeMacro(vtkGraphicsFactory, vtkObject);
39  void PrintSelf(ostream& os, vtkIndent indent) override;
40 
47  static vtkObject* CreateInstance(const char* vtkclassname);
48 
52  static const char* GetRenderLibrary();
53 
55 
59  static void SetUseMesaClasses(int use);
60  static int GetUseMesaClasses();
62 
64 
68  static void SetOffScreenOnlyMode(int use);
69  static int GetOffScreenOnlyMode();
71 
72 protected:
73  vtkGraphicsFactory() = default;
74 
75  static int UseMesaClasses;
76  static int OffScreenOnlyMode;
77 
78 private:
79  vtkGraphicsFactory(const vtkGraphicsFactory&) = delete;
80  void operator=(const vtkGraphicsFactory&) = delete;
81 };
82 
83 VTK_ABI_NAMESPACE_END
84 #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:108
abstract base class for most VTK objects
Definition: vtkObject.h:162
#define VTK_NEWINSTANCE