VR-Forces 4.10 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DtDynamicTerrainSequenceNode.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2016 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 
9 
10 #pragma once
11 
12 #include <vrvOsg/vrvOsg.h>
13 
15 
16 #include <vlutil/vlString.h>
17 
18 #include <osg/Group>
19 #include <osg/Sequence>
20 
21 #include <boost/unordered_map.hpp>
22 
23 #include <list>
24 
25 namespace osg
26 {
27  class NodeVisitor;
28 }
29 
30 namespace makVrv
31 {
34  {
35  public:
36  // the current mode
37  osg::Sequence::SequenceMode myMode;
38 
39  // This is the current animation frame
40  int myValue;
41 
42  // time this frame started.
43  double myStart;
44 
45  // how many times to repeat- default param is -1, repeat forever
46  int myNreps;
47 
48  // set to nreps and counts down every traversal,
49  // stopping when it gets to zero.
51  };
52 
63  : public osg::Sequence
64  , public DtMultiReferencedNodeContainer<DtSequenceInstanceState>
65  {
66  public:
69 
76  const osg::CopyOp& copyop=osg::CopyOp::SHALLOW_COPY);
77 
81  DtDynamicTerrainSequenceNode(const osg::Sequence& sequence,
82  const osg::CopyOp& copyop=osg::CopyOp::SHALLOW_COPY);
83 
86 
90  virtual void reset( DynamicTerrain::NodePathHash hashIndex );
91 
92  protected:
93 
100  virtual void traverse(osg::NodeVisitor& nv);
101 
106  virtual void collectState( DynamicTerrain::NodePathHash hashIndex );
107 
111  virtual void instantiateState( DynamicTerrain::NodePathHash hashIndex );
112 
113  protected:
114  };
115 }
osg::Sequence::SequenceMode myMode
Definition: DtDynamicTerrainSequenceNode.h:37
size_t NodePathHash
Typedef used to represent a hash of an OSG Node path to a referenced node.
Definition: DtIndirectSwitchInfo.h:23
#define DT_DLL_VRVOSG
Definition: vrvOsg.h:23
int myNrepsRemain
Definition: DtDynamicTerrainSequenceNode.h:50
int myValue
Definition: DtDynamicTerrainSequenceNode.h:40
int myNreps
Definition: DtDynamicTerrainSequenceNode.h:46
This is eveything we track for each sequence reference.
Definition: DtDynamicTerrainSequenceNode.h:33
Contains makVrv::DtMultiReferencedNodeContainer class.
double myStart
Definition: DtDynamicTerrainSequenceNode.h:43
DtDynamicTerrainSequenceNode replaces an osg::Sequence in a terrain patch (or page) that is tagged wi...
Definition: DtDynamicTerrainSequenceNode.h:62
Contains DLL export macros.
DtMultiReferencedNodeContainer is a class template that it used to provide support for dynamic nodes ...
Definition: DtMultiReferencedNodeContainer.h:42

Document ID: Generated on Tue Sep 21 17:42:52 EDT 2021 from SVN revision 234861
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)