VTK  9.7.1
vtkWebGPUProperty.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
11 #ifndef vtkWebGPUProperty_h
12 #define vtkWebGPUProperty_h
13 
14 #include "vtkProperty.h"
15 
16 #include "vtkRenderingWebGPUModule.h" // For export macro
17 #include "vtkWrappingHints.h" // For VTK_MARSHALAUTO
18 
19 VTK_ABI_NAMESPACE_BEGIN
21 class VTKRENDERINGWEBGPU_EXPORT VTK_MARSHALAUTO vtkWebGPUProperty : public vtkProperty
22 {
23 public:
24  static vtkWebGPUProperty* New();
26  static vtkOverrideAttribute* CreateOverrideAttributes();
28  void PrintSelf(ostream& os, vtkIndent indent) override;
29 
33  void Render(vtkActor* a, vtkRenderer* renderer) override;
34 
38  void BackfaceRender(vtkActor* a, vtkRenderer* renderer) override;
39 
45  void PostRender(vtkActor* a, vtkRenderer* r) override;
46 
52  void ReleaseGraphicsResources(vtkWindow* win) override;
53 
54 protected:
56  ~vtkWebGPUProperty() override;
57 
62  bool RenderTextures(vtkActor* actor, vtkRenderer* renderer);
63 
64 private:
65  vtkWebGPUProperty(const vtkWebGPUProperty&) = delete;
66  void operator=(const vtkWebGPUProperty&) = delete;
67 };
68 
69 #define vtkWebGPUProperty_OVERRIDE_ATTRIBUTES vtkWebGPUProperty::CreateOverrideAttributes()
70 VTK_ABI_NAMESPACE_END
71 #endif
Attribute for vtkObjectFactory overrides.
virtual void Render(vtkActor *, vtkRenderer *)
This method causes the property to set up whatever is required for its instance variables.
represents an object (geometry & properties) in a rendered scene
Definition: vtkActor.h:41
static vtkProperty * New()
Construct object with object color, ambient color, diffuse color, specular color, and edge color whit...
represent surface properties of a geometric object
Definition: vtkProperty.h:59
abstract specification for renderers
Definition: vtkRenderer.h:63
window superclass for vtkRenderWindow
Definition: vtkWindow.h:41
a simple class to control print indentation
Definition: vtkIndent.h:28
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
virtual void PostRender(vtkActor *, vtkRenderer *)
This method is called after the actor has been rendered.
#define VTK_NEWINSTANCE
virtual void BackfaceRender(vtkActor *, vtkRenderer *)
This method renders the property as a backface property.
Definition: vtkProperty.h:93
virtual void ReleaseGraphicsResources(vtkWindow *win)
Release any graphics resources that are being consumed by this property.
#define VTK_MARSHALAUTO
WebGPU property.