VTK  9.0.1
vtkDepthImageProcessingPass.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: ParaView
4  Module: vtkDepthImageProcessingPass.h
5 
6  Copyright (c) Sandia Corporation, Kitware Inc.
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 Acknowledgement:
17 This algorithm is the result of joint work by Electricité de France,
18 CNRS, Collège de France and Université J. Fourier as part of the
19 Ph.D. thesis of Christian BOUCHENY.
20 ------------------------------------------------------------------------*/
34 #ifndef vtkDepthImageProcessingPass_h
35 #define vtkDepthImageProcessingPass_h
36 
37 #include "vtkImageProcessingPass.h"
38 #include "vtkRenderingOpenGL2Module.h" // For export macro
39 
41 class vtkDepthPeelingPassLayerList; // Pimpl
43 class vtkTextureObject;
44 
45 class VTKRENDERINGOPENGL2_EXPORT vtkDepthImageProcessingPass : public vtkImageProcessingPass
46 {
47 public:
49  void PrintSelf(ostream& os, vtkIndent indent) override;
50 
51 protected:
56 
61 
71  virtual void RenderDelegate(const vtkRenderState* s, int width, int height, int newWidth,
72  int newHeight, vtkOpenGLFramebufferObject* fbo, vtkTextureObject* colortarget,
73  vtkTextureObject* depthtarget);
74 
81 
82  int Origin[2]; // Viewport origin
83  int Width; // parent window width
84  int Height; // parent window height
85  int W; // this width
86  int H; // this height
87  int ExtraPixels; // w(h) = width(height) + 2*extrapixels
88 
89 private:
91  void operator=(const vtkDepthImageProcessingPass&) = delete;
92 };
93 
94 #endif
Convenient class for post-processing passes.
virtual void RenderDelegate(const vtkRenderState *s, int width, int height, int newWidth, int newHeight, vtkOpenGLFramebufferObject *fbo, vtkTextureObject *colortarget, vtkTextureObject *depthtarget)
Render delegate with a image of different dimensions than the original one.
vtkDepthImageProcessingPass()
Default constructor.
~vtkDepthImageProcessingPass() override
Destructor.
void ReadWindowSize(const vtkRenderState *s)
Read parent size - for sake of code clarity This function is generic, can be useful in multiple image...
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.
a simple class to control print indentation
Definition: vtkIndent.h:34
Internal class which encapsulates OpenGL FramebufferObject.
OpenGL rendering window.
Context in which a vtkRenderPass will render.
abstracts an OpenGL texture object.
@ height
Definition: vtkX3D.h:260