1 /*========================================================================= 2 3 Program: Visualization Toolkit 4 Module: vtkOptiXCameraNode.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 vtkOptiXCameraNode 17 * @brief links vtkCamera to OptiX 18 * 19 * Translates vtkCamera state into OptiX rendering calls 20 */ 21 22 #ifndef vtkOptiXCameraNode_h 23 #define vtkOptiXCameraNode_h 24 25 #include "vtkRenderingOptiXModule.h" // For export macro 26 #include "vtkCameraNode.h" 27 28 class VTKRENDERINGOPTIX_EXPORT vtkOptiXCameraNode : 29 public vtkCameraNode 30 { 31 public: 32 static vtkOptiXCameraNode* New(); 33 vtkTypeMacro(vtkOptiXCameraNode, vtkCameraNode); 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 vtkOptiXCameraNode(); 43 ~vtkOptiXCameraNode(); 44 45 private: 46 vtkOptiXCameraNode(const vtkOptiXCameraNode&) = delete; 47 void operator=(const vtkOptiXCameraNode&) = delete; 48 }; 49 50 #endif 51