Open Lighting Architecture  0.10.4
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
Classes | Typedefs | Enumerations | Functions | Variables
ola::plugin::sandnet Namespace Reference

Detailed Description

Code for the SandNet protocol.

Classes

class  SandNetDevice
 
class  SandNetInputPort
 
class  SandNetNode
 
class  SandNetOutputPort
 
class  SandNetPlugin
 
class  SandNetPortHelper
 

Typedefs

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
 

Enumerations

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
}
 

Functions

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;})
 

Variables

ola::plugin::sandnet::SandNetPlugin __attribute__