VTK
vtkOptiXPass.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkOptiXPass.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 =========================================================================*/
28 #ifndef vtkOptiXPass_h
29 #define vtkOptiXPass_h
30 
31 #include "vtkRenderingOptiXModule.h" // For export macro
32 #include "vtkRenderPass.h"
33 
35 class vtkCameraPass;
36 class vtkLightsPass;
37 class vtkOverlayPass;
39 class vtkSequencePass;
40 class vtkVolumetricPass;
41 class vtkOptiXPassInternals;
42 
43 class VTKRENDERINGOPTIX_EXPORT vtkOptiXPass : public vtkRenderPass
44 {
45 public:
46  static vtkOptiXPass *New();
47  vtkTypeMacro(vtkOptiXPass,vtkRenderPass);
48  void PrintSelf(ostream& os, vtkIndent indent);
49 
53  virtual void Render(const vtkRenderState *s);
54 
56 
59  void SetSceneGraph(vtkOptiXRendererNode *);
60  vtkGetObjectMacro(SceneGraph, vtkOptiXRendererNode);
62 
66  virtual void RenderInternal(const vtkRenderState *s);
67 
68  protected:
69 
70  vtkOptiXPass();
71  virtual ~vtkOptiXPass();
72 
80 
81  private:
82  vtkOptiXPass(const vtkOptiXPass&) = delete;
83  void operator=(const vtkOptiXPass&) = delete;
84 
85  vtkOptiXPassInternals *Internals;
86 };
87 
88 #endif
Execute render passes sequentially.
vtkCameraPass * CameraPass
Definition: vtkOptiXPass.h:74
vtkSequencePass * SequencePass
Definition: vtkOptiXPass.h:78
Render the volumetric geometry with property key filtering.
links vtkRenderers to OptiX
Implement the camera render pass.
Definition: vtkCameraPass.h:41
vtkVolumetricPass * VolumetricPass
Definition: vtkOptiXPass.h:77
Render the overlay geometry with property key filtering.
Context in which a vtkRenderPass will render.
a simple class to control print indentation
Definition: vtkIndent.h:39
vtkLightsPass * LightsPass
Definition: vtkOptiXPass.h:75
virtual void Render(const vtkRenderState *s)=0
Perform rendering according to a render state s.
a render pass that uses OptiX instead of GL
Definition: vtkOptiXPass.h:43
vtkOverlayPass * OverlayPass
Definition: vtkOptiXPass.h:76
an ordered list of RenderPasses
static vtkObject * New()
Create an object with Debug turned off, modified time initialized to zero, and reference counting on...
Perform part of the rendering of a vtkRenderer.
Definition: vtkRenderPass.h:58
Implement the lights render pass.
Definition: vtkLightsPass.h:40
vtkRenderPassCollection * RenderPassCollection
Definition: vtkOptiXPass.h:79
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
vtkOptiXRendererNode * SceneGraph
Definition: vtkOptiXPass.h:73