13 std::vector<std::string> ipAddresses_;
14 std::atomic_bool running_;
15 bool pdo_communication_possible_ =
false;
36 static std::map<uint16_t, std::unique_ptr<EthercatSlave>>
slaveMap;
38 const std::vector<std::string> ipAddresses);
40 size_t start()
override;
43 int32_t
execute(uint64_t pending_signals)
override;
46 std::list<VirtualDevice*>
get_slaves()
override;
49 const std::vector<std::string> ipAddresses);
Definition ethercat_master.h:9
size_t start() override
Start the EtherCAT master.
Definition ethernet_master.cc:50
bool disable_all_slaves() override
Switch all slaves to PREOP.
Definition ethernet_master.cc:111
EthernetMaster(Notifier ¬ifier, const std::vector< std::string > ipAddresses)
Definition ethernet_master.cc:10
int32_t execute(uint64_t pending_signals) override
Main EtherCAT master loop function to be executed at one millisecond interval.
Definition ethernet_master.cc:83
std::list< VirtualDevice * > get_slaves() override
Get all of the available slaves.
Definition ethernet_master.cc:103
static std::map< uint16_t, std::unique_ptr< EthercatSlave > > slaveMap
Static map of EtherCAT slave instances.
Definition ethernet_master.h:8
bool is_running() override
Check if the EtherCAT master is currently running.
Definition ethernet_master.cc:99
size_t restart() override
Returns the number of EtherCAT slaves during a restart.
Definition ethernet_master.cc:81
~EthernetMaster() override
Definition ethernet_master.cc:45
void stop() override
Stop the EtherCAT master.
Definition ethernet_master.cc:61
int get_slaves_responding() override
Return the number of slaves actually responding on the bus.
Definition ethernet_master.cc:101
static void wait_for_slaves(Notifier ¬ifier, const std::vector< std::string > ipAddresses)
Definition ethernet_master.cc:117