From 318b37d8b556add13b3f156f31c9e72eca339a16 Mon Sep 17 00:00:00 2001 From: David Robillard Date: Fri, 17 Aug 2012 02:14:07 +0000 Subject: Implement real logging system, LV2 log extension support, and purge evil/ugly/untranslatable C++ stream printing. Remove coloured log stuff from Raul. git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@4717 a436a847-0d15-0410-975c-d299462d15a1 --- src/server/Worker.cpp | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) (limited to 'src/server/Worker.cpp') diff --git a/src/server/Worker.cpp b/src/server/Worker.cpp index 9f255081..e8c51335 100644 --- a/src/server/Worker.cpp +++ b/src/server/Worker.cpp @@ -15,8 +15,8 @@ */ #include "ingen/LV2Features.hpp" +#include "ingen/Log.hpp" #include "lv2/lv2plug.in/ns/ext/worker/worker.h" -#include "raul/log.hpp" #include "Driver.hpp" #include "Engine.hpp" @@ -51,18 +51,19 @@ Worker::request(LV2Node* node, uint32_t size, const void* data) { + Engine& engine = node->parent_patch()->engine(); if (_requests.write_space() < sizeof(MessageHeader) + size) { - Raul::error("Work request ring overflow\n"); + engine.log().error("Work request ring overflow\n"); return LV2_WORKER_ERR_NO_SPACE; } const MessageHeader msg = { node, size }; if (_requests.write(sizeof(msg), &msg) != sizeof(msg)) { - Raul::error("Error writing header to work request ring\n"); + engine.log().error("Error writing header to work request ring\n"); return LV2_WORKER_ERR_UNKNOWN; } if (_requests.write(size, data) != size) { - Raul::error("Error writing body to work request ring\n"); + engine.log().error("Error writing body to work request ring\n"); return LV2_WORKER_ERR_UNKNOWN; } @@ -99,9 +100,10 @@ Worker::Schedule::feature(World* world, GraphObject* n) } -Worker::Worker(uint32_t buffer_size) +Worker::Worker(Log& log, uint32_t buffer_size) : Raul::Thread() , _schedule(new Schedule()) + , _log(log) , _sem(0) , _requests(buffer_size) , _responses(buffer_size) @@ -123,17 +125,17 @@ Worker::_run() MessageHeader msg; if (_requests.read_space() > sizeof(msg)) { if (_requests.read(sizeof(msg), &msg) != sizeof(msg)) { - Raul::error("Error reading header from work request ring\n"); + _log.error("Error reading header from work request ring\n"); continue; } if (msg.size >= _buffer_size - sizeof(msg)) { - Raul::error("Corrupt work request ring\n"); + _log.error("Corrupt work request ring\n"); return; } if (_requests.read(msg.size, _buffer) != msg.size) { - Raul::error("Error reading body from work request ring\n"); + _log.error("Error reading body from work request ring\n"); continue; } -- cgit v1.2.1