#include <soem_master.h>
◆ SoemMaster()
SoemMaster::SoemMaster |
( |
Notifier & |
notifier, |
|
|
const std::string & |
ifname |
|
) |
| |
|
explicit |
◆ ~SoemMaster()
SoemMaster::~SoemMaster |
( |
| ) |
|
|
override |
◆ abort_all_client_requests()
void SoemMaster::abort_all_client_requests |
( |
| ) |
|
|
inlineoverridevirtual |
◆ checkstate()
void SoemMaster::checkstate |
( |
| ) |
|
◆ disable_all_slaves()
bool SoemMaster::disable_all_slaves |
( |
| ) |
|
|
overridevirtual |
Switch all slaves to PREOP.
- Attention
- Must be implemented as non-blocking!
- Returns
- true on success, false otherwise
Implements EthercatMaster.
◆ execute()
int32_t SoemMaster::execute |
( |
uint64_t |
pending_signals | ) |
|
|
overridevirtual |
Main EtherCAT master loop function to be executed at one millisecond interval.
- Returns
- error if any
Implements EthercatMaster.
◆ get_slaves()
Get all of the available slaves.
- Returns
- map of available slaves
Implements EthercatMaster.
◆ get_slaves_responding()
int SoemMaster::get_slaves_responding |
( |
| ) |
|
|
overridevirtual |
Return the number of slaves actually responding on the bus.
- Returns
- number of responding slaves
Implements EthercatMaster.
◆ is_running()
bool SoemMaster::is_running |
( |
| ) |
|
|
overridevirtual |
Check if the EtherCAT master is currently running.
- Returns
- true if currently running, false otherwise
Implements EthercatMaster.
◆ restart()
size_t SoemMaster::restart |
( |
| ) |
|
|
overridevirtual |
A restart is required only when clients request an EtherCAT state change from PRE_OP to OP. This is presumably done because a new PDO mapping might have been set on a device, necessitating an update of the PDO mapping in the slave instance.
Implements EthercatMaster.
◆ roundtrip()
int SoemMaster::roundtrip |
( |
| ) |
|
◆ start()
size_t SoemMaster::start |
( |
| ) |
|
|
overridevirtual |
Start the EtherCAT master.
- Returns
- the number of initially responding slaves
Implements EthercatMaster.
◆ stop()
void SoemMaster::stop |
( |
| ) |
|
|
overridevirtual |
◆ wait_for_slaves()
void SoemMaster::wait_for_slaves |
( |
Notifier & |
notifier, |
|
|
const std::string & |
ifname |
|
) |
| |
|
static |
◆ slaveMap
std::map< uint16_t, std::unique_ptr< EthercatSlave > > SoemMaster::slaveMap {} |
|
static |
The documentation for this class was generated from the following files: