Eris 1.3.19
Redispatch.h
00001 #ifndef ERIS_REDISPATCH_H
00002 #define ERIS_REDISPATCH_H
00003 
00004 #include <Atlas/Objects/Root.h>
00005 #include <Atlas/Objects/SmartPtr.h>
00006 
00007 #include <sigc++/trackable.h>
00008 
00009 namespace Eris
00010 {
00011 
00012 // forward decls
00013 class Connection;
00014 
00015 class Redispatch : public sigc::trackable
00016 {
00017 protected:
00018     Redispatch(Connection* con, const Atlas::Objects::Root& obj) :
00019         m_obj(obj),
00020         m_con(con)
00021     {
00022 
00023     }
00024 
00025     void post();
00026 
00027     void postModified(const Atlas::Objects::Root& obj);
00028 
00029     void fail();
00030 
00031     const Atlas::Objects::Root m_obj;
00032     
00033 private:
00034     Connection* m_con;
00035 };
00036 
00037 } // of namespace Eris
00038 
00039 #endif