Exemplo n.º 1
0
void HotKeysParser::add_hotkey(const std::string& hotkey, const CommandsMap& commands_map)
{
    std::string::size_type key_start = hotkey.find('=', 0);
    if (key_start == std::string::npos) {
        THROW("unable to parse hot keys");
    }
    std::string command_name = hotkey.substr(0, key_start);

    if (commands_map.find(command_name) == commands_map.end()) {
        THROW("invalid action bname %s", command_name.c_str());
    }
    int command_id = commands_map.find(command_name)->second;
    std::string keys = hotkey.substr(key_start + 1);
    parse_keys(command_id, keys);
}
Exemplo n.º 2
0
int main(int p_argc, char* p_argv[]) {
	std::cout << "-------------------------" << std::endl;
	std::cout << "GPU plot generator v4.2.2" << std::endl;
	std::cout << "-------------------------" << std::endl;
	std::cout << "Author:   Cryo" << std::endl;
	std::cout << "Bitcoin:  138gMBhCrNkbaiTCmUhP9HLU9xwn5QKZgD" << std::endl;
	std::cout << "Burst:    BURST-YA29-QCEW-QXC3-BKXDL" << std::endl;
	std::cout << "----" << std::endl;

	typedef cryo::gpuPlotGenerator::CommandHelp::CommandsMap CommandsMap;
	CommandsMap commands;
	commands.insert(CommandsMap::value_type("help", CommandsMap::mapped_type(new cryo::gpuPlotGenerator::CommandHelp(commands))));
	commands.insert(CommandsMap::value_type("listPlatforms", CommandsMap::mapped_type(new cryo::gpuPlotGenerator::CommandListPlatforms())));
	commands.insert(CommandsMap::value_type("listDevices", CommandsMap::mapped_type(new cryo::gpuPlotGenerator::CommandListDevices())));
	commands.insert(CommandsMap::value_type("setup", CommandsMap::mapped_type(new cryo::gpuPlotGenerator::CommandSetup())));
	commands.insert(CommandsMap::value_type("generate", CommandsMap::mapped_type(new cryo::gpuPlotGenerator::CommandGenerate())));
	commands.insert(CommandsMap::value_type("verify", CommandsMap::mapped_type(new cryo::gpuPlotGenerator::CommandVerify())));

	if(p_argc == 1) {
		commands.at("help")->help();
		return -1;
	}

	std::string command(p_argv[1]);
	std::vector<std::string> args(p_argv + 2, p_argv + p_argc);
	if(commands.find(command) == commands.end()) {
		std::cout << "[ERROR] Unknown [" << command << "] command" << std::endl;
		std::cout << "----" << std::endl;

		commands.at("help")->help();
		return -1;
	}

	return commands.at(command)->execute(args);
}
Exemplo n.º 3
0
int main(int p_argc, char* p_argv[]) {
	std::cerr << "-------------------------" << std::endl;
	std::cerr << "GPU plot generator v2.0.1" << std::endl;
	std::cerr << "-------------------------" << std::endl;
	std::cerr << "Author:   Cryo" << std::endl;
	std::cerr << "Bitcoin:  138gMBhCrNkbaiTCmUhP9HLU9xwn5QKZgD" << std::endl;
	std::cerr << "Burst:    BURST-YA29-QCEW-QXC3-BKXDL" << std::endl;
	std::cerr << "----" << std::endl;

	typedef std::map<std::string, Command*> CommandsMap;
	CommandsMap commands;
	commands.insert(CommandsMap::value_type("help", new CommandHelp(commands)));
	commands.insert(CommandsMap::value_type("list", new CommandList()));
	commands.insert(CommandsMap::value_type("generate", new CommandGenerate()));

	std::vector<std::string> args(p_argv + 1, p_argv + p_argc);
	if(args.size() == 0) {
		commands.at("help")->help();
		return -1;
	}

	std::string command(args[0]);
	if(commands.find(command) == commands.end()) {
		std::cerr << "[ERROR] Unknown [" << command << "] command" << std::endl;
		std::cerr << "----" << std::endl;

		commands.at("help")->help();
		return -1;
	}

	int returnCode = commands.at(command)->execute(args);
	for(CommandsMap::iterator it(commands.begin()) ; it != commands.end() ; ++it) {
		delete it->second;
	}

	return returnCode;
}