eris  1.4.0
A WorldForge client library.
Redispatch.h
1 #include <utility>
2 
3 #ifndef ERIS_REDISPATCH_H
4 #define ERIS_REDISPATCH_H
5 
6 #include <Atlas/Objects/Root.h>
7 #include <Atlas/Objects/SmartPtr.h>
8 
9 #include <sigc++/trackable.h>
10 
11 namespace Eris {
12 
13 // forward decls
14 class Connection;
15 
16 class Redispatch : public sigc::trackable {
17 
18 public:
19  virtual ~Redispatch() = default;
20 
21 protected:
22  Redispatch(Connection& con, Atlas::Objects::Root obj) :
23  m_obj(std::move(obj)),
24  m_con(con) {
25  }
26 
27  void post();
28 
29  void postModified(const Atlas::Objects::Root& obj);
30 
31  void fail();
32 
33  const Atlas::Objects::Root m_obj;
34 
35 private:
36  Connection& m_con;
37 };
38 
39 } // of namespace Eris
40 
41 #endif
Eris
Definition: Account.cpp:33
Eris::Redispatch
Definition: Redispatch.h:16
Eris::Connection
Definition: Connection.h:44