VR-Forces 4.5 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
maintainFormationMonitor.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2004 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
8 
11 
12 #pragma once
13 
14 #include "map"
15 #include <matrix/vlVector.h>
16 
17 class DtVrfObject;
19 class DtFormationState;
20 class DtDcm;
21 
30 {
31 public:
32 
34  {
35  DtUndefinedPosition = -1,
38  DtAheadOfPosition
39  };
40 
42  typedef std::map<DtVrfObject*, DtPositionStatus> DtAggregatePositionStatusMap;
43 
45 
47 
49 
50  virtual ~DtMaintainFormationMonitor();
51 
52  virtual void tick();
53 
57  virtual void setCatchupFactor(double catchUpFactor);
58  virtual double catchupFactor() const;
59 
64  virtual void setSlowDownFactor(double slowDownFactor);
65  virtual double slowDownFactor() const;
66 
73  virtual void setInPositionTolerance(double tolerance);
74  virtual double inPositionTolerance() const;
75 
77  virtual bool positionStatusHasChanged(DtVrfObject* subordinate,
78  DtPositionStatus status);
79 
81  virtual DtPositionStatus getPositionStatus(DtVrfObject* subordinate);
82 
86  virtual void setPositionStatus(DtVrfObject* entity,
88 
90  virtual void printPositionStatus();
91 
92 protected:
93 
94  virtual DtPositionStatus positionStatus(const DtVector& geocentricOrigin,
95  const DtDcm& geocentricOrientation,
96  const DtVector& geocentricTestPosition,
97  const DtVector& idealBodyCoordinatesPosition,
98  double inPositionTolerance);
99 
100  virtual void sendSpeedControl(DtVrfObject* entity, DtPositionStatus status);
101 
102  virtual void sendSetSpeedRequest(const DtVrfObject& entity, double speed);
103 
104 protected:
105 
109 
113 
115 };

Document ID: Generated on Thu Mar 23 18:54:12 EDT 2017 from SVN revision 174804
Copyright © 2005-2017 VT MÄK. All Rights Reserved (www.mak.com)