indigo_enable_blob() - enable and disable BLOB transfer.indigo_change_property() - request for change of property item values.indigo_enumerate_properties() - send request for definition of available properties.There are several functions that can be used by the client to send messages to the device: The bus instance should be initialized and started by indigo_start() call and stopped by indigo_stop() call.Ī client should be attached to the bus by calling indigo_attach_client() and detached with indigo_detach_client() call. indigo_client - definition of a client containing both client private data and pointers to callback functions.
update of property item values - lets the client know that certain property items have changed their values.definition of a property - lets the client know that the property can be used, the message contains the property definition: name, type, list of items etc.The messages sent from the device to a client may contain one of the following events: Messages sent over the INDIGO bus are abstraction of INDI messages. Set of variables as they may store values like the width and height of the CCD frame or routines like start 1 second exposure.
One can think of the properties as both set of variables and routines. Properties on the other hand contain one or more items of a specified type. The communication between different entities attached to the bus is done by INDIGO messages which contain property events. INDIGO is asynchronous in its nature, so to be able to communicate over the bus, the client and device have to register a structure containing pointers to callback functions which are called by the INDIGO bus upon specific events.
A piece of code registering one or more devices on the bus is referred as the driver. These entities are typically either in a device or a client role, but there are special entities often referred as agents which are in both device and client role.
INDIGO is a platform for the communication between software entities over a software bus.