urtps microRTPS_transport.h code style

This commit is contained in:
Daniel Agar
2017-07-28 12:43:34 -04:00
committed by Lorenz Meier
parent 62fc3fb5ab
commit 2151890e50
2 changed files with 50 additions and 52 deletions
-1
View File
@@ -15,7 +15,6 @@ exec find src \
-path src/lib/ecl -prune -o \
-path src/lib/matrix -prune -o \
-path src/lib/micro-CDR -prune -o \
-path src/modules/micrortps_bridge/build -prune -o \
-path src/modules/micrortps_bridge/micrortps_agent -prune -o \
-path src/modules/commander -prune -o \
-path src/modules/sdlog2 -prune -o \
+50 -51
View File
@@ -40,80 +40,79 @@
class Transport_node
{
public:
Transport_node();
virtual ~Transport_node();
Transport_node();
virtual ~Transport_node();
virtual int init() {return 0;}
virtual uint8_t close() {return 0;}
ssize_t read(uint8_t* topic_ID, char out_buffer[], size_t buffer_len);
ssize_t write(const uint8_t topic_ID, char buffer[], size_t length);
virtual int init() {return 0;}
virtual uint8_t close() {return 0;}
ssize_t read(uint8_t *topic_ID, char out_buffer[], size_t buffer_len);
ssize_t write(const uint8_t topic_ID, char buffer[], size_t length);
protected:
virtual ssize_t node_read(void *buffer, size_t len) = 0;
virtual ssize_t node_write(void *buffer, size_t len) = 0;
virtual bool fds_OK() = 0;
uint16_t crc16_byte(uint16_t crc, const uint8_t data);
uint16_t crc16(uint8_t const *buffer, size_t len);
virtual ssize_t node_read(void *buffer, size_t len) = 0;
virtual ssize_t node_write(void *buffer, size_t len) = 0;
virtual bool fds_OK() = 0;
uint16_t crc16_byte(uint16_t crc, const uint8_t data);
uint16_t crc16(uint8_t const *buffer, size_t len);
protected:
uint32_t rx_buff_pos;
char rx_buffer[1024] = {};
uint32_t rx_buff_pos;
char rx_buffer[1024] = {};
private:
struct __attribute__((packed)) Header
{
char marker[3];
uint8_t topic_ID;
uint8_t seq;
uint8_t payload_len_h;
uint8_t payload_len_l;
uint8_t crc_h;
uint8_t crc_l;
};
struct __attribute__((packed)) Header {
char marker[3];
uint8_t topic_ID;
uint8_t seq;
uint8_t payload_len_h;
uint8_t payload_len_l;
uint8_t crc_h;
uint8_t crc_l;
};
};
class UART_node: public Transport_node
{
public:
UART_node(const char *uart_name, uint32_t baudrate, uint32_t poll_ms);
virtual ~UART_node();
UART_node(const char *uart_name, uint32_t baudrate, uint32_t poll_ms);
virtual ~UART_node();
int init();
uint8_t close();
int init();
uint8_t close();
protected:
ssize_t node_read(void *buffer, size_t len);
ssize_t node_write(void *buffer, size_t len);
bool fds_OK();
ssize_t node_read(void *buffer, size_t len);
ssize_t node_write(void *buffer, size_t len);
bool fds_OK();
int uart_fd;
char uart_name[64] = {};
uint32_t baudrate;
uint32_t poll_ms;
struct pollfd poll_fd[1] = {};
int uart_fd;
char uart_name[64] = {};
uint32_t baudrate;
uint32_t poll_ms;
struct pollfd poll_fd[1] = {};
};
class UDP_node: public Transport_node
{
public:
UDP_node(uint16_t udp_port_recv, uint16_t udp_port_send);
virtual ~UDP_node();
UDP_node(uint16_t udp_port_recv, uint16_t udp_port_send);
virtual ~UDP_node();
int init();
uint8_t close();
int init();
uint8_t close();
protected:
int init_receiver(uint16_t udp_port);
int init_sender(uint16_t udp_port);
ssize_t node_read(void *buffer, size_t len);
ssize_t node_write(void *buffer, size_t len);
bool fds_OK();
int init_receiver(uint16_t udp_port);
int init_sender(uint16_t udp_port);
ssize_t node_read(void *buffer, size_t len);
ssize_t node_write(void *buffer, size_t len);
bool fds_OK();
int sender_fd;
int receiver_fd;
uint16_t udp_port_recv;
uint16_t udp_port_send;
struct sockaddr_in sender_outaddr;
struct sockaddr_in receiver_inaddr;
struct sockaddr_in receiver_outaddr;
int sender_fd;
int receiver_fd;
uint16_t udp_port_recv;
uint16_t udp_port_send;
struct sockaddr_in sender_outaddr;
struct sockaddr_in receiver_inaddr;
struct sockaddr_in receiver_outaddr;
};