summaryrefslogtreecommitdiffstats
path: root/src/socket/SocketReader.cpp
diff options
context:
space:
mode:
authorDavid Robillard <d@drobilla.net>2012-08-17 02:14:07 +0000
committerDavid Robillard <d@drobilla.net>2012-08-17 02:14:07 +0000
commit318b37d8b556add13b3f156f31c9e72eca339a16 (patch)
treeca7b881f8980a41eca77602b474f29964b5c89db /src/socket/SocketReader.cpp
parenta42744e1068a8630d8034df73bb344ca21a53b32 (diff)
downloadingen-318b37d8b556add13b3f156f31c9e72eca339a16.tar.gz
ingen-318b37d8b556add13b3f156f31c9e72eca339a16.tar.bz2
ingen-318b37d8b556add13b3f156f31c9e72eca339a16.zip
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
Diffstat (limited to 'src/socket/SocketReader.cpp')
-rw-r--r--src/socket/SocketReader.cpp20
1 files changed, 12 insertions, 8 deletions
diff --git a/src/socket/SocketReader.cpp b/src/socket/SocketReader.cpp
index 8b580b18..c1e8dfd3 100644
--- a/src/socket/SocketReader.cpp
+++ b/src/socket/SocketReader.cpp
@@ -17,8 +17,9 @@
#include <errno.h>
#include <poll.h>
-#include "ingen/Interface.hpp"
#include "ingen/AtomReader.hpp"
+#include "ingen/Interface.hpp"
+#include "ingen/Log.hpp"
#include "ingen/URIMap.hpp"
#include "ingen/World.hpp"
#include "sord/sordmm.hpp"
@@ -26,8 +27,6 @@
#include "SocketReader.hpp"
-#define LOG(s) s << "[SocketReader] "
-
namespace Ingen {
namespace Socket {
@@ -121,8 +120,8 @@ SocketReader::_run()
// Read directly from the connection with serd
FILE* f = fdopen(_socket->fd(), "r");
if (!f) {
- LOG(Raul::error) << "Failed to open connection "
- << "(" << strerror(errno) << ")" << std::endl;
+ _world.log().error(Raul::fmt("Failed to open connection (%1%)\n")
+ % strerror(errno));
// Connection gone, exit
_socket.reset();
return;
@@ -131,7 +130,11 @@ SocketReader::_run()
serd_reader_start_stream(reader, f, (const uint8_t*)"(socket)", false);
// Make an AtomReader to call Ingen Interface methods based on Atom
- AtomReader ar(_world.uri_map(), _world.uris(), _world.forge(), _iface);
+ AtomReader ar(_world.uri_map(),
+ _world.uris(),
+ _world.log(),
+ _world.forge(),
+ _iface);
struct pollfd pfd;
pfd.fd = _socket->fd();
@@ -156,10 +159,11 @@ SocketReader::_run()
if (st == SERD_FAILURE) {
continue; // Read nothing, e.g. just whitespace
} else if (st) {
- LOG(Raul::error) << "Read error: " << serd_strerror(st) << std::endl;
+ _world.log().error(Raul::fmt("Read error: %1%\n")
+ % serd_strerror(st));
continue;
} else if (!_msg_node) {
- LOG(Raul::error) << "Received empty message" << std::endl;
+ _world.log().error("Received empty message\n");
continue;
}