VTK  9.1.0
vtkAbstractRenderDevice.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4 
5  Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
6  All rights reserved.
7  See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
8 
9  This software is distributed WITHOUT ANY WARRANTY; without even
10  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
11  PURPOSE. See the above copyright notice for more information.
12 
13 =========================================================================*/
14 #ifndef vtkAbstractRenderDevice_h
15 #define vtkAbstractRenderDevice_h
16 
17 #include "vtkObject.h"
18 #include "vtkRenderingCoreModule.h" // For export macro
19 #include <string> // For std::string
20 
21 class vtkRecti;
22 
23 class VTKRENDERINGCORE_EXPORT vtkAbstractRenderDevice : public vtkObject
24 {
25 public:
27  void PrintSelf(ostream& os, vtkIndent indent) override;
28 
35 
42  void SetRequestedGLVersion(int major, int minor);
43 
50  virtual bool CreateNewWindow(const vtkRecti& geometry, const std::string& name) = 0;
51 
57  virtual void MakeCurrent() = 0;
58 
59 protected:
62 
63  int GLMajor;
64  int GLMinor;
65 
66 private:
68  void operator=(const vtkAbstractRenderDevice&) = delete;
69 };
70 
71 #endif
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
void SetRequestedGLVersion(int major, int minor)
Set the context that should be requested (must be set before the widget is rendered for the first tim...
virtual void MakeCurrent()=0
Make the context current so that it can be used by OpenGL.
virtual bool CreateNewWindow(const vtkRecti &geometry, const std::string &name)=0
Create a window with the desired geometry.
~vtkAbstractRenderDevice() override
static vtkAbstractRenderDevice * New()
Make a new device, this class is abstract and one of its derived forms will be returned,...
a simple class to control print indentation
Definition: vtkIndent.h:34
abstract base class for most VTK objects
Definition: vtkObject.h:63
@ name
Definition: vtkX3D.h:225
@ string
Definition: vtkX3D.h:496