diff examples/d-box/StatusLED.h @ 300:dbeed520b014 prerelease

Renamed projects to examples
author Giulio Moro <giuliomoro@yahoo.it>
date Fri, 27 May 2016 13:58:20 +0100
parents projects/d-box/StatusLED.h@8a575ba3ab52
children 421a69d42943
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/examples/d-box/StatusLED.h	Fri May 27 13:58:20 2016 +0100
@@ -0,0 +1,38 @@
+/*
+ * StatusLED.h
+ *
+ *
+ */
+
+#ifndef STATUSLED_H_
+#define STATUSLED_H_
+
+#include <pthread.h>
+
+class StatusLED
+{
+public:
+	StatusLED();
+	~StatusLED();
+
+	bool init(int gpio_pin);
+
+	void on();
+	void off();
+	void blink(int ms_on, int ms_off);
+
+	static void *static_blink_loop(void *data) {
+		((StatusLED*)data)->blink_loop(NULL);
+		return 0;
+	}
+
+	void* blink_loop(void *);
+
+private:
+	int gpio_number;
+	int milliseconds_on, milliseconds_off;
+	bool this_should_stop;
+	pthread_t blink_thread;
+};
+
+#endif // STATUSLED_H_