view projects/d-box/StatusLED.h @ 162:c3e8226a5651 heavy-updated

- added additional flags to C rules (-DNDEBUG, -mfpu=neon) - sample-accurate envelope triggering pd/heavy example
author chnrx <chris.heinrichs@gmail.com>
date Thu, 12 Nov 2015 14:59:46 +0000
parents 8a575ba3ab52
children
line wrap: on
line source
/*
 * 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_