#include <cassert>
#include <pthread.h>
-#include <semaphore.h>
-#include <ardour/types.h>
-#include <ardour/session_handle.h>
+#include "pbd/semutils.h"
+
+#include "ardour/types.h"
+#include "ardour/session_handle.h"
namespace ARDOUR
{
std::vector<GraphNode *> _trigger_queue;
pthread_mutex_t _trigger_mutex;
- sem_t _execution_sem;
- sem_t _callback_start_sem;
- sem_t _callback_done_sem;
- sem_t _cleanup_sem;
+ PBD::ProcessSemaphore _execution_sem;
+
+ PBD::ProcessSemaphore _callback_start_sem;
+ PBD::ProcessSemaphore _callback_done_sem;
+ PBD::ProcessSemaphore _cleanup_sem;
volatile gint _execution_tokens;
volatile gint _finished_refcount;