VR-Forces 4.8 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DtOsgOcclusionQueryNode.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 
12 #include <vrvOsg/vrvOsg.h>
13 
14 #include <osg/OcclusionQueryNode>
15 
16 #include <osgEarth/CullingUtils>
17 
18 #include <OpenThreads/Mutex>
19 
20 namespace osg
21 {
22  class Group;
23 }
24 
25 namespace makVrv
26 {
27  class DT_DLL_VRVOSG DtOsgOcclusionQueryNode : public osg::OcclusionQueryNode
28  {
29  public:
31  DtOsgOcclusionQueryNode(const DtOsgOcclusionQueryNode & lhs, const osg::CopyOp& copyop);
32  META_Node(makVrv, DtOsgOcclusionQueryNode);
33 
34  virtual void traverseDebug(osgUtil::CullVisitor& cv);
35  virtual size_t calcPathHash(osg::NodeVisitor& nv);
36  virtual void traverseQuery(const osg::Camera* camera, osgUtil::CullVisitor& cv);
37  virtual bool getPassed(const osg::Camera* camera, osg::NodeVisitor& nv);
38 
39  virtual void releaseGLObjects(osg::State* state) const;
40 
41  protected:
42  virtual ~DtOsgOcclusionQueryNode();
43  virtual void initializeGlobalStateIfNecessary(void);
44  protected:
45  static int theInitializerValue;
46  };
47 
49  {
50  public:
51  static void addImgui(osg::Group * renderRoot);
52  static void addImguiOcclusionCullingStats();
53  };
54 
57  class DT_DLL_VRVOSG DtOsgOcclusionQueryNodeFactory : public osgEarth::OcclusionQueryNodeFactory
58  {
59  public:
60 
62  virtual osg::Group * createQueryNode();
63 
65  virtual void setEnabled(bool enabled);
66 
67  protected:
68  bool myEnabled;
69  };
70 };
#define DT_DLL_VRVOSG
Definition: vrvOsg.h:23
Definition: DtOsgOcclusionQueryNode.h:27
bool myEnabled
Definition: DtOsgOcclusionQueryNode.h:68
this class interfaces with osgEarth and allows a slightly modified one to create occlusion nodes for ...
Definition: DtOsgOcclusionQueryNode.h:57
Contains DLL export macros.
static int theInitializerValue
Definition: DtOsgOcclusionQueryNode.h:45
Definition: DtOsgOcclusionQueryNode.h:48

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)