ICAROUS
All Classes Namespaces Files Functions Variables Enumerations Enumerator Macros Modules Pages
port_lib.h
Go to the documentation of this file.
1
5#ifndef _port_lib_h_
6#define _port_lib_h_
7
8/************************************************************************
9** Includes
10*************************************************************************/
11#include "cfe.h"
12#include <string.h>
13#include <errno.h>
14#include <unistd.h>
15#include <stdbool.h>
16#include <fcntl.h> // File control definitions
17#include <termios.h> // POSIX terminal control definitions
18#include "network_includes.h"
19#include "mavlink/ardupilotmega/mavlink.h"
20
21#define BUFFER_LENGTH 1000
22
27typedef enum {
29 SERIAL
31
32
37typedef struct{
38 int id;
40 struct sockaddr_in target_addr;
41 struct sockaddr_in self_addr;
42 socklen_t recvlen;
43 int sockId;
44 int portin;
45 int portout;
46 char target[50];
47 char recvbuffer[BUFFER_LENGTH];
49}port_t;
50
55int32 Port_LibInit(void);
56
62
67int InitializeSerialPort(port_t* prt,bool should_block);
68
74void writeMavlinkData(port_t* prt,mavlink_message_t *message);
75
80int readPort(port_t *prt);
81
88void writeData(port_t* prt,char* sendbuffer,int datalength);
89
90#endif
91
int readPort(port_t *prt)
Definition: port_lib.c:123
int InitializeSerialPort(port_t *prt, bool should_block)
Definition: port_lib.c:55
void writeData(port_t *prt, char *sendbuffer, int datalength)
Definition: port_lib.c:142
portType_e
Definition: port_lib.h:27
@ SOCKET
enum value SOCKET
Definition: port_lib.h:28
@ SERIAL
enum value SERIAL
Definition: port_lib.h:29
int32 Port_LibInit(void)
Definition: port_lib.c:14
void InitializeSocketPort(port_t *prt)
Definition: port_lib.c:28
#define BUFFER_LENGTH
Mavlink message receive buffer size.
Definition: port_lib.h:21
void writeMavlinkData(port_t *prt, mavlink_message_t *message)
Definition: port_lib.c:155
Structure to hold port attributes.
Definition: port_lib.h:37
socklen_t recvlen
length of received host properties
Definition: port_lib.h:42
portType_e portType
port type
Definition: port_lib.h:39
int baudrate
baud rate only if a serial port
Definition: port_lib.h:48
int portin
input socket
Definition: port_lib.h:44
int portout
output socket
Definition: port_lib.h:45
int id
id
Definition: port_lib.h:38
int sockId
socket id
Definition: port_lib.h:43