Advertisement
Guest User

Untitled

a guest
May 24th, 2015
215
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.43 KB | None | 0 0
  1. class StateManager
  2. {
  3.  
  4. private:
  5.    template <typename T>
  6.    std::unique_ptr<State> StateFactory()
  7.    {
  8.       return std::unique_ptr<State>(new T());
  9.    }
  10.  
  11. public:
  12.    StateManager();
  13.  
  14.    template <typename T>
  15.    void registerState(States::State state)
  16.    {
  17.       stateMap[state] = StateFactory<T>;
  18.    }
  19.  
  20.    void add();
  21.    void remove();
  22.  
  23. private:
  24.    template <typename T>
  25.    std::map<States::State, > stateMap;
  26.  
  27. };
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement