LRAUV  revA
SimSlate Class Reference

SimSlate is a simple, non-logging slate for transferring data between the external simulator and other modules, without worrying about module dependencies. More...

#include <SimSlate.h>

Collaboration diagram for SimSlate:

Classes

class  StaticInitializer
 Makes sure that static _entries are initialized. More...
 

Public Types

enum  SimEntryType {
  ALTITUDE_METER, BUOYANCY_POSITION_CUBIC_METER, DENSITY_KILOGRAM_PER_CUBIC_METER, DEPTH_METER,
  EASTWARD_WATER_VELOCITY_METER_PER_SECOND, ELEVATOR_ANGLE_RADIAN, HEADING_RADIAN, LATITUDE_DEGREE,
  LONGITUDE_DEGREE, MAGNETIC_VARIATION_DEGREE, MASS_CONCENTRATION_OF_CHLOROPHYLL_UG_PER_L, MASS_CONCENTRATION_OF_OXYGEN_UG_PER_L,
  MASS_POSITION_METER, MOLE_CONCENTRATION_OF_NITRATE_UMOLE_PER_L, NORTHWARD_WATER_VELOCITY_METER_PER_SECOND, PITCH_RADIAN,
  PITCH_RATE_RADIAN_PER_SECOND, ROLL_RADIAN, ROLL_RATE_RADIAN_PER_SECOND, PROPELLER_OMEGA_RADIAN_PER_SECOND,
  RUDDER_ANGLE_RADIAN, SALINITY_PART_PER_THOUSAND, SOUND_SPEED_METER_PER_SECOND, TEMPERATURE_DEGREE_CELSIUS,
  VELOCITY_X_WRT_GROUND_METER_PER_SECOND, VELOCITY_Y_WRT_GROUND_METER_PER_SECOND, VELOCITY_Z_WRT_GROUND_METER_PER_SECOND, WATER_VELOCITY_X_METER_PER_SECOND,
  WATER_VELOCITY_Y_METER_PER_SECOND, WATER_VELOCITY_Z_METER_PER_SECOND, YAW_RATE_RADIAN_PER_SECOND, HOMING_SENSOR_RANGE_M,
  HOMING_SENSOR_AZIM_RAD, HOMING_SENSOR_ELEV_RAD, NUM_ENTRIES
}
 

Static Public Member Functions

static bool Clear (SimEntryType simEntryType)
 
template<typename T >
static bool Read (SimEntryType simEntryType, T &value)
 
template<typename T >
static bool Write (SimEntryType simEntryType, const T &value)
 
static const char * ToString (SimEntryType simEntryType)
 

Private Member Functions

 SimSlate ()
 

Static Private Attributes

static double Entries_ []
 
static SimSlate::StaticInitializer StaticInitializer_
 Static instance of StaticDestructor. More...
 

Detailed Description

SimSlate is a simple, non-logging slate for transferring data between the external simulator and other modules, without worrying about module dependencies.

This was created to make interactions with the simulator as transparent as possible.

Constructor & Destructor Documentation

SimSlate::SimSlate ( )
inlineprivate

Member Function Documentation

bool SimSlate::Clear ( SimEntryType  simEntryType)
static
template<typename T >
bool SimSlate::Write ( SimEntryType  simEntryType,
const T &  value 
)
static

References Entries_, and NUM_ENTRIES.

Referenced by ExternalSim::publishState(), and NavChart::run().

Member Data Documentation

double SimSlate::Entries_
staticprivate

Referenced by Clear(), Read(), and Write().

SimSlate::StaticInitializer SimSlate::StaticInitializer_
staticprivate

Static instance of StaticDestructor.


The documentation for this class was generated from the following files: