Goby v2
|
provides an API to the WHOI Micro-Modem driver More...
#include <goby/acomms/modem_driver.h>
Public Member Functions | |
MMDriver () | |
Default constructor. | |
~MMDriver () | |
Destructor. | |
void | startup (const protobuf::DriverConfig &cfg) |
Starts the driver. More... | |
void | update_cfg (const protobuf::DriverConfig &cfg) |
Update configuration while running (not required to be implemented) | |
void | shutdown () |
Stops the driver. | |
void | do_work () |
See ModemDriverBase::do_work() | |
void | handle_initiate_transmission (const protobuf::ModemTransmission &m) |
See ModemDriverBase::handle_initiate_transmission() | |
int | clk_mode () |
Current clock mode of the modem, necessary for synchronous navigation. | |
bool | is_started () const |
void | set_silent (bool silent) |
void | write_single_cfg (const std::string &s) |
Public Member Functions inherited from goby::acomms::ModemDriverBase | |
virtual | ~ModemDriverBase () |
Public Destructor. | |
int | driver_order () |
Static Public Member Functions | |
static unsigned | packet_frame_count (int rate) |
static unsigned | packet_size (int rate) |
Additional Inherited Members | |
Public Attributes inherited from goby::acomms::ModemDriverBase | |
boost::signals2::signal< void(const protobuf::ModemTransmission &message)> | signal_receive |
Called when a binary data transmission is received from the modem. More... | |
boost::signals2::signal< void(const protobuf::ModemTransmission &message)> | signal_transmit_result |
Called when a transmission is completed. More... | |
boost::signals2::signal< void(protobuf::ModemTransmission *msg)> | signal_data_request |
Called when the modem or modem driver needs data to send. The returned data should be stored in ModemTransmission::frame. More... | |
boost::signals2::signal< void(protobuf::ModemTransmission *msg_request)> | signal_modify_transmission |
Called before the modem driver begins processing a transmission. This allows a third party to modify the parameters of the transmission (such as destination or rate) on the fly. More... | |
boost::signals2::signal< void(const protobuf::ModemRaw &msg)> | signal_raw_incoming |
Called after any message is received from the modem by the driver. Used by the MACManager for auto-discovery of vehicles. Also useful for higher level analysis and debugging of the transactions between the driver and the modem. More... | |
boost::signals2::signal< void(const protobuf::ModemRaw &msg)> | signal_raw_outgoing |
Called after any message is sent from the driver to the modem. Useful for higher level analysis and debugging of the transactions between the driver and the modem. More... | |
Protected Member Functions inherited from goby::acomms::ModemDriverBase | |
ModemDriverBase () | |
Constructor. | |
void | modem_write (const std::string &out) |
write a line to the serial port. More... | |
bool | modem_read (std::string *in) |
read a line from the serial port, including end-of-line character(s) More... | |
void | modem_start (const protobuf::DriverConfig &cfg) |
start the physical connection to the modem (serial port, TCP, etc.). must be called before ModemDriverBase::modem_read() or ModemDriverBase::modem_write() More... | |
void | modem_close () |
closes the serial port. Use modem_start to reopen the port. | |
const std::string & | glog_out_group () const |
const std::string & | glog_in_group () const |
util::LineBasedInterface & | modem () |
use for direct access to the modem | |
Static Protected Attributes inherited from goby::acomms::ModemDriverBase | |
static int | count_ = 0 |
provides an API to the WHOI Micro-Modem driver
Definition at line 41 of file mm_driver.h.
|
virtual |
Starts the driver.
cfg | Configuration for the Micro-Modem driver. DriverConfig is defined in acomms_driver_base.proto, and various extensions specific to the WHOI Micro-Modem are defined in acomms_mm_driver.proto. |
Implements goby::acomms::ModemDriverBase.
Definition at line 76 of file mm_driver.cpp.