VTK  9.7.1
vtkOpenGLFXAAPass.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
23 #ifndef vtkOpenGLFXAAPass_h
24 #define vtkOpenGLFXAAPass_h
25 
26 #include "vtkImageProcessingPass.h"
27 
28 #include "vtkNew.h" // For vtkNew
29 #include "vtkOpenGLFXAAFilter.h" // For vtkOpenGLFXAAFilter
30 #include "vtkRenderingOpenGL2Module.h" // For export macro
31 #include "vtkWrappingHints.h" // For VTK_MARSHALAUTO
32 
33 VTK_ABI_NAMESPACE_BEGIN
34 class vtkFXAAOptions;
35 
36 class VTKRENDERINGOPENGL2_EXPORT VTK_MARSHALAUTO vtkOpenGLFXAAPass : public vtkImageProcessingPass
37 {
38 public:
39  static vtkOpenGLFXAAPass* New();
41  void PrintSelf(ostream& os, vtkIndent indent) override;
42 
46  void Render(const vtkRenderState* s) override;
47 
53  void ReleaseGraphicsResources(vtkWindow* w) override;
54 
55  vtkGetObjectMacro(FXAAOptions, vtkFXAAOptions);
56  virtual void SetFXAAOptions(vtkFXAAOptions*);
57 
58 protected:
59  vtkOpenGLFXAAPass() = default;
60  ~vtkOpenGLFXAAPass() override;
61 
66 
67  vtkFXAAOptions* FXAAOptions = nullptr;
68 
69 private:
70  vtkOpenGLFXAAPass(const vtkOpenGLFXAAPass&) = delete;
71  void operator=(const vtkOpenGLFXAAPass&) = delete;
72 };
73 
74 VTK_ABI_NAMESPACE_END
75 #endif
vtkNew< vtkOpenGLFXAAFilter > FXAAFilter
Graphics resources.
void ReleaseGraphicsResources(vtkWindow *w) override
Release graphics resources and ask components to release their own resources.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
Convenient class for post-processing passes.
Render pass calling the FXAA filter.
window superclass for vtkRenderWindow
Definition: vtkWindow.h:41
Context in which a vtkRenderPass will render.
a simple class to control print indentation
Definition: vtkIndent.h:28
virtual void Render(const vtkRenderState *s)=0
Perform rendering according to a render state s.
#define VTK_MARSHALAUTO
static vtkObject * New()
Create an object with Debug turned off, modified time initialized to zero, and reference counting on...
Configuration for FXAA implementations.