provides an API to the WHOI Micro-Modem driver
More...
#include <goby/acomms/modem_driver.h>
|
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...
|
|
| ModemDriverBase () |
| Constructor. More...
|
|
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, bool modem_connection_expected=true) |
| 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. More...
|
|
const std::string & | glog_out_group () const |
|
const std::string & | glog_in_group () const |
|
util::LineBasedInterface & | modem () |
| use for direct access to the modem More...
|
|
static std::atomic< int > | count_ |
|
provides an API to the WHOI Micro-Modem driver
Definition at line 56 of file mm_driver.h.
◆ MMDriver()
goby::acomms::MMDriver::MMDriver |
( |
| ) |
|
◆ ~MMDriver()
goby::acomms::MMDriver::~MMDriver |
( |
| ) |
|
|
override |
◆ clk_mode()
int goby::acomms::MMDriver::clk_mode |
( |
| ) |
|
|
inline |
Current clock mode of the modem, necessary for synchronous navigation.
Definition at line 81 of file mm_driver.h.
◆ do_work()
void goby::acomms::MMDriver::do_work |
( |
| ) |
|
|
overridevirtual |
◆ handle_initiate_transmission()
void goby::acomms::MMDriver::handle_initiate_transmission |
( |
const protobuf::ModemTransmission & |
m | ) |
|
|
overridevirtual |
◆ is_started()
bool goby::acomms::MMDriver::is_started |
( |
| ) |
const |
|
inline |
◆ packet_frame_count()
static unsigned goby::acomms::MMDriver::packet_frame_count |
( |
int |
rate | ) |
|
|
inlinestatic |
◆ packet_size()
static unsigned goby::acomms::MMDriver::packet_size |
( |
int |
rate | ) |
|
|
inlinestatic |
◆ set_silent()
void goby::acomms::MMDriver::set_silent |
( |
bool |
silent | ) |
|
◆ shutdown()
void goby::acomms::MMDriver::shutdown |
( |
| ) |
|
|
overridevirtual |
◆ startup()
void goby::acomms::MMDriver::startup |
( |
const protobuf::DriverConfig & |
cfg | ) |
|
|
overridevirtual |
Starts the driver.
- Parameters
-
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.
◆ update_cfg()
void goby::acomms::MMDriver::update_cfg |
( |
const protobuf::DriverConfig & |
cfg | ) |
|
|
overridevirtual |
◆ write_single_cfg()
void goby::acomms::MMDriver::write_single_cfg |
( |
const std::string & |
s | ) |
|
The documentation for this class was generated from the following file: