OdinAI
 All Classes Namespaces Functions Variables
OdinAIRoot.h
1 /*******************************************************************************
2  * ________ .___.__ _____ .___
3  * \_____ \ __| _/|__| ____ / _ \ | |
4  * / | \ / __ | | |/ \ / /_\ \| |
5  * / | \/ /_/ | | | | \/ | \ |
6  * \_______ /\____ | |__|___| /\____|__ /___|
7  * \/ \/ \/ \/
8  *
9  * Copyright (c) Emil Sandstø 2012
10  *******************************************************************************/
11 #ifndef ODINAI_ODINAIROOT_H
12 #define ODINAI_ODINAIROOT_H
13 
14 #include "OdinAI/NetworkManager.h"
15 #include "OdinAI/EventManager.h"
16 namespace OdinAI
17 {
18  class OdinAIRoot
19  {
20  public:
21  OdinAIRoot();
22 
23 
29  bool Init(int argc, char** argv);
30 
34  void Loop();
35 
40 
45  protected:
46  void Halt() { m_isRunning = false; };
47 
48  EventManager m_eventManager;
49  NetworkManager m_networkManager;
50  private:
56  virtual bool OnLoop() { return true; };
57 
65  virtual bool OnInit() { return true; };
66  bool m_isRunning;
67 
68  };
69 }
70 
71 #endif
NetworkManager & GetNetworkMgr()
Definition: EventManager.h:32
Definition: OdinAIRoot.h:18
void Loop()
Enters the main loop, executes until OdinAIRoot::Halt() is called.
EventManager & GetEventMgr()
Definition: NetworkManager.h:31
bool Init(int argc, char **argv)
Inits all OdinAI systems.