VR-Forces 4.8 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DtOsgFrameTextureBlitterManager.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2019 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 
9 
10 #pragma once
11 
14 
16 
18 
19 #include <osg/observer_ptr>
20 #include <osg/Node>
21 #include <osg/Light>
22 
23 #include <matrix/vlVector.h>
24 
25 #include <boost/unordered_map.hpp>
26 
27 namespace osg
28 {
29  class Light;
30  class LightSource;
31  class State;
32  class StateSet;
33  class Matrixd;
34 }
35 
36 namespace makVrv
37 {
38  class DtGlRenderTexture;
39 
40  class DtGLDeleteObjectManager;
41 
42  class DtChannelManager;
43  class DtChannel;
44 
48  {
49  public:
52 
54  virtual void releaseGLObjects();
56  DtGlRenderTexture* updateAndGetDepthRenderTexture(osg::RenderInfo& renderInfo);
57 
59  static DtOsgFrameTextureBlitterManager& instance(DtDe& de);
60 
62  static const std::string& theClassName();
63 
65  virtual void slot_channelDestroyed(DtChannelManager* channelManager, DtChannel* channel);
66 
67  protected:
70 
73 
74  virtual void flushInvalidCameras(void);
75 
76  virtual void deleteRenderTextureForCamera(const osg::Camera* camera);
77 
78  protected:
80 
82 
84  {
86  virtual ~TextureAndFrame();
89  };
90  typedef std::map<osg::observer_ptr<const osg::Camera>, TextureAndFrame> CameraToRenderTextureMap;
92 
93  // For listening for channel creation
95  };
96 }
Manager to delete GLBuffer in the main thread.
Definition: DtGlDeleteObjectManager.h:33
DtDe & myDe
Definition: DtOsgFrameTextureBlitterManager.h:79
Virtual base class.
Definition: DtVirtualBaseClass.h:22
A helper classes for creating a RTT target, optionally including depth buffer.
Definition: DtGlRenderToTexture.h:31
#define DT_DLL_VRVOSG
Definition: vrvOsg.h:23
int myFrameNumber
Definition: DtOsgFrameTextureBlitterManager.h:88
DtGLDeleteObjectManager & myGLManager
Definition: DtOsgFrameTextureBlitterManager.h:81
The abstract Channel Class.
Definition: DtChannel.h:29
Light class.
Class to manage disconnection of boost connections on deletion.
Definition: DtSignalConnectionManager.h:24
Definition: DtOsgFrameTextureBlitterManager.h:83
std::map< osg::observer_ptr< const osg::Camera >, TextureAndFrame > CameraToRenderTextureMap
Definition: DtOsgFrameTextureBlitterManager.h:90
Base class for handling DtChannels.
Definition: DtChannelManager.h:35
Base class to provide boost signal/slot management.
Contains the DtOsgLightingComponent class.
DtOsgFrameTextureBlitterManager responsible for copying depth buffer to render to target...
Definition: DtOsgFrameTextureBlitterManager.h:47
The DtDe is the core component of any VR-Vantage application.
Definition: DtDe.h:69
CameraToRenderTextureMap myDepthRenderTextureMap
Definition: DtOsgFrameTextureBlitterManager.h:91
DtGlRenderTexture * myTexture
Definition: DtOsgFrameTextureBlitterManager.h:87
DtSignalConnectionManager myConnections
Definition: DtOsgFrameTextureBlitterManager.h:94

Document ID: Generated on Thu Aug 27 10:56:05 EDT 2020 from SVN revision 217100
Copyright © 2005-2020 MAK Technologies. All Rights Reserved (www.mak.com)