VTK
vtkOpenGLHardwareSelector.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkOpenGLHardwareSelector.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 =========================================================================*/
27 #ifndef vtkOpenGLHardwareSelector_h
28 #define vtkOpenGLHardwareSelector_h
29 
30 #include "vtkRenderingOpenGL2Module.h" // For export macro
31 #include "vtkHardwareSelector.h"
32 
33 class VTKRENDERINGOPENGL2_EXPORT vtkOpenGLHardwareSelector : public vtkHardwareSelector
34 {
35 public:
38  void PrintSelf(ostream& os, vtkIndent indent);
39 
44  virtual void BeginRenderProp();
45  virtual void EndRenderProp()
47 
52  virtual void RenderCompositeIndex(unsigned int index);
53 
57  virtual void RenderAttributeId(vtkIdType attribid);
58 
63  virtual void RenderProcessId(unsigned int processid);
64 
65  // we need to initialze the depth buffer
66  virtual void BeginSelection();
67 
68 protected:
70  virtual ~vtkOpenGLHardwareSelector();
71 
72  void PreCapturePass(int pass) VTK_OVERRIDE;
73  void PostCapturePass(int pass) VTK_OVERRIDE;
74 
75  // Called internally before and after each prop is rendered
76  // for device specific configuration/preparation etc.
77  virtual void BeginRenderProp(vtkRenderWindow *);
78  virtual void EndRenderProp(vtkRenderWindow *);
79 
80  virtual void SavePixelBuffer(int passNo);
81 
82  // for internal state
83  class vtkInternals;
84  vtkInternals* Internals;
85 
86 private:
87  vtkOpenGLHardwareSelector(const vtkOpenGLHardwareSelector&) VTK_DELETE_FUNCTION;
88  void operator=(const vtkOpenGLHardwareSelector&) VTK_DELETE_FUNCTION;
89 };
90 
91 #endif
vtkIdType
int vtkIdType
Definition: vtkType.h:287
vtkHardwareSelector::New
static vtkHardwareSelector * New()
vtkHardwareSelector.h
vtkHardwareSelector::RenderCompositeIndex
virtual void RenderCompositeIndex(unsigned int index)
Called by any vtkMapper or vtkProp subclass to render a composite-index.
vtkOpenGLHardwareSelector
implements the device specific code of vtkOpenGLHardwareSelector.
Definition: vtkOpenGLHardwareSelector.h:33
vtkHardwareSelector::EndRenderProp
virtual void EndRenderProp()
vtkHardwareSelector::BeginRenderProp
virtual void BeginRenderProp()
Called by the mapper (vtkHardwareSelectionPolyDataPainter) before and after rendering each prop.
vtkHardwareSelector::PrintSelf
void PrintSelf(ostream &os, vtkIndent indent)
Methods invoked by print to print information about the object including superclasses.
vtkHardwareSelector
manager for OpenGL-based selection.
Definition: vtkHardwareSelector.h:78
vtkIndent
a simple class to control print indentation
Definition: vtkIndent.h:39
vtkHardwareSelector::PreCapturePass
virtual void PreCapturePass(int pass)
Definition: vtkHardwareSelector.h:295
vtkHardwareSelector::SavePixelBuffer
virtual void SavePixelBuffer(int passNo)
vtkOpenGLHardwareSelector::EndRenderProp
virtual void EndRenderProp()
Definition: vtkOpenGLHardwareSelector.h:45
vtkHardwareSelector::RenderAttributeId
virtual void RenderAttributeId(vtkIdType attribid)
Called by any vtkMapper or vtkProp subclass to render an attribute's id.
vtkRenderWindow
create a window for renderers to draw into
Definition: vtkRenderWindow.h:86
vtkX3D::index
Definition: vtkX3D.h:246
vtkHardwareSelector::RenderProcessId
virtual void RenderProcessId(unsigned int processid)
Called by any vtkMapper or subclass to render process id.
vtkHardwareSelector::PostCapturePass
virtual void PostCapturePass(int pass)
Definition: vtkHardwareSelector.h:296
vtkHardwareSelector::BeginSelection
virtual void BeginSelection()