diff options
| author | Tim Redfern <tim@eclectronics.org> | 2014-01-23 14:03:07 +0000 |
|---|---|---|
| committer | Tim Redfern <tim@eclectronics.org> | 2014-01-23 14:03:07 +0000 |
| commit | efebf20348daca798c22cbac770d47e9151f941f (patch) | |
| tree | 05c1a4148047d89271b2566c8924d872ad023938 /NT/src/rendercontext.h | |
| parent | a897d2e0ba7744c818eed46441347cfb4f384613 (diff) | |
NT logging structure
Diffstat (limited to 'NT/src/rendercontext.h')
| -rw-r--r-- | NT/src/rendercontext.h | 28 |
1 files changed, 25 insertions, 3 deletions
diff --git a/NT/src/rendercontext.h b/NT/src/rendercontext.h index ea7a8c1..10332df 100644 --- a/NT/src/rendercontext.h +++ b/NT/src/rendercontext.h @@ -15,15 +15,37 @@ TJR Jan 2014 #include "rotor.h" #include "graph.h" - namespace Rotor { class Render_context: public Poco::Task { public: - Render_context(const std::string& id): Task(id) { + Render_context(const std::string& _id): Task(_id) { + id=_id; graph.init(id); + //set up log + AutoPtr<SplitterChannel> splitterChannel(new SplitterChannel()); + AutoPtr<Channel> consoleChannel(new ConsoleChannel()); + AutoPtr<Channel> fileChannel(new FileChannel("Rotord_"+id+".log")); + splitterChannel->addChannel(consoleChannel); + splitterChannel->addChannel(fileChannel); + AutoPtr<Formatter> formatter(new PatternFormatter("%d-%m-%Y %H:%M:%S %s: %t")); + AutoPtr<Channel> formattingChannel(new FormattingChannel(formatter, splitterChannel)); + Logger& logger = Logger::create(id, formattingChannel, Message::PRIO_TRACE); + logger.information("started thread"); + } + ~Render_context(){ + Logger& logger = Logger::get(id); + cancel(); + logger.information("stopped thread"); + } + void runTask() { + Logger& logger = Logger::get(id); + while (!isCancelled()) { + sleep(100); + } } - private: Graph graph; + private: + std::string id; }; }; |
