EtherCAT telegram for all _logical addressing_ modes. More...
#include <ethercat_logical_addressed_telegram.h>
Public Member Functions | |
uint32_t | get_adr () const |
Get address field. | |
Logical_Addressing_Telegram (uint8_t a_idx=0x00, uint32_t a_adr=0x00000000, uint16_t a_wkc=0x0000, uint16_t a_datalen=0x0000, const unsigned char *a_data=NULL) | |
Constructor. | |
void | set_adr (uint32_t a_adr) |
Set address field. | |
Protected Member Functions | |
virtual const unsigned char * | build_command_field (const unsigned char *a_buffer)=0 |
virtual const unsigned char * | build_header_head (const unsigned char *a_buffer) |
virtual unsigned char * | dump_command_field (unsigned char *a_buffer) const =0 |
virtual unsigned char * | dump_header_head (unsigned char *a_buffer) const |
Dump first 6 bytes of the header (varying across different telegrams) | |
Private Attributes | |
uint32_t | m_adr |
EtherCAT telegram for all _logical addressing_ modes.
EtherCAT telegram for all _logical addressing_ modes, that is logical read (LRD), logical write (LWR), and logical Read-Write (LRW)
Definition at line 43 of file ethercat_logical_addressed_telegram.h.
Logical_Addressing_Telegram::Logical_Addressing_Telegram | ( | uint8_t | a_idx = 0x00 , |
uint32_t | a_adr = 0x00000000 , |
||
uint16_t | a_wkc = 0x0000 , |
||
uint16_t | a_datalen = 0x0000 , |
||
const unsigned char * | a_data = NULL |
||
) |
Constructor.
a_idx | index |
a_adr | logical address (4 bytes) |
a_wkc | working counter |
a_datalen | data_length |
a_data | data |
virtual const unsigned char* Logical_Addressing_Telegram::build_command_field | ( | const unsigned char * | a_buffer | ) | [protected, pure virtual] |
Implemented in LRW_Telegram, LWR_Telegram, and LRD_Telegram.
virtual const unsigned char* Logical_Addressing_Telegram::build_header_head | ( | const unsigned char * | a_buffer | ) | [protected, virtual] |
Build and check first 6 bytes of the header (varying across different telegrams)
a_buffer | Adress to start writing |
Implements EC_Telegram.
virtual unsigned char* Logical_Addressing_Telegram::dump_command_field | ( | unsigned char * | a_buffer | ) | const [protected, pure virtual] |
Implemented in LRW_Telegram, LWR_Telegram, and LRD_Telegram.
virtual unsigned char* Logical_Addressing_Telegram::dump_header_head | ( | unsigned char * | a_buffer | ) | const [protected, virtual] |
Dump first 6 bytes of the header (varying across different telegrams)
a_buffer | Adress to start writing |
Implements EC_Telegram.
uint32_t Logical_Addressing_Telegram::get_adr | ( | ) | const [inline] |
Get address field.
Definition at line 69 of file ethercat_logical_addressed_telegram.h.
void Logical_Addressing_Telegram::set_adr | ( | uint32_t | a_adr | ) | [inline] |
Set address field.
a_adr | 4 byte logical address |
Definition at line 62 of file ethercat_logical_addressed_telegram.h.
uint32_t Logical_Addressing_Telegram::m_adr [private] |
Definition at line 82 of file ethercat_logical_addressed_telegram.h.