LRAUV  revA
InternalSim.h
Go to the documentation of this file.
1 
12 #ifndef INTERNALSIM_H_
13 #define INTERNALSIM_H_
14 
16 #include "data/Location.h"
17 #include "data/Matrix6x6.h"
18 #include "data/Point3D.h"
19 #include "data/Point6D.h"
20 #include "Simulator.h"
21 #include "utils/AuvMath.h"
22 #include "utils/Datum.h"
23 
26 
40 {
41 
42 public:
44  InternalSim( const Module* module );
45 
47  virtual ~InternalSim();
48 
50  virtual void initialize( void );
51 
53  virtual void run( void );
54 
56  virtual void uninitialize( void );
57 
58 
59 private:
60  // Note that the copy constructor below is private and not given a body.
61  // Any attempt to call it will return a compiler error.
62  InternalSim( const InternalSim& old ); // disallow copy constructor
63 
66 
68  bool ok_;
69 
71  bool haveFix_;
72 
73  // Got a fix once (the first time through)
75 
76  // Depth we call "at the surface"
78 
79  // write State to Slate
80  virtual void publishState();
81 
82  bool loadParams( void );
83 
84  //*------------------- slate variables -----------------------*/
85 
86  // Environmental parameters:
88 
89  // AHRS specific parameters:
96 
97  //----------------------------------------------------------------
98  // Depth specific parameters:
101 
102  //----------------------------------------------------------------
103  // Gps specific parameters:
110 
111  //----------------------------------------------------------------
112  // Tailcone specific parameters:
121 
122  //----------------------------------------------------------------
125 
126  //----------------------------------------------------------------
127  // Communications
130 
131 };
132 
133 #endif /*INTERNALSIM_H_*/
UniversalDataWriter * propOmegaWriter_
Definition: InternalSim.h:117
UniversalDataReader * headingReader_
Definition: InternalSim.h:90
Contains the SyncComponent class definition.
Contains the CodedStr class declaration.
Contains the Matrix6x6 class definition.
bool loadParams(void)
Load VerticalControl parameters.
Definition: InternalSim.cpp:240
A DataAccessor that reads values from the Slate Contains a default dataValue that must not be NULL...
Definition: UniversalDataReader.h:26
UniversalDataReader * latitudeReader_
Definition: InternalSim.h:106
virtual void initialize(void)
Initialize the simulator.
Definition: InternalSim.cpp:94
DataReader * elevatorAngleActionReader_
Definition: InternalSim.h:114
UniversalDataWriter * elevatorAngleWriter_
Definition: InternalSim.h:118
A DataAccessor that reads values from the Slate Contains a default dataValue that must not be NULL...
Definition: DataReader.h:30
Abstract Base class for components that run towards the start of the computation cycle, simulating sensor inputs since the last cycle.
Definition: SyncComponent.h:160
DataReader * massPositionActionReader_
Definition: InternalSim.h:116
A DataAccessor that writes values to the Slate via its associated DataElement.
Definition: UniversalDataWriter.h:24
UniversalDataWriter * depthWriter_
Definition: InternalSim.h:100
UniversalDataWriter * pitchWriter_
Definition: InternalSim.h:94
bool gotFirstFix_
Definition: InternalSim.h:74
A simulator "evolved" from the Altex and Odyssey sims.
Definition: Simulator.h:56
Contains the Point3D class definition.
UniversalDataWriter * latitudeWriter_
Definition: InternalSim.h:108
UniversalDataWriter * longitudeWriter_
Definition: InternalSim.h:109
virtual void publishState()
Definition: InternalSim.cpp:248
SimRunStruct runParams_
Definition: InternalSim.h:128
UniversalDataWriter * rudderAngleWriter_
Definition: InternalSim.h:119
Contains the AuvMath class declaration.
bool ok_
Indicates whether the internal sim is running.
Definition: InternalSim.h:68
virtual ~InternalSim()
Destructor.
Definition: InternalSim.cpp:90
UniversalDataReader * densityReader_
Definition: InternalSim.h:87
Module is the abstract base class for a collection of Component objects that can be contained in a lo...
Definition: Module.h:45
virtual void uninitialize(void)
Uninitialize the simulation.
Definition: InternalSim.cpp:236
A struct of values that is passed from the LRAUV to the Simulator, to run one timestep of the simulat...
Definition: SimRunStruct.h:18
UniversalDataReader * depthReader_
Definition: InternalSim.h:99
UniversalDataReader * latitudeFixReader_
Definition: InternalSim.h:104
UniversalDataReader * longitudeReader_
Definition: InternalSim.h:107
UniversalDataWriter * headingWriter_
Definition: InternalSim.h:93
A struct of values that is passed from the Simulator to the LRAUV, with the results from one timestep...
Definition: SimResultStruct.h:18
DataReader * propOmegaActionReader_
Definition: InternalSim.h:113
Definition: ConfigReader.h:13
Contains the Simulator class declaration.
UniversalDataReader * pitchReader_
Definition: InternalSim.h:91
InternalSim(const Module *module)
Constructor.
Definition: InternalSim.cpp:37
SimResultStruct results_
Definition: InternalSim.h:129
float surfaceThreshold_
Definition: InternalSim.h:77
virtual void run(void)
Run the simulation.
Definition: InternalSim.cpp:127
ConfigReader * surfaceThresholdCfgReader_
Configuration readers.
Definition: InternalSim.h:124
UniversalDataWriter * massPositionWriter_
Definition: InternalSim.h:120
Simulator simulator_
The actual dynamic simulator.
Definition: InternalSim.h:65
UniversalDataWriter * rollWriter_
Definition: InternalSim.h:95
UniversalDataReader * rollReader_
Definition: InternalSim.h:92
Contains the Location class definition.
UniversalDataReader * longitudeFixReader_
Definition: InternalSim.h:105
DataReader * rudderAngleActionReader_
Definition: InternalSim.h:115
bool haveFix_
Indicates whether we have an initial position fix.
Definition: InternalSim.h:71
This simulation initializes whenever a location fix is obtained, and simulates the vehicle's trajecto...
Definition: InternalSim.h:39
Contains the Point6D class definition.