VR-Forces 4.7 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DtReadFramebufferCallback.h
Go to the documentation of this file.
1 // ******************************************************************************
2 // ** Copyright (c) 2018 MAK Technologies, Inc.
3 // ** All rights reserved.
4 // ******************************************************************************
5 
9 
10 #pragma once
14 
15 #include <osg/Camera>
16 #include <vector>
17 #include <list>
18 #include <boost/signal.hpp>
19 
20 
21 namespace makVrv
22 {
23  class DtProcessImageTask;
24  class DtOsgChannel;
25 
26  class DtReadFramebufferCallback;
27  class DtEncoderIO;
28 
33  : public osg::Camera::DrawCallback
34  {
35  public:
37  friend class DtVideoStream;
38 
40  virtual ~DtReadFramebufferCallback();
41 
43  virtual void operator()(osg::RenderInfo& renderInfo) const;
44 
45  protected:
46 
49 
51  virtual bool init();
52 
54  virtual void setupPixelBufferObjects( int numBuffers );
55 
57  virtual bool createProcessImageTask( DtDe& de, const DtVideoStream& stream );
58 
60  virtual bool setPixelFormatFromString( const DtUnicode& pxfString );
61 
63  virtual bool setReadBufferFromString( const DtUnicode& rbString );
64 
66  virtual bool setDataTypeFromString( const DtUnicode& dtString );
67 
68  private:
71 
74 
76  DtReadFramebufferCallback& operator=( const DtReadFramebufferCallback& orig );
77 
78  protected:
81 
84 
87 
89  double myFrequency;
90 
93 
95  int myWidth;
96 
98  int myHeight;
99 
101  int myX;
102 
104  int myY;
105 
108 
110  GLenum myDataType;
111 
113  GLenum myReadBuffer;
114 
116  std::vector<unsigned int> myPbos;
117 
120 
123 
125  osg::ref_ptr<osg::Image> myImage;
126 
129 
131  osg::GLExtensions* myGlExtensions;
132 
135 
138 
141 
144  };
145 }

Document ID: Generated on Fri Apr 26 21:53:14 EDT 2019 from SVN revision 197883
Copyright © 2005-2019 VT MAK. All Rights Reserved (www.mak.com)