All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
CommandProcessor.h
1 // Copyright eeGeo Ltd (2012-2014), All Rights Reserved
2 
3 #pragma once
4 
5 #include "Commands.h"
6 #include "CommandCallback.h"
7 #include "Types.h"
8 #include <vector>
9 
10 namespace Eegeo
11 {
12  namespace Debug
13  {
14  namespace Commands
15  {
17  {
18  public:
20  CommandBuffer& commandBuffer,
21  const CommandParser& commandParser,
22  const CommandRegistry& commandRegistry,
23  const CommandTerminal& commandTerminal);
24 
25  bool Update();
26 
27  void AddCommandCompletedCallback(ICommandCallback& callback);
28  void RemoveCommandCompletedCallback(ICommandCallback& callback);
29  private:
30  const CommandRegistry& m_commandRegistry;
31  const CommandParser& m_commandParser;
32  const CommandTerminal& m_commandTerminal;
33  CommandBuffer& m_commandBuffer;
34  std::vector<ICommandCallback*> m_callbacks;
35  };
36  }
37  }
38 }
39