![]() |
OpenCV 5.0.0
Open Source Computer Vision
|
コマンドラインのパース用に設計されている。 続きを読む...
#include <opencv2/core/utility.hpp>
公開メンバ関数 | |
| CommandLineParser (const CommandLineParser &parser) | |
| コピーコンストラクタ。 | |
| CommandLineParser (int argc, const char *const argv[], const String &keys) | |
| コンストラクタ。 | |
| ~CommandLineParser () | |
| デストラクタ。 | |
| void | about (const String &message) |
| 概要メッセージを設定する。 | |
| bool | check () const |
| パースエラーをチェックする。 | |
| template<typename T > | |
| T | get (const String &name, bool space_delete=true) const |
| 引数に名前でアクセスする。 | |
| template<typename T > | |
| T | get (int index, bool space_delete=true) const |
| 位置引数にインデックスでアクセスする。 | |
| String | getPathToApplication () const |
| アプリケーションのパスを返す。 | |
| bool | has (const String &name) const |
| フィールドがコマンドラインで指定されたかどうかをチェックする。 | |
| CommandLineParser & | operator= (const CommandLineParser &parser) |
| 代入演算子。 | |
| void | printErrors () const |
| 発生したエラーの一覧を表示する。 | |
| void | printMessage () const |
| ヘルプメッセージを表示する。 | |
限定公開メンバ関数 | |
| void | getByIndex (int index, bool space_delete, Param type, void *dst) const |
| void | getByName (const String &name, bool space_delete, Param type, void *dst) const |
限定公開変数類 | |
| Impl * | impl |
コマンドラインのパース用に設計されている。
以下のサンプルは CommandLineParser の使い方を示す:
keysパラメータは、複数のブロックを含む文字列である。各ブロックは波括弧で囲まれ、1つの引数を記述する。各引数は | 記号で区切られた3つの部分から成る:
@ 記号を付ける)例:
help と timestamp にはデフォルト値がないため、has() メソッドを使ってそれらの有無をチェックできる点に注意する。デフォルト値を持つ引数は常に存在するものとみなされる。これらの場合は、代わりに get() メソッドを使って実際の値をチェックする。標準の空白以外の空白文字は文字列の一部とみなされる点にも注意する。さらに、ヘルプメッセージの前後にある標準の空白は無視される。
get<String>("@image1") のような文字列キーは、デフォルトでは空のデフォルト値であっても空文字列 "" を返す。返される文字列が空であってはならないことを強制するには、特別なデフォルト値 <none> を使う。(get<String>("@image2") のように)
上記で説明したキーに対して:
| cv::CommandLineParser::CommandLineParser | ( | int | argc, |
| const char *const | argv[], | ||
| const String & | keys ) |
| cv::CommandLineParser::CommandLineParser | ( | const CommandLineParser & | parser | ) |
コピーコンストラクタ。
| cv::CommandLineParser::~CommandLineParser | ( | ) |
デストラクタ。
| void cv::CommandLineParser::about | ( | const String & | message | ) |
概要メッセージを設定する。
概要メッセージは printMessage が呼び出されたときに、引数テーブルの直前に表示される。
| bool cv::CommandLineParser::check | ( | ) | const |
パースエラーをチェックする。
パラメータへのアクセス中にエラー(不正な変換、引数の欠落など)が発生した場合は false を返す。エラーメッセージの一覧を表示するには printErrors を呼び出す。
|
inline |
引数に名前でアクセスする。
選択した型に変換された引数を返す。引数が不明であるか、選択した型に変換できない場合は、エラーフラグが設定される(check でチェックできる)。
例として、次のように定義し:
呼び出す:
アクセス:
| name | 引数の名前 |
| space_delete | 文字列の左右から空白を取り除く |
| T | the argument will be converted to this type if possible |
@ を先頭に付けた名前でアクセスできる:
|
inline |
位置引数にインデックスでアクセスする。
選択した型に変換された引数を返す。インデックスは0から数える。
例として、次のように定義し:
呼び出す:
引数へのアクセス:
| index | 引数のインデックス |
| space_delete | 文字列の左右から空白を取り除く |
| T | the argument will be converted to this type if possible |
|
protected |
|
protected |
| String cv::CommandLineParser::getPathToApplication | ( | ) | const |
アプリケーションのパスを返す。
このメソッドは、コマンドライン(argv[0])から実行ファイルへのパスを返す。
例えば、アプリケーションが次のようなコマンドで起動された場合:
このメソッドは ./bin を返す。
| bool cv::CommandLineParser::has | ( | const String & | name | ) | const |
フィールドがコマンドラインで指定されたかどうかをチェックする。
| name | チェックする引数名 |
| CommandLineParser & cv::CommandLineParser::operator= | ( | const CommandLineParser & | parser | ) |
代入演算子。
| void cv::CommandLineParser::printErrors | ( | ) | const |
| void cv::CommandLineParser::printMessage | ( | ) | const |
|
protected |