12 #ifndef ACOUSTICMODEM_BENTHOS_ATM900_H
13 #define ACOUSTICMODEM_BENTHOS_ATM900_H
DataWriter * remoteAddressWriter_
Definition: AcousticModem_Benthos_ATM900.h:102
bool isDataRequested()
Definition: AcousticModem_Benthos_ATM900.cpp:487
virtual RunState paused()
Should eventually follow a PAUSE request: should set continueTime.
Definition: AcousticModem_Benthos_ATM900.cpp:314
Contains the SyncComponent class definition.
bool gotAcousticWakeup_
Definition: AcousticModem_Benthos_ATM900.h:124
virtual RunState starting()
Might follow a STOP...START sequence.
Definition: AcousticModem_Benthos_ATM900.cpp:180
Contains the LoadControl class declaration.
virtual ~AcousticModem_Benthos_ATM900()
Definition: AcousticModem_Benthos_ATM900.cpp:88
Timestamp modemTransmitPingTime_
Definition: AcousticModem_Benthos_ATM900.h:130
A DataAccessor that reads values from the Slate Contains a default dataValue that must not be NULL...
Definition: UniversalDataReader.h:26
Timespan powerDownTimeout_
Definition: AcousticModem_Benthos_ATM900.h:115
virtual void uninitialize()
Provide a space for uninitialization.
Definition: AcousticModem_Benthos_ATM900.cpp:108
DataReader * queryAddressRequestedReader_
Definition: AcousticModem_Benthos_ATM900.h:94
bool gotResponseNotReceived_
Definition: AcousticModem_Benthos_ATM900.h:124
Abstract Base class for components that collect data for use later in the computation cycle...
Definition: SyncComponent.h:172
void readAndParseResponses(void)
Definition: AcousticModem_Benthos_ATM900.cpp:572
bool localAddressSettingSent_
Definition: AcousticModem_Benthos_ATM900.h:120
Timestamp requestRange(const int remoteAddress, const int numPings)
Definition: AcousticModem_Benthos_ATM900.cpp:528
bool gotNewQuery(void)
Definition: AcousticModem_Benthos_ATM900.cpp:500
DataWriter * rangeRequestReceivedWriter_
Definition: AcousticModem_Benthos_ATM900.h:101
A DataAccessor that reads values from the Slate Contains a default dataValue that must not be NULL...
Definition: DataReader.h:30
int numPingsRequested_
Definition: AcousticModem_Benthos_ATM900.h:122
int remoteAddressRequested_
Definition: AcousticModem_Benthos_ATM900.h:122
bool debug_
Definition: AcousticModem_Benthos_ATM900.h:107
A DataAccessor that writes values to the Slate via its associated DataElement.
Definition: UniversalDataWriter.h:24
double range_
Definition: AcousticModem_Benthos_ATM900.h:127
int remoteAddress_
Definition: AcousticModem_Benthos_ATM900.h:132
LoadControl loadControl_
Definition: AcousticModem_Benthos_ATM900.h:112
Timestamp modemReceivePingTime_
Definition: AcousticModem_Benthos_ATM900.h:130
virtual RunState stop()
Initial state – can be later followed by START.
Definition: AcousticModem_Benthos_ATM900.cpp:415
RunState
Definition: Component.h:115
Timestamp transmitPingTime_
Definition: AcousticModem_Benthos_ATM900.h:129
Contains the UartStream class declaration.
virtual RunState resume()
Resume from PAUSE.
Definition: AcousticModem_Benthos_ATM900.cpp:322
char deviceResponse_[396]
Definition: AcousticModem_Benthos_ATM900.h:109
int localAddress_
Definition: AcousticModem_Benthos_ATM900.h:132
UniversalDataWriter * rxTimeWriter_
Definition: AcousticModem_Benthos_ATM900.h:99
Timespan class, represents a delta of time.
Definition: Timestamp.h:248
bool gotDebugTxMessage_
Definition: AcousticModem_Benthos_ATM900.h:124
bool commandModeSent_
Definition: AcousticModem_Benthos_ATM900.h:120
DataReader * numberOfPingsRequestedReader_
Definition: AcousticModem_Benthos_ATM900.h:95
DataWriter * acousticWakeupWriter_
Definition: AcousticModem_Benthos_ATM900.h:98
ConfigReader * verbosityCfgReader_
Definition: AcousticModem_Benthos_ATM900.h:90
Implements both InStream and OutStream for the LPC3XXX Standard UART.
Definition: UartStream.h:26
double modemTransmitPingEpochSeconds_
Definition: AcousticModem_Benthos_ATM900.h:131
A DataAccessor that writes values to the Slate via its associated DataElement.
Definition: DataWriter.h:27
bool parseDebugRxMessage(void)
Definition: AcousticModem_Benthos_ATM900.cpp:646
double modemReceivePingEpochSeconds_
Definition: AcousticModem_Benthos_ATM900.h:131
Definition: ElementURI.h:166
DataWriter * rangeWriter_
Definition: AcousticModem_Benthos_ATM900.h:104
bool gotRangeMessage_
Definition: AcousticModem_Benthos_ATM900.h:124
Timestamp startTime_
Definition: AcousticModem_Benthos_ATM900.h:113
Timestamp powerOffTimeStart_
Definition: AcousticModem_Benthos_ATM900.h:114
void logVoltageAndCurrent()
Definition: AcousticModem_Benthos_ATM900.cpp:465
Timestamp dataTimestamp_
Definition: AcousticModem_Benthos_ATM900.h:128
Module is the abstract base class for a collection of Component objects that can be contained in a lo...
Definition: Module.h:45
UartStream uart_
Definition: AcousticModem_Benthos_ATM900.h:117
int verbosity_
Definition: AcousticModem_Benthos_ATM900.h:108
AcousticModem_Benthos_ATM900(const Module *module)
Definition: AcousticModem_Benthos_ATM900.cpp:25
DataWriter * localAddressWriter_
Definition: AcousticModem_Benthos_ATM900.h:103
int commRate_
Definition: AcousticModem_Benthos_ATM900.h:125
int clearUserPrompt(void)
Definition: AcousticModem_Benthos_ATM900.cpp:559
This class allows one to control loads on a load controller channel.
Definition: LoadControl.h:24
Definition: ConfigReader.h:13
virtual void run()
The actual "payload" of the component.
Definition: AcousticModem_Benthos_ATM900.cpp:93
Timestamp receivePingTime_
Definition: AcousticModem_Benthos_ATM900.h:129
int numPingsReceived_
Definition: AcousticModem_Benthos_ATM900.h:123
int localAddressCfgSetting_
Definition: AcousticModem_Benthos_ATM900.h:119
bool gotDebugRxMessage_
Definition: AcousticModem_Benthos_ATM900.h:124
Contains the Logger class definition.
bool parseRangeMessage(void)
Definition: AcousticModem_Benthos_ATM900.cpp:684
void readConfig()
Definition: AcousticModem_Benthos_ATM900.cpp:98
Timespan acousticResponseTimeout_
Definition: AcousticModem_Benthos_ATM900.h:121
virtual RunState runnable()
Should eventually follow a START request or RESETTING.
Definition: AcousticModem_Benthos_ATM900.cpp:347
ConfigReader * localAddressCfgReader_
Definition: AcousticModem_Benthos_ATM900.h:91
virtual RunState resetting()
Might occur in case of Error.
Definition: AcousticModem_Benthos_ATM900.h:64
void publishData(void)
Definition: AcousticModem_Benthos_ATM900.cpp:695
virtual ConfigURI getConfigURI(ConfigOption configOption) const
Should return [myNamespace]::SIMULATE_HARDWARE, or [myNamespace]::POWER, etc.
Definition: AcousticModem_Benthos_ATM900.cpp:554
bool gotRangeRequestMessage_
Definition: AcousticModem_Benthos_ATM900.h:124
virtual RunState stopped()
Initial state – can be later followed by START.
Definition: AcousticModem_Benthos_ATM900.cpp:441
UniversalDataWriter * txTimeWriter_
Definition: AcousticModem_Benthos_ATM900.h:100
bool localAddressSettingAcknowledged_
Definition: AcousticModem_Benthos_ATM900.h:120
virtual RunState start()
Do what needs to be done to run Similar to initialize, in old init/run/uninit sequence.
Definition: AcousticModem_Benthos_ATM900.cpp:127
Provides software interface to the Benthos ATM-900 Acoustic Modem.
Definition: AcousticModem_Benthos_ATM900.h:31
virtual RunState resuming()
Might follow a PAUSE...RESUME sequence.
Definition: AcousticModem_Benthos_ATM900.cpp:335
bool commandModeAcknowledged_
Definition: AcousticModem_Benthos_ATM900.h:120
ConfigOption
Definition: Component.h:456
bool parseDebugTxMessage(void)
Definition: AcousticModem_Benthos_ATM900.cpp:665
Represents absolute times.
Definition: Timestamp.h:31
virtual RunState stopping()
Might follow a STOP request.
Definition: AcousticModem_Benthos_ATM900.cpp:424
Timespan poTimeout_
Definition: AcousticModem_Benthos_ATM900.h:115
virtual RunState pause()
Pause for a short period (indicated by pauseTime)
Definition: AcousticModem_Benthos_ATM900.cpp:305