VR-Forces 4.6 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DtEmbarkationUpdater.h
Go to the documentation of this file.
1 /*****************************************************************************
2 * Copyright (c) 2017 MAK Technologies, Inc.
3 * All rights reserved.
4 *****************************************************************************/
5 
9 
10 #pragma once
11 
12 #include <vrvCore/vrvCore.h>
13 #include <vrvCore/DtUniqueID.h>
15 
16 #include <matrix/vlVector.h>
17 #include <matrix/vlTaitBryan.h>
18 
19 #include <vector>
20 #include <list>
21 
22 namespace makVrv
23 {
24 
25  class DtDe;
26 
34  {
35  public:
36 
39  {
40  public:
41 
44  : mySceneObject( 0 )
45  , myVertex( 0 )
46  , myUpdater( 0 )
47  , myPositionOffset( DtVector::zero() )
48  , mySceneObjectId( 0 )
49  , myDe( de )
50  {
51  }
52 
54  virtual ~ObjectEmbarkationPoint();
55 
57  void setSceneObject( DtSceneObject* sceneObject );
58 
60  inline void setPositionOffset(const DtVector& o)
61  {
62  myPositionOffset = o;
63  }
64 
66  inline const DtVector& positionOffset() const
67  {
68  return myPositionOffset;
69  }
70 
71  // get values of attached point at simTime
72  virtual bool pointLocationAndOrientation( double simTime,
73  DtVector& location, DtTaitBryan& orientation );
74 
75  protected:
76  virtual void slot_embarkedSceneObjectToBeDeleted( const DtUniqueID& );
77  virtual void slot_embarkedUpdaterToBeDeleted( const DtUniqueID& id );
78 
79  protected:
83  unsigned int myVertex;
86 
87  // When the class is destructed, the scene object may or may not
88  // exist. Using a separate connection variable makes it possible to
89  // 'disconnect' even if the scene object has been deleted.
90  boost::signalslib::connection mySceneObjectConnection;
91  boost::signalslib::connection mySceneObjectUpdaterConnection;
92  };
93 
94  public:
95 
98 
100  virtual ~DtEmbarkationUpdater();
101 
105  virtual void embark( DtUniqueID uniqueID );
106 
108  virtual void setPositionOffset( const DtVector& offset );
109 
111  virtual void update( DtTime tNow );
112 
114  virtual void doEmbarkation( DtTime tNow );
115 
116  protected:
118  };
119 }

Document ID: Generated on Thu Apr 12 03:15:37 EDT 2018 from SVN revision 187986
Copyright © 2005-2018 VT MÄK. All Rights Reserved (www.mak.com)