VR-Forces 4.7 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DtMultiPointEmbarkationUpdater.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  {
48  }
49 
51  virtual ~ObjectEmbarkationPoint();
52 
54  void setSceneObject( DtSceneObject* sceneObject );
55 
57  inline void setPositionOffsets(const std::vector<DtVector>& o)
58  {
59  myPositionOffsets = o;
60  }
61 
63  inline const std::vector<DtVector>& positionOffsets() const
64  {
65  return myPositionOffsets;
66  }
67 
68  // get values of attached point at simTime
69  virtual bool pointLocationAndOrientation( double simTime,
70  DtVector& location, DtTaitBryan& orientation );
71 
72  protected:
73  virtual void slot_embarkedSceneObjectToBeDeleted( const DtUniqueID& );
74  virtual void slot_embarkedUpdaterToBeDeleted( const DtUniqueID& id );
75 
76  protected:
77  std::vector<DtVector> myPositionOffsets;
80  unsigned int myVertex;
81 
82  // When the class is destructed, the scene object may or may not
83  // exist. Using a separate connection variable makes it possible to
84  // 'disconnect' even if the scene object has been deleted.
85  boost::signalslib::connection mySceneObjectConnection;
86  boost::signalslib::connection mySceneObjectUpdaterConnection;
87 
88  };
89 
90  public:
91 
94 
97 
101  virtual void embark( DtUniqueID uniqueID );
102 
104  virtual void setInputPositions( const std::vector<DtVector>& offset );
105 
107  virtual void update( DtTime tNow );
108 
110  virtual void doEmbarkation( DtTime tNow );
111 
112  protected:
117  };
118 }

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)