Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033 #ifndef __ethercat_slave_handler__
00034 #define __ethercat_slave_handler__
00035
00036 #include "ros_ethercat_eml/ethercat_FSM.h"
00037 #include "ros_ethercat_eml/ethercat_slave_conf.h"
00038
00039
00040 class EtherCAT_AL;
00041
00043
00044 class EtherCAT_SlaveHandler : public EC_ESM, public EtherCAT_SlaveConfig
00045 {
00046
00047 friend class EC_ESM_Ops;
00048 friend class EtherCAT_Router;
00049 friend class EtherCAT_AL;
00050
00051 public:
00053
00065 EtherCAT_SlaveHandler(uint16_t a_ring_position,
00066 uint32_t a_product_code,
00067 uint32_t a_revision,
00068 uint32_t a_serial,
00069 EC_FixedStationAddress a_station_address,
00070 EtherCAT_FMMU_Config * a_fmmu_config,
00071 EtherCAT_PD_Config * a_pd_config,
00072 EtherCAT_MbxConfig * a_mbx_config,
00073 EtherCAT_DataLinkLayer *_m_dll_instance,
00074 EC_Logic *_m_logic_instance,
00075 EtherCAT_PD_Buffer *_m_pdbuf_instance);
00077 EtherCAT_SlaveHandler(uint16_t a_ring_position,
00078 EtherCAT_SlaveConfig * a_sconf,
00079 uint32_t a_serial,
00080 EtherCAT_DataLinkLayer *_m_dll_instance,
00081 EC_Logic *_m_logic_instance,
00082 EtherCAT_PD_Buffer *_m_pdbuf_instance);
00083
00085 uint16_t get_ring_position() const
00086 {
00087 return m_ring_position;
00088 }
00090 uint32_t get_serial() const
00091 {
00092 return m_serial;
00093 }
00094
00096 uint8_t get_mbx_counter();
00097 protected:
00098
00100 uint16_t m_ring_position;
00101
00103 uint32_t m_serial;
00104
00106 uint8_t m_mbx_counter;
00107 };
00108
00109 #endif // __ethercat_slave_handler__
ros_ethercat_eml
Author(s): Tom Panis, Klaas Gadeyne, Bob Koninckx, Austin Hendrix, Manos Nikolaidis
autogenerated on Thu Jul 4 2019 20:01:49