LRAUV  revA
Supervisor

This module includes the Supervisor ("main" component in the vehicle software), the ControlThread, which runs periodically to execute the computation cycle, the CommandLine for dealing with human input (from the keyboard and via satellite), as well as registries of running components and mission components currently loaded. More...

Classes

class  BehaviorRegistry
 Keeps track of all MissionComponents that could be created and loaded. More...
 
class  ComponentRegistry
 Keeps track of all Components currently loaded and their assignment to handlers. More...
 
struct  ComponentRegistry::ComponentRegistryEntry
 A structure for containing all the ComponentRegistry's "entry" about a component. More...
 
class  SyncHandler
 The SyncHandler and ControlThread are a bit of a strange arrangement. More...
 
class  CommandLine
 Provides a simple command line interface to the LRAUV. More...
 
class  CommandLine_Test
 Unit tests for CommandLine class. More...
 
class  ControlThread
 The periodic "control thread". More...
 
class  CycleStarter
 The CycleStarter's only purpose is to send its CycleStartEntry_ to its logger_ at the start of every computation cycle. More...
 
class  DataReceiver
 Handles data that is sent to the vehicle. More...
 
class  Supervisor
 The supervisor is the "main" component in the vehicle software. More...
 

Enumerations

enum  CommandLine::BurnMode { CommandLine::BURN_OFF, CommandLine::BURN_ON, CommandLine::BURN_SECONDS }
 
enum  CommandLine::ConversationMode { CommandLine::CONVERSATION_SHOW, CommandLine::CONVERSATION_START, CommandLine::CONVERSATION_STOP }
 
enum  CommandLine::ConfigSetMode { CommandLine::CONFIG_SET_LIST, CommandLine::CONFIG_SET_RELOAD, CommandLine::CONFIG_SET_CONFIG, CommandLine::CONFIG_SET_LOGGING }
 
enum  CommandLine::FailComponentMode {
  CommandLine::FAIL_COMPONENT_LIST, CommandLine::FAIL_COMPONENT_SHOW, CommandLine::FAIL_COMPONENT_NONE, CommandLine::FAIL_COMPONENT_HARD,
  CommandLine::FAIL_COMPONENT_SOFT, CommandLine::FAIL_COMPONENT_SEGFAULT
}
 
enum  CommandLine::FailVariableMode {
  CommandLine::FAIL_VARIABLE_LIST, CommandLine::FAIL_VARIABLE_SHOW, CommandLine::FAIL_VARIABLE_UNAVAILABLE, CommandLine::FAIL_VARIABLE_AVAILABLE,
  CommandLine::FAIL_VARIABLE_INVALID, CommandLine::FAIL_VARIABLE_VALID
}
 
enum  CommandLine::QuickMode { CommandLine::QUICK_SHOW, CommandLine::QUICK_ON, CommandLine::QUICK_OFF }
 
enum  CommandLine::ReportAddMode { CommandLine::REPORT_ADD_MOD, CommandLine::REPORT_ADD_TOUCH, CommandLine::REPORT_ADD_PERIODIC }
 
enum  CommandLine::RestartType { CommandLine::RESTART_APPLICATION, CommandLine::RESTART_HARDWARE, CommandLine::RESTART_LOGS, CommandLine::RESTART_SYSTEM }
 
enum  CommandLine::RetransmitType { CommandLine::RETRANSMIT_SBD }
 
enum  CommandLine::ScheduleType {
  CommandLine::SCHEDULE_ASAP, CommandLine::SCHEDULE_CLEAR, CommandLine::SCHEDULE_LIST, CommandLine::SCHEDULE_NEXT,
  CommandLine::SCHEDULE_PAUSE, CommandLine::SCHEDULE_REMOVE, CommandLine::SCHEDULE_RESUME, CommandLine::SCHEDULE_TIME
}
 
enum  DataReceiver::BinaryTransferFlags {
  DataReceiver::FILE_START = 0x00, DataReceiver::FILE_PART = 0x01, DataReceiver::FILE_MEDIUM_OFFSET = 0x02, DataReceiver::FILE_LARGE_OFFSET = 0x04,
  DataReceiver::FILE_FLAG = 0x80
}
 

Detailed Description

This module includes the Supervisor ("main" component in the vehicle software), the ControlThread, which runs periodically to execute the computation cycle, the CommandLine for dealing with human input (from the keyboard and via satellite), as well as registries of running components and mission components currently loaded.

Enumeration Type Documentation

Enumerator
FILE_START 
FILE_PART 
FILE_MEDIUM_OFFSET 
FILE_LARGE_OFFSET 
FILE_FLAG 
enum CommandLine::BurnMode
protected
Enumerator
BURN_OFF 
BURN_ON 
BURN_SECONDS 
Enumerator
CONFIG_SET_LIST 
CONFIG_SET_RELOAD 
CONFIG_SET_CONFIG 
CONFIG_SET_LOGGING 
Enumerator
CONVERSATION_SHOW 
CONVERSATION_START 
CONVERSATION_STOP 
Enumerator
FAIL_COMPONENT_LIST 
FAIL_COMPONENT_SHOW 
FAIL_COMPONENT_NONE 
FAIL_COMPONENT_HARD 
FAIL_COMPONENT_SOFT 
FAIL_COMPONENT_SEGFAULT 
Enumerator
FAIL_VARIABLE_LIST 
FAIL_VARIABLE_SHOW 
FAIL_VARIABLE_UNAVAILABLE 
FAIL_VARIABLE_AVAILABLE 
FAIL_VARIABLE_INVALID 
FAIL_VARIABLE_VALID 
enum CommandLine::QuickMode
protected
Enumerator
QUICK_SHOW 
QUICK_ON 
QUICK_OFF 
Enumerator
REPORT_ADD_MOD 
REPORT_ADD_TOUCH 
REPORT_ADD_PERIODIC 
enum CommandLine::RestartType
protected
Enumerator
RESTART_APPLICATION 
RESTART_HARDWARE 
RESTART_LOGS 
RESTART_SYSTEM 
Enumerator
RETRANSMIT_SBD 
enum CommandLine::ScheduleType
protected
Enumerator
SCHEDULE_ASAP 
SCHEDULE_CLEAR 
SCHEDULE_LIST 
SCHEDULE_NEXT 
SCHEDULE_PAUSE 
SCHEDULE_REMOVE 
SCHEDULE_RESUME 
SCHEDULE_TIME