15 #ifndef ETHERCAT_INTERFACE__EC_SLAVE_HPP_
16 #define ETHERCAT_INTERFACE__EC_SLAVE_HPP_
21 #include <unordered_map>
34 EcSlave(uint32_t vendor_id, uint32_t product_id)
41 virtual const ec_sync_info_t *
syncs() {
return NULL;}
49 virtual const ec_pdo_entry_info_t *
channels() {
return NULL;}
52 typedef std::map<unsigned int, std::vector<unsigned int>>
DomainMap;
55 std::unordered_map<std::string, std::string> slave_paramters,
56 std::vector<double> * state_interface,
57 std::vector<double> * command_interface)
Definition: ec_slave.hpp:32
virtual int assign_activate_dc_sync()
Definition: ec_slave.hpp:45
virtual bool initialized()
Definition: ec_slave.hpp:42
virtual void processData(size_t, uint8_t *)
Definition: ec_slave.hpp:39
uint32_t product_id_
Definition: ec_slave.hpp:65
virtual const ec_pdo_entry_info_t * channels()
Definition: ec_slave.hpp:49
virtual size_t syncSize()
Definition: ec_slave.hpp:47
virtual void set_state_is_operational(bool value)
Definition: ec_slave.hpp:43
std::map< unsigned int, std::vector< unsigned int > > DomainMap
Definition: ec_slave.hpp:52
std::vector< double > * command_interface_ptr_
Definition: ec_slave.hpp:71
EcSlave(uint32_t vendor_id, uint32_t product_id)
Definition: ec_slave.hpp:34
std::vector< SdoConfigEntry > sdo_config
Definition: ec_slave.hpp:67
virtual const ec_sync_info_t * syncs()
Definition: ec_slave.hpp:41
std::vector< double > * state_interface_ptr_
Definition: ec_slave.hpp:70
virtual void domains(DomainMap &) const
Definition: ec_slave.hpp:53
bool is_operational_
Definition: ec_slave.hpp:73
uint32_t vendor_id_
Definition: ec_slave.hpp:64
std::unordered_map< std::string, std::string > paramters_
Definition: ec_slave.hpp:72
virtual ~EcSlave()
Definition: ec_slave.hpp:37
virtual bool setupSlave(std::unordered_map< std::string, std::string > slave_paramters, std::vector< double > *state_interface, std::vector< double > *command_interface)
Definition: ec_slave.hpp:54
Definition: ec_master.hpp:29