3es
0.7
3espacketbuffer.h
1
//
2
// author: Kazys Stepanas
3
//
4
#ifndef _3ESPACKETBUFFER_H_
5
#define _3ESPACKETBUFFER_H_
6
7
#include "3es-core.h"
8
9
#include <cinttypes>
10
11
namespace
tes
12
{
13
struct
PacketHeader;
14
18
class
_3es_coreAPI
PacketBuffer
19
{
20
public
:
22
PacketBuffer
();
24
~
PacketBuffer
();
25
32
int
addBytes(
const
uint8_t *bytes,
size_t
byteCount);
33
39
PacketHeader
*extractPacket();
40
43
void
releasePacket(
PacketHeader
*packet);
44
45
private
:
49
void
appendData(
const
uint8_t *bytes,
size_t
byteCount);
50
53
void
removeData(
size_t
byteCount);
54
55
uint8_t *_packetBuffer;
56
size_t
_byteCount;
57
size_t
_bufferSize;
58
bool
_markerFound;
59
};
60
}
61
62
#endif // _3ESPACKETBUFFER_H_
tes::PacketBuffer
This class accepts responsibility for collating incoming byte streams.
Definition:
3espacketbuffer.h:18
tes
Definition:
3esbounds.h:13
tes::PacketHeader
The header for an incoming 3ES data packet.
Definition:
3espacketheader.h:32
3es-core
3espacketbuffer.h
Generated by
1.8.13