-
Notifications
You must be signed in to change notification settings - Fork 3
/
Copy pathArtNetFrameExtension.h
52 lines (34 loc) · 1.37 KB
/
ArtNetFrameExtension.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
/**
* ArtNet Frame Extenstion understood by MadMapper
**/
#include "ArtNode.h"
typedef struct S_Ext_ArtPoll {
uchar ID[8]; // protocol ID = "Art-Ext"
ushort OpCode; // == OpPoll + 1 0x2001
uchar ProtVerHi; // 0
uchar ProtVerLo; // protocol version, set to ProtocolVersion
} T_Ext_ArtPoll;
typedef struct S_Ext_ArtPollReply {
uchar ID[8]; // protocol ID = "Art-Ext"
ushort OpCode; // == OpPollReply + 1
uchar ProtocolVersionHi; // The protocol version of ART-EXT (1 currently)
uchar ProtocolVersionLo; // The protocol version of ART-EXT (1 currently)
uchar BoxAddr[4]; // 0 if not yet configured
uchar Mac[6]; // Mac Address, zero if info not available
uchar ResponseNum; // This is packet x of y
uchar TotalResponses; // There are y packets
uchar NumPortsIn;
uchar NumPortsOut;
//short swinout;
} T_Ext_ArtPollReply;
class ArtNodeExtended : public ArtNode {
public:
ArtNodeExtended();
ArtNodeExtended(ArtConfig & config, int size, unsigned char * buffer);
void createPollReply();
void createExtendedPollReply();
int sizeOfExtendedPollReply();
uint16_t getAddress(uint8_t subUni, uint8_t net);
uint16_t getStartAddress();
char pollReport[64];
};