/* dmx512.h: Header for DMX512 library DRAFT Mike Sperber, 10.2.2000 This include file should be included via: #include */ /* This type represents information about a DMX512 outlet on the machine. */ typedef <...> dmx512_universe_info_t; /* This type represents an active connection to a DMX512 universe .*/ typedef <...> dmx512_universe_t; /* Return number of DMX512 universes. This number will not change during a program run. */ int dmx512_get_n_universes(void); /* Return all available DMX512 universes. The array parameter must be able to hold as many elements as the return value of dmx512_get_n_universes. */ void dmx512_get_universe_infos(dmx512_universe_info_t []); /* Get a cleartext description of the make/model/position of a DMX512 outlet meant for the user, NOT FOR FURTHER PROCESSING. The string returned by this function may change from program run to program run, but not from call to call. */ static char *dmx512_get_description(dmx512_universe_info_t); /* Return a connection to a DMX512 universe. After a successful call to dmx512_open, the DMX outlet will start transmitting continuously. It may or may noot transmit DMX packets before the call. */ dmx512_universe_t dmx512_open(dmx512_universe_info_t); /* Return nonzero if an error has occurred on a connection. */ int dmx512_error(dmx512_universe_t); /* Close a connection to a universe. */ void dmx512_close(dmx512_universe_t); /* Set the start code of the transmitted DMX512 packets. */ void dmx512_set_start_code(dmx512_universe_t, int); /* Set a slot value of the transmitted DMX512 packets. First parameter is a universe connection. Second parameter is a slot number, 1-based. Third parameter is a slot value, range 0-255. */ void dmx512_set_slot(dmx512_universe_t, int, int); /* Get the transmitted value of a given slot. */ int dmx512_get_slot(dmx512_universe_t, int); /* Set the number of slots transmitted in a packet. The actual number of transmitted slots may be higher, but no less than what is specified. dmx512_set_slot continues to work for slots beyond the transmitted range. */ void dmx512_set_transmitted_slots(dmx512_universe_t, int);