blob: 1a29dab10a9eed655db3afbe12ab02750d4ebb2a [file] [log] [blame]
Daniel Petti059be422013-12-14 19:47:42 -08001#ifndef FCR971_INPUT_UART_RECEIVER_H_
2#define FRC971_INPUT_UART_RECEIVER_H_
3
4#include <cstdint>
5#include <termios.h>
6
7#define DATA_STRUCT_NAME DataStruct
8#include <bbb_cape/src/cape/data_struct.h>
9#undef DATA_STRUCT_NAME
10
11namespace bbb {
12
13 class UartReceiver {
14 speed_t baud_rate_;
15 size_t packet_size_, stuffed_size_;
16 int fd_;
17 uint32_t buf_used_;
18 char *buf_;
19
20 public:
21 UartReceiver(speed_t baud_rate, size_t packet_size);
22 ~UartReceiver();
23 // Opens file descriptor, etc.
24 int SetUp();
25 int GetPacket(DataStruct *packet);
26
27 };
28
29} //bbb
30
31#endif