VTK  9.7.1
vtkWebXRModel.h
Go to the documentation of this file.
1 // SPDX-FileCopyrightText: Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
2 // SPDX-License-Identifier: BSD-3-Clause
12 #ifndef vtkWebXRModel_h
13 #define vtkWebXRModel_h
14 
15 #include "vtkRenderingWebXRModule.h" // For export macro
16 #include "vtkVRModel.h"
17 #include "vtkWrappingHints.h" // For VTK_MARSHALAUTO
18 
19 #include <memory> // for std::unique_ptr
20 
21 VTK_ABI_NAMESPACE_BEGIN
22 class VTKRENDERINGWEBXR_EXPORT VTK_MARSHALAUTO vtkWebXRModel : public vtkVRModel
23 {
24 public:
25  static vtkWebXRModel* New();
26  vtkTypeMacro(vtkWebXRModel, vtkVRModel);
27 
28 protected:
29  vtkWebXRModel();
30  ~vtkWebXRModel() override;
31 
35  void FillModelHelper() override;
36 
40  void SetPositionAndTCoords() override;
41 
45  void CreateTextureObject(vtkOpenGLRenderWindow* win) override;
46 
50  void LoadModelAndTexture(vtkOpenGLRenderWindow* win) override;
51 
52 private:
53  vtkWebXRModel(const vtkWebXRModel&) = delete;
54  void operator=(const vtkWebXRModel&) = delete;
55 
56  std::string AssetPath;
57 
58  class vtkInternals;
59  std::unique_ptr<vtkInternals> Internal;
60 };
61 
62 VTK_ABI_NAMESPACE_END
63 #endif
OpenGL rendering window.
virtual void SetPositionAndTCoords()=0
virtual void CreateTextureObject(vtkOpenGLRenderWindow *win)=0
virtual void FillModelHelper()=0
VR device model.
Definition: vtkVRModel.h:29
virtual void LoadModelAndTexture(vtkOpenGLRenderWindow *win)=0
#define VTK_MARSHALAUTO
WebXR device model.
Definition: vtkWebXRModel.h:22
static vtkObject * New()
Create an object with Debug turned off, modified time initialized to zero, and reference counting on...