VTK  9.0.20201203
vtkRenderState.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkRenderState.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 =========================================================================*/
29 #ifndef vtkRenderState_h
30 #define vtkRenderState_h
31 
32 #include "vtkObject.h"
33 #include "vtkRenderingCoreModule.h" // For export macro
34 
35 class vtkRenderer;
36 class vtkProp;
38 class vtkInformation;
39 
40 class VTKRENDERINGCORE_EXPORT vtkRenderState
41 {
42 public:
49  vtkRenderState(vtkRenderer* renderer);
50 
55  ~vtkRenderState() = default;
56 
60  bool IsValid() const;
61 
67  vtkRenderer* GetRenderer() const;
68 
74  vtkFrameBufferObjectBase* GetFrameBuffer() const;
75 
80  void SetFrameBuffer(vtkFrameBufferObjectBase* fbo);
81 
85  void GetWindowSize(int size[2]) const;
86 
90  vtkProp** GetPropArray() const;
91 
97  int GetPropArrayCount() const;
98 
110  void SetPropArrayAndCount(vtkProp** propArray, int propArrayCount);
111 
117  vtkInformation* GetRequiredKeys() const;
118 
123  void SetRequiredKeys(vtkInformation* keys);
124 
125 protected:
131 
138 
140 
150 
156 
157 private:
158  vtkRenderState() = delete; // no default constructor.
159  vtkRenderState(const vtkRenderState&) = delete;
160  void operator=(const vtkRenderState&) = delete;
161 };
162 
163 #endif
164 // VTK-HeaderTest-Exclude: vtkRenderState.h
vtkRenderState::Renderer
vtkRenderer * Renderer
The renderer in which the render pass is performed.
Definition: vtkRenderState.h:130
vtkFrameBufferObjectBase
abstract interface to OpenGL FBOs
Definition: vtkFrameBufferObjectBase.h:32
vtkX3D::size
Definition: vtkX3D.h:259
vtkObject.h
vtkInformation
Store vtkAlgorithm input/output information.
Definition: vtkInformation.h:73
vtkProp
abstract superclass for all actors, volumes and annotations
Definition: vtkProp.h:56
vtkRenderState::RequiredKeys
vtkInformation * RequiredKeys
It tells that the current render pass it supposed to render only props that have all the RequiredKeys...
Definition: vtkRenderState.h:155
vtkRenderState::PropArrayCount
int PropArrayCount
Definition: vtkRenderState.h:148
vtkRenderState::FrameBuffer
vtkFrameBufferObjectBase * FrameBuffer
The framebuffer in use.
Definition: vtkRenderState.h:137
vtkRenderer
abstract specification for renderers
Definition: vtkRenderer.h:67
vtkRenderState
Context in which a vtkRenderPass will render.
Definition: vtkRenderState.h:40
vtkRenderState::PropArray
vtkProp ** PropArray
Subset of props to render.
Definition: vtkRenderState.h:147