2015-07-11 15:03:05 -03:00
|
|
|
#include "jellyfish/fluxa/OSC_server.h"
|
|
|
|
|
#include "process_thread.h"
|
|
|
|
|
#include "renderer.h"
|
2015-07-11 17:30:16 -03:00
|
|
|
#include "jellyfish/audio.h"
|
2015-07-11 15:03:05 -03:00
|
|
|
|
|
|
|
|
#pragma once
|
|
|
|
|
|
|
|
|
|
namespace spiralcore {
|
|
|
|
|
|
|
|
|
|
class audio_thread {
|
|
|
|
|
public:
|
|
|
|
|
audio_thread(process_thread &p);
|
2015-07-14 08:17:55 -03:00
|
|
|
void process(sample &left, sample &right);
|
2015-07-11 15:03:05 -03:00
|
|
|
|
2015-07-11 17:30:16 -03:00
|
|
|
static void run_audio(void* c, unsigned int frames);
|
|
|
|
|
audio_device *m_audio_device;
|
|
|
|
|
|
2015-07-11 15:03:05 -03:00
|
|
|
private:
|
2015-07-11 17:30:16 -03:00
|
|
|
void start_audio();
|
2015-07-11 15:03:05 -03:00
|
|
|
|
|
|
|
|
renderer *m_renderer;
|
|
|
|
|
OSC_server m_osc;
|
|
|
|
|
process_thread &m_process_thread;
|
|
|
|
|
pthread_mutex_t* m_brain_mutex;
|
|
|
|
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
}
|