Command Line Parser =================== .. highlight:: cpp CommandLineParser -------- .. ocv:class:: CommandLineParser The CommandLineParser class is designed for command line arguments parsing .. ocv:function:: CommandLineParser::CommandLineParser(int argc, const char * const argv[], const std::string keys) :param argc: :param argv: :param keys: .. ocv:function:: T CommandLineParser::get(const std::string& name, bool space_delete = true) :param name: :param space_delete: .. ocv:function:: T CommandLineParser::get(int index, bool space_delete = true) :param index: :param space_delete: .. ocv:function:: bool CommandLineParser::has(const std::string& name) :param name: .. ocv:function:: bool CommandLineParser::check() .. ocv:function:: void CommandLineParser::about(std::string message) :param message: .. ocv:function:: void CommandLineParser::printMessage() .. ocv:function:: void CommandLineParser::printErrors() .. ocv:function:: std::string CommandLineParser::getPathToApplication() The sample below demonstrates how to use CommandLineParser: :: CommandLineParser parser(argc, argv, keys); parser.about("Application name v1.0.0"); if (parser.has("help")) { parser.printMessage(); return 0; } int N = parser.get("N"); double fps = parser.get("fps"); std::string path = parser.get("path"); use_time_stamp = parser.has("timestamp"); std::string img1 = parser.get(0); std::string img2 = parser.get(1); int repeat = parser.get(2); if (!parser.check()) { parser.printErrors(); return 0; } Syntax: :: const std::string keys = "{help h usage ? | | print this message }" "{@image1 | | image1 for compare }" "{@image2 | | image2 for compare }" "{@repeat |1 | number }" "{path |. | path to file }" "{fps | -1.0 | fps for output video }" "{N count |100 | count of objects }" "{ts timestamp | | use time stamp }" ; Use: :: # ./app -N=200 1.png 2.jpg 19 -ts # ./app -fps=aaa ERRORS: Exception: can not convert: [aaa] to [double]