1 /*=========================================================================
2 
3   Program:   Visualization Toolkit
4   Module:    vtkOptiXWindowNode.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 =========================================================================*/
15 /**
16  * @class   vtkOptiXWindowNode
17  * @brief   links vtkRendererWindows to OptiX
18  *
19  * Translates vtkRenderWindow state into OptiX rendering calls
20 */
21 
22 #ifndef vtkOptiXWindowNode_h
23 #define vtkOptiXWindowNode_h
24 
25 #include "vtkRenderingOptiXModule.h" // For export macro
26 #include "vtkWindowNode.h"
27 
28 class VTKRENDERINGOPTIX_EXPORT vtkOptiXWindowNode :
29   public vtkWindowNode
30 {
31 public:
32   static vtkOptiXWindowNode* New();
33   vtkTypeMacro(vtkOptiXWindowNode, vtkWindowNode);
34   void PrintSelf(ostream& os, vtkIndent indent);
35 
36   /**
37    * Make OptiX calls for rendering.
38    */
39   virtual void Render(bool prepass);
40 
41 protected:
42   vtkOptiXWindowNode();
43   ~vtkOptiXWindowNode();
44 
45 private:
46   vtkOptiXWindowNode(const vtkOptiXWindowNode&) = delete;
47   void operator=(const vtkOptiXWindowNode&) = delete;
48 };
49 
50 #endif
51