Code for the SandNet protocol.
|
typedef enum packet_type_e | packet_type_t |
|
typedef enum protocol_id_e | protocol_id_t |
|
typedef struct sandnet_advertisement_s | sandnet_advertisement |
|
typedef struct sandnet_dmx_s | sandnet_dmx |
|
typedef struct sandnet_port_control_s | sandnet_port_control |
|
typedef struct sandnet_name_s | sandnet_name |
|
typedef struct sandnet_identify_s | sandnet_identify |
|
typedef struct sandnet_program_s | sandnet_program |
|
typedef struct sandnet_led_s | sandnet_led |
|
typedef struct sandnet_compressed_dmx_s | sandnet_compressed_dmx |
|
|
enum | { SANDNET_NAME_LENGTH = 31
} |
|
enum | packet_type_e {
SANDNET_ADVERTISEMENT = 0x0100,
SANDNET_CONTROL = 0x0200,
SANDNET_DMX = 0x0300,
SANDNET_NAME = 0x0400,
SANDNET_IDENTIFY = 0x0500,
SANDNET_PROG = 0x0600,
SANDNET_LED = 0x0700,
SANDNET_COMPRESSED_DMX = 0x0a00
} |
|
enum | protocol_id_e {
SANDNET_SANDNET = 0x02,
SANDNET_ARTNET = 0x04,
SANDNET_COMPULIGHT = 0x06,
SANDNET_SHOWNET = 0x09,
SANDNET_IPX = 0x0d,
SANDNET_ACN = 0x0e
} |
|
|
enum ola::plugin::sandnet::packet_type_e | __attribute__ ((packed)) |
|
| PACK (struct sandnet_packet_advertisement_port_s { protocol_id_t protocol;uint8_t mode;uint8_t term;uint8_t b;uint8_t group;uint8_t universe;uint8_t crap[53];}) |
|
| PACK (struct sandnet_advertisement_s { uint8_t mac[ola::network::MACAddress::LENGTH];uint32_t firmware;struct sandnet_packet_advertisement_port_s ports[SANDNET_MAX_PORTS];uint8_t nlen;char name[SANDNET_NAME_LENGTH];uint8_t magic3[9];uint8_t led;uint8_t magic4;uint8_t zero4[64];}) |
|
| PACK (struct sandnet_dmx_s { uint8_t group;uint8_t universe;uint8_t port;uint8_t dmx[DMX_UNIVERSE_SIZE];}) |
|
| PACK (struct sandnet_port_control_s { uint8_t mac[ola::network::MACAddress::LENGTH];uint8_t magic[4];struct sandnet_packet_advertisement_port_s ports[SANDNET_MAX_PORTS];}) |
|
| PACK (struct sandnet_name_s { uint8_t mac[ola::network::MACAddress::LENGTH];uint8_t name_length;uint8_t name[SANDNET_NAME_LENGTH];}) |
|
| PACK (struct sandnet_identify_s { uint8_t mac[ola::network::MACAddress::LENGTH];}) |
|
| PACK (struct sandnet_program_s { uint8_t mac[ola::network::MACAddress::LENGTH];uint8_t ip[ola::network::IPV4Address::LENGTH];uint8_t dhcp;uint8_t netmask[ola::network::IPV4Address::LENGTH];}) |
|
| PACK (struct sandnet_led_s { uint8_t mac[ola::network::MACAddress::LENGTH];uint8_t led;}) |
|
| PACK (struct sandnet_compressed_dmx_s { uint8_t group;uint8_t universe;uint8_t port;uint8_t zero1[4];uint8_t two;uint16_t length;uint8_t dmx[DMX_UNIVERSE_SIZE];}) |
|
| PACK (struct sandnet_packet { uint16_t opcode;union { sandnet_advertisement advertisement;sandnet_port_control port_control;sandnet_dmx dmx;sandnet_name name;sandnet_identify id;sandnet_program program;sandnet_led led;sandnet_compressed_dmx compressed_dmx;} contents;}) |
|