VTK
vtkRenderPass.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkRenderPass.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 =========================================================================*/
44 #ifndef vtkRenderPass_h
45 #define vtkRenderPass_h
46 
47 #include "vtkRenderingOpenGL2Module.h" // For export macro
48 #include "vtkObject.h"
49 
50 class vtkRenderState;
51 class vtkWindow;
52 class vtkRenderer;
53 
54 class VTKRENDERINGOPENGL2_EXPORT vtkRenderPass : public vtkObject
55 {
56  public:
58  void PrintSelf(ostream& os, vtkIndent indent);
59 
62  virtual void Render(const vtkRenderState *s)=0;
63 
65 
66  vtkGetMacro(NumberOfRenderedProps,int);
68 
71  virtual void ReleaseGraphicsResources(vtkWindow *w);
72 
73  protected:
75  vtkRenderPass();
76 
78  virtual ~vtkRenderPass();
79 
83  void UpdateCamera(vtkRenderer *renderer);
84 
87  void ClearLights(vtkRenderer *renderer);
88 
91  void UpdateLightGeometry(vtkRenderer *renderer);
92 
95  void UpdateLights(vtkRenderer *renderer);
96 
99  void UpdateGeometry(vtkRenderer *renderer);
100 
102 
104  void SetLastRenderingUsedDepthPeeling(vtkRenderer *renderer,
105  bool value);
107 
108  int NumberOfRenderedProps;
109 
110  private:
111  vtkRenderPass(const vtkRenderPass&); // Not implemented.
112  void operator=(const vtkRenderPass&); // Not implemented.
113 };
114 
115 #endif
abstract base class for most VTK objects
Definition: vtkObject.h:61
#define vtkGetMacro(name, type)
Definition: vtkSetGet.h:93
abstract specification for renderers
Definition: vtkRenderer.h:63
GLsizei const GLfloat * value
Definition: vtkgl.h:12021
#define vtkTypeMacro(thisClass, superclass)
Definition: vtkSetGet.h:642
window superclass for vtkRenderWindow
Definition: vtkWindow.h:33
Context in which a vtkRenderPass will render.
GLubyte GLubyte GLubyte GLubyte w
Definition: vtkgl.h:12054
virtual void PrintSelf(ostream &os, vtkIndent indent)
a simple class to control print indentation
Definition: vtkIndent.h:38
GLdouble s
Definition: vtkgl.h:11594
Perform part of the rendering of a vtkRenderer.
Definition: vtkRenderPass.h:57