void run_utility(const std::string& utility_name, const std::vector<std::string>& arg) { UtilityProgram util = get_utility_map()[utility_name]; if(!util) { std::string known; for(UtilityMap::const_iterator i = get_utility_map().begin(); i != get_utility_map().end(); ++i) { if(i->second) { known += i->first + " "; } } ASSERT_LOG(false, "Unknown utility: '" << utility_name << "'; known utilities: " << known); } util(arg); }
int register_utility(const std::string& name, UtilityProgram utility, bool needs_video) { get_utility_map()[name] = utility; if(!needs_video) { get_command_line_utilities().insert(name); } return 0; }
int register_utility(const std::string& name, UtilityProgram utility) { get_utility_map()[name] = utility; return 0; }