Basic Image AlgorithmS Library  2.8.0
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
ContextPBuffer.hh
1 #ifndef __CONTEXT_PBUFFER_HH__
2 #define __CONTEXT_PBUFFER_HH__
3 
4 #include <OpenGLFramework/RenderingContext/glfPBuffer.hh>
5 #include <GLviewer/RenderContextBase.hh>
6 
7 namespace BIAS {
8  /** \class ContextPBuffer
9  \brief Wrapping class implementation for PBuffer class.
10  \author bartczak
11  \ingroup g_glviewer
12  */
13  class BIASGLviewer_EXPORT ContextPBuffer
14  : public RenderContextBase, public BIAS::glfPBuffer
15  {
16  public:
17  virtual ~ContextPBuffer() { Destroy(); }//Release(); }
18 
19  int Init(unsigned int width, unsigned int height,
20  unsigned int RBits=8, unsigned int GBits=8, unsigned int BBits=8,
21  unsigned int ABits=0, unsigned int DepthBits=24, unsigned int StencilBits=0);
22 
23  int Render();
24  void* Draw(void*) { Render(); return NULL; };
25 
26  int GetImage(BIAS::Image<unsigned char>& Image, bool lock = true);
27 
28  int GetDepthMap(BIAS::Image<float>& Image, const float invalid=0.0, bool lock = true);
29  int GetMetricZMap(BIAS::Image<float>& Image, const float invalid=0.0, bool lock = true);
30 
31  virtual void Redisplay() {Render();}
32 
33  virtual void MakeGLContextCurrent()
35 
36  virtual void SetTimer(unsigned int /*interval*/) {
37  BIASERR("No Timer for PBuffer");}
38  virtual void DeactivateTimer() {
39  BIASERR("No Timer for PBuffer");}
40 
41  };
42 }//end of namespace
43 
44 #endif
void * Draw(void *)
virtual void Redisplay()
Demands a rendering from the Context;.
Wrapping class implementation for PBuffer class.
virtual void MakeGLContextCurrent()
try to make this OpenGl context current
virtual void MakeCurrent()
Makes this context the current target for OpenGL calls.
GLX pbuffer rendering context.
virtual void DeactivateTimer()
deactivate timer
virtual void SetTimer(unsigned int)
activate timer with intervall in ms
Base for all classes creating interface between GL and &quot;window manager&quot;.