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 =========================================================================*/
25 #ifndef vtkOptiXPass_h
26 #define vtkOptiXPass_h
27 
28 #include "vtkRenderingOptiXModule.h" // For export macro
29 #include "vtkRenderPass.h"
30 
32 class vtkCameraPass;
33 class vtkLightsPass;
34 class vtkOverlayPass;
36 class vtkSequencePass;
37 class vtkVolumetricPass;
38 class vtkOptiXPassInternals;
39 
40 class VTKRENDERINGOPTIX_EXPORT vtkOptiXPass : public vtkRenderPass
41 {
42 public:
43  static vtkOptiXPass *New();
44  vtkTypeMacro(vtkOptiXPass,vtkRenderPass);
45  void PrintSelf(ostream& os, vtkIndent indent);
46 
50  virtual void Render(const vtkRenderState *s);
51 
53 
56  void SetSceneGraph(vtkOptiXRendererNode *);
57  vtkGetObjectMacro(SceneGraph, vtkOptiXRendererNode);
59 
63  virtual void RenderInternal(const vtkRenderState *s);
64 
65  protected:
66 
67  vtkOptiXPass();
68  virtual ~vtkOptiXPass();
69 
77 
78  private:
79  vtkOptiXPass(const vtkOptiXPass&) = delete;
80  void operator=(const vtkOptiXPass&) = delete;
81 
82  vtkOptiXPassInternals *Internals;
83 };
84 
85 #endif
Execute render passes sequentially.
vtkCameraPass * CameraPass
Definition: vtkOptiXPass.h:71
vtkSequencePass * SequencePass
Definition: vtkOptiXPass.h:75
Render the volumetric geometry with property key filtering.
links vtkRenderers to OptiX
Implement the camera render pass.
Definition: vtkCameraPass.h:38
vtkVolumetricPass * VolumetricPass
Definition: vtkOptiXPass.h:74
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:33
vtkLightsPass * LightsPass
Definition: vtkOptiXPass.h:72
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:40
vtkOverlayPass * OverlayPass
Definition: vtkOptiXPass.h:73
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:55
Implement the lights render pass.
Definition: vtkLightsPass.h:37
vtkRenderPassCollection * RenderPassCollection
Definition: vtkOptiXPass.h:76
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
vtkOptiXRendererNode * SceneGraph
Definition: vtkOptiXPass.h:70