diff options
Diffstat (limited to 'libs/ardour/test/test_receiver.h')
-rw-r--r-- | libs/ardour/test/test_receiver.h | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/libs/ardour/test/test_receiver.h b/libs/ardour/test/test_receiver.h new file mode 100644 index 0000000000..537bac3cff --- /dev/null +++ b/libs/ardour/test/test_receiver.h @@ -0,0 +1,37 @@ +#include "pbd/receiver.h" + +class TestReceiver : public Receiver +{ +protected: + void receive (Transmitter::Channel chn, const char * str) { + const char *prefix = ""; + + switch (chn) { + case Transmitter::Error: + prefix = ": [ERROR]: "; + break; + case Transmitter::Info: + /* ignore */ + return; + case Transmitter::Warning: + prefix = ": [WARNING]: "; + break; + case Transmitter::Fatal: + prefix = ": [FATAL]: "; + break; + case Transmitter::Throw: + /* this isn't supposed to happen */ + abort (); + } + + /* note: iostreams are already thread-safe: no external + lock required. + */ + + std::cout << prefix << str << std::endl; + + if (chn == Transmitter::Fatal) { + exit (9); + } + } +}; |