#ifndef COMMANDMANAGER_H
#define COMMANDMANAGER_H

#include "server/commands/ServerCommands.h"
#include "server/commands/CommandTypes.h"
#include "gaming-core/utils/HashMap.h"

class CommandManager {
public:
    CommandManager();

    void execute(ServerCommands& sc, const RawCommand& rawCommand);
    
private:
    typedef void (*Command) (ServerCommands&, const CommandArguments&);

    HashMap<CommandName, Command, 16> commands;
};

#endif