00001 #ifndef ERIS_DEBUG_DISPATCH_H
00002 #define ERIS_DEBUG_DISPATCH_H
00003
00004 #include <iostream>
00005 #include <fstream>
00006
00007 #include <Atlas/Codec.h>
00008 #include <Eris/Dispatcher.h>
00009
00010 namespace Atlas { namespace Message { class Encoder; }}
00011
00012 namespace Eris
00013 {
00014
00015 class DebugDispatcher : public LeafDispatcher
00016 {
00017 public:
00018 DebugDispatcher(const std::string &logFile);
00019 virtual ~DebugDispatcher();
00020
00021 virtual bool dispatch(DispatchContextDeque &dq);
00022
00023 protected:
00024 Atlas::Codec<std::iostream> *_codec;
00025 Atlas::Message::Encoder *_enc;
00026 std::fstream _log;
00027 };
00028
00029 }
00030
00031 #endif