robert@464: /* robert@464: * StatusLED.h robert@464: * robert@464: * robert@464: */ robert@464: robert@464: #ifndef STATUSLED_H_ robert@464: #define STATUSLED_H_ robert@464: robert@464: #include robert@464: #include robert@464: robert@464: class StatusLED robert@464: { robert@464: public: robert@464: StatusLED(); robert@464: ~StatusLED(); robert@464: robert@464: bool init(int gpio_pin); robert@464: robert@464: void on(); robert@464: void off(); robert@464: void blink(int ms_on, int ms_off); robert@464: robert@464: static void *static_blink_loop(void *data) { robert@464: ((StatusLED*)data)->blink_loop(NULL); robert@464: return 0; robert@464: } robert@464: robert@464: void* blink_loop(void *); robert@464: robert@464: private: robert@464: int gpio_number; robert@464: int milliseconds_on, milliseconds_off; robert@464: bool this_should_stop; robert@464: pthread_t blink_thread; robert@464: }; robert@464: robert@464: #endif // STATUSLED_H_