Open Lighting Architecture
0.10.9
Loading...
Searching...
No Matches
libs
acn
E133PDU.h
1
/*
2
* This program is free software; you can redistribute it and/or modify
3
* it under the terms of the GNU General Public License as published by
4
* the Free Software Foundation; either version 2 of the License, or
5
* (at your option) any later version.
6
*
7
* This program is distributed in the hope that it will be useful,
8
* but WITHOUT ANY WARRANTY; without even the implied warranty of
9
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
10
* GNU Library General Public License for more details.
11
*
12
* You should have received a copy of the GNU General Public License
13
* along with this program; if not, write to the Free Software
14
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
15
*
16
* E133PDU.h
17
* Interface for the E133PDU class
18
* Copyright (C) 2011 Simon Newton
19
*/
20
21
#ifndef LIBS_ACN_E133PDU_H_
22
#define LIBS_ACN_E133PDU_H_
23
24
#include <ola/io/IOStack.h>
25
#include <string>
26
27
#include "libs/acn/PDU.h"
28
#include "libs/acn/E133Header.h"
29
30
namespace
ola
{
31
namespace
acn {
32
33
class
RDMPDU;
34
35
class
E133PDU
:
public
PDU
{
36
public
:
37
E133PDU
(
unsigned
int
vector,
38
const
E133Header
&header,
39
const
PDU
*pdu):
40
PDU
(vector),
41
m_header(header),
42
m_pdu(pdu) {}
43
~E133PDU
() {}
44
45
unsigned
int
HeaderSize()
const
;
46
unsigned
int
DataSize()
const
;
47
bool
PackHeader(uint8_t *data,
unsigned
int
*length)
const
;
48
bool
PackData(uint8_t *data,
unsigned
int
*length)
const
;
49
50
void
PackHeader(
ola::io::OutputStream
*stream)
const
;
51
void
PackData(
ola::io::OutputStream
*stream)
const
;
52
53
static
void
PrependPDU(
ola::io::IOStack
*stack, uint32_t vector,
54
const
std::string &source, uint32_t sequence_number,
55
uint16_t endpoint_id);
56
57
private
:
58
E133Header
m_header;
59
const
PDU
*m_pdu;
60
};
61
}
// namespace acn
62
}
// namespace ola
63
#endif
// LIBS_ACN_E133PDU_H_
ola::acn::E133Header
Definition
E133Header.h:35
ola::acn::E133PDU
Definition
E133PDU.h:35
ola::acn::PDU
Definition
PDU.h:36
ola::io::IOStack
Definition
IOStack.h:41
ola::io::OutputStream
Definition
OutputStream.h:53
ola
The namespace containing all OLA symbols.
Definition
Credentials.cpp:44
Generated on Sat Aug 24 2024 09:00:45 for Open Lighting Architecture by
1.12.0