#include <glibmm/threads.h>
#include "pbd/ringbuffer.h"
-#include "pbd/semaphore.h"
+#include "pbd/semutils.h"
+
+#include "ardour/libardour_visibility.h"
namespace ARDOUR {
/**
An object that needs to schedule non-RT work in the audio thread.
*/
-class Workee {
+class LIBARDOUR_API Workee {
public:
virtual ~Workee() {}
/**
A worker thread for non-realtime tasks scheduled in the audio thread.
*/
-class Worker
+class LIBARDOUR_API Worker
{
public:
Worker(Workee* workee, uint32_t ring_size);
RingBuffer<uint8_t>* _requests;
RingBuffer<uint8_t>* _responses;
uint8_t* _response;
- PBD::Semaphore _sem;
+ PBD::Semaphore _sem;
bool _exit;
Glib::Threads::Thread* _thread;