Main Page
Related Pages
Namespaces
Namespace List
Namespace Members
All
b
c
d
e
f
i
m
n
o
p
s
t
v
w
Functions
Variables
Typedefs
Enumerations
Enumerator
b
c
f
i
m
o
s
t
v
w
Classes
Class List
Class Hierarchy
Class Members
All
a
b
c
d
e
f
g
h
i
l
m
n
o
p
r
s
t
u
v
w
x
y
~
Functions
a
c
d
e
f
g
i
n
o
p
r
s
u
v
~
Variables
a
b
c
d
e
f
h
i
m
n
p
r
s
t
v
w
x
y
Typedefs
Enumerations
Enumerator
Files
File List
File Members
All
a
b
c
g
m
s
t
Functions
m
t
Macros
include
create
serial_stream.h
Go to the documentation of this file.
1
32
// Based on example from:
33
// https://github.com/labust/labust-ros-pkg/wiki/Create-a-Serial-Port-application
34
35
#ifndef CREATE_SERIAL_STREAM_H
36
#define CREATE_SERIAL_STREAM_H
37
38
#include <memory>
39
40
#include "
create/data.h
"
41
#include "
create/types.h
"
42
#include "
create/util.h
"
43
#include "
create/serial.h
"
44
45
namespace
create
{
46
class
SerialStream
:
public
Serial
{
47
private
:
48
enum
ReadState
{
49
READ_HEADER
,
50
READ_NBYTES
,
51
READ_PACKET_ID
,
52
READ_PACKET_BYTES
,
53
READ_CHECKSUM
54
};
55
56
// State machine variables
57
ReadState
readState
;
58
uint8_t
headerByte
;
59
uint8_t
packetID
;
60
uint8_t
expectedNumBytes
;
61
uint16_t
packetBytes
;
62
uint8_t
numBytesRead
;
63
uint32_t
byteSum
;
64
uint8_t
numDataBytesRead
;
65
uint8_t
expectedNumDataBytes
;
66
67
protected
:
68
bool
startSensorStream
();
69
void
processByte
(uint8_t
byteRead
);
70
71
public
:
72
SerialStream
(
73
std::shared_ptr<Data>
data
,
74
const
uint8_t& header =
create::util::STREAM_HEADER
,
75
bool
install_signal_handler =
true
);
76
virtual
~SerialStream
() =
default
;
77
78
};
79
}
// namespace create
80
81
#endif // CREATE_SERIAL_H
create::SerialStream::readState
ReadState readState
Definition:
serial_stream.h:57
create::SerialStream::processByte
void processByte(uint8_t byteRead)
Definition:
serial_stream.cpp:27
types.h
create::SerialStream::byteSum
uint32_t byteSum
Definition:
serial_stream.h:63
create::SerialStream::ReadState
ReadState
Definition:
serial_stream.h:48
create::SerialStream::READ_PACKET_BYTES
@ READ_PACKET_BYTES
Definition:
serial_stream.h:52
create::SerialStream::READ_PACKET_ID
@ READ_PACKET_ID
Definition:
serial_stream.h:51
create::SerialStream::expectedNumBytes
uint8_t expectedNumBytes
Definition:
serial_stream.h:60
create::SerialStream::packetBytes
uint16_t packetBytes
Definition:
serial_stream.h:61
create::util::STREAM_HEADER
static const uint8_t STREAM_HEADER
Definition:
util.h:43
create::SerialStream::numBytesRead
uint8_t numBytesRead
Definition:
serial_stream.h:62
create::Serial
Definition:
serial.h:51
create::SerialStream::headerByte
uint8_t headerByte
Definition:
serial_stream.h:58
create::SerialStream::READ_HEADER
@ READ_HEADER
Definition:
serial_stream.h:49
create::SerialStream::startSensorStream
bool startSensorStream()
Definition:
serial_stream.cpp:12
create::SerialStream::SerialStream
SerialStream(std::shared_ptr< Data > data, const uint8_t &header=create::util::STREAM_HEADER, bool install_signal_handler=true)
Definition:
serial_stream.cpp:9
create::Serial::byteRead
uint8_t byteRead
Definition:
serial.h:65
create::SerialStream::numDataBytesRead
uint8_t numDataBytesRead
Definition:
serial_stream.h:64
serial.h
create::SerialStream::expectedNumDataBytes
uint8_t expectedNumDataBytes
Definition:
serial_stream.h:65
create::SerialStream::READ_CHECKSUM
@ READ_CHECKSUM
Definition:
serial_stream.h:53
data.h
create::SerialStream::READ_NBYTES
@ READ_NBYTES
Definition:
serial_stream.h:50
create::SerialStream::~SerialStream
virtual ~SerialStream()=default
create::Serial::data
std::shared_ptr< Data > data
Definition:
serial.h:78
create::SerialStream
Definition:
serial_stream.h:46
util.h
create
Definition:
create.h:48
create::SerialStream::packetID
uint8_t packetID
Definition:
serial_stream.h:59
libcreate
Author(s): Jacob Perron
autogenerated on Wed May 24 2023 02:24:57