#ifndef ACTIONMANAGER_H_ #define ACTIONMANAGER_H_ #include #include #include"Models/Flags.h" #include"Models/IcarusAction.h" namespace Managers { class ActionManager { public: ActionManager(char**); Models::IcarusAction retrieveIcarusAction() const; std::vector retrieveFlags() const; std::string retrieveAction() const; private: bool isNumber(std::string); void initialize(); void initializeSupportedActions(); void initializeSupportedFlags(); void validateAction(); void validateFlags(); std::vector parsedFlags(); void printAction(); void printFlags(std::vector); void printFlags(); std::string action; std::vector supportedActions; std::vector supportedFlags; std::vector flags; char **params; }; } #endif