SysIo  1.9.0
Embedded Library and tools
ledrgb.h
1 
8 #ifndef _SYSIO_LEDRGB_H_
9 #define _SYSIO_LEDRGB_H_
10 
11 #include <sysio/defs.h>
12 #include <sysio/rgb.h>
13 #include <sysio/tlc59116.h>
14 
15 #ifdef __cplusplus
16  extern "C" {
17 #endif
18 /* ========================================================================== */
19 
28 /* constants ================================================================ */
33 #define LEDRGB_ALL_LEDS -1llu
34 
39 #define LEDRGB_NO_LED 0
40 
46 #define LEDRGB_IOC_SETMODE 1
47 #define LEDRGB_IOC_SETDIMMER 2
48 #define LEDRGB_IOC_SETBLINKER 3
49 #define LEDRGB_IOC_SETGAIN 4
50 #define LEDRGB_IOC_GETERROR 100
51 #define LEDRGB_IOC_CLRERROR 101
60 typedef enum {
65 } eLedRgbMode;
66 
71 typedef enum {
75 
81 
82 /* internal public functions ================================================ */
91 xLedRgbDevice * xLedRgbNewDevice (eLedRgbDeviceModel ctrl_model, void * ctrl_list);
92 
99 
105 int iLedRgbSize (const xLedRgbDevice * d);
106 
114 int iLedRgbAddLed (xLedRgbDevice * d, eLedRgbMode mode, void * led_config);
115 
124 int iLedRgbSetColor (xLedRgbDevice * d, int led, uint32_t color);
125 
135 int iLedRgbSetGrpColor (xLedRgbDevice * d, uint64_t grp, uint32_t color);
136 
147 int iLedRgbSetMode (xLedRgbDevice * d, int led, eLedRgbMode mode);
148 
161 int iLedRgbSetGrpMode (xLedRgbDevice * d, uint64_t grp, eLedRgbMode mode);
162 
175 int iLedRgbSetDimmer (xLedRgbDevice * d, int item, int dimming);
176 
190 int iLedRgbSetBlinker (xLedRgbDevice * d, int item, int period, int dcycle);
191 
203 int iLedRgbSetGain (xLedRgbDevice * d, int item, int gain);
204 
215 int iLedRgbGetError (xLedRgbDevice * d, int led);
216 
223 
233 int iLedRgbCtl (xLedRgbDevice * d, int req, ...);
234 
238 #ifdef __cplusplus
239  }
240 #endif
241 /* ========================================================================== */
242 #endif /* _SYSIO_LEDRGB_H_ not defined */
eLedRgbDeviceModel
Modèle de contrôleur de leds RGB.
Definition: ledrgb.h:71
int iLedRgbSetGrpMode(xLedRgbDevice *d, uint64_t grp, eLedRgbMode mode)
Modifie le mode d&#39;allumage d&#39;une ou plusieurs leds.
int iLedRgbSetBlinker(xLedRgbDevice *d, int item, int period, int dcycle)
Clignotement d&#39;un item.
int iLedRgbGetError(xLedRgbDevice *d, int led)
Teste si une led est en défaut.
int iLedRgbClearError(xLedRgbDevice *d)
Effacement des défauts.
int iLedRgbSetGrpColor(xLedRgbDevice *d, uint64_t grp, uint32_t color)
Modifie la couleur d&#39;une ou plusieurs leds.
int iLedRgbAddLed(xLedRgbDevice *d, eLedRgbMode mode, void *led_config)
Ajout d&#39;une led à un objet LedRgb.
struct xLedRgbDevice xLedRgbDevice
Classe de contrôle de leds RGB Cette classe est opaque (privée) pour l&#39;utilisateur.
Definition: ledrgb.h:80
int iLedRgbDeleteDevice(xLedRgbDevice *d)
Fermeture et destruction d&#39;un objet LedRgb.
eLedRgbMode
Definition: ledrgb.h:60
int iLedRgbSize(const xLedRgbDevice *d)
Nombre de leds RGB gérées par un objet LedRgb.
int iLedRgbSetMode(xLedRgbDevice *d, int led, eLedRgbMode mode)
Modifie le mode d&#39;allumage d&#39;une led.
int iLedRgbSetGain(xLedRgbDevice *d, int item, int gain)
Modifie le gain en courant.
int iLedRgbSetColor(xLedRgbDevice *d, int led, uint32_t color)
Modifie la couleur d&#39;une led.
int iLedRgbSetDimmer(xLedRgbDevice *d, int item, int dimming)
Modifie la luminosité d&#39;un item.
xLedRgbDevice * xLedRgbNewDevice(eLedRgbDeviceModel ctrl_model, void *ctrl_list)
Création et initialisation d&#39;un objet LedRgb Cet objet permet le contrôle des leds RGB...
int iLedRgbCtl(xLedRgbDevice *d, int req,...)
Appel d&#39;une fonction spécifique à un contrôleur Afin de stabiliser l&#39;interface logicielle d&#39;un contrô...