API リファレンス

現在ご覧いただいているのは最新版の内容です(V2.2.0)。異なるバージョンを参照する場合は、画面右上のボタンから切り替えが可能です。

■ ご利用中のバージョンが分からない場合や、サポートが必要な場合はお気軽にサポート窓口までご連絡ください。

Mech-Vision SDK は、ビジョンソリューション、プロジェクト、およびステップのライフサイクル全体を管理するための以下の主要クラスを提供します。

主要クラス一覧

クラス名 説明

solution

ビジョンソリューションのライフサイクルを管理します。ソリューションの開く、閉じる、保存、名前変更や、ソリューション情報、プロジェクト情報、カメラ情報、通信設定などの取得をサポートします。

Project

ビジョンプロジェクトを管理します。プロジェクトの保存、実行/停止、出力データの取得、ステップ出力ポートの固定などをサポートします。また、実行状態変更コールバックおよび画像取得完了コールバックの登録も可能です。

Step

ビジョンプロジェクト内の個々のステップを管理します。ステップ情報の取得、ステップパラメータ(JSON形式)の読み取り/書き込み、ステップ単体実行、ステップ出力データの取得などをサポートします。

ErrorStatus

操作結果を表す共通エラーステータス構造体です。エラーコード(code)と説明(description)を保持し、処理成功可否を判定する ok() メソッドを提供します。

Solution クラス

主なメソッド

メソッドシグネチャ 戻り値 説明

open(path, username, password)

ErrorStatus

指定したパスのソリューションを開きます。usernamepassword はオプションです(アクセス制御がない場合は空文字列を指定)。

close(discardChanges=true)

ErrorStatus

開いているソリューションを閉じます。discardChanges=true の場合、未保存の変更を破棄して強制的に閉じます。

save()

ErrorStatus

現在のソリューションを保存します。

rename(name)

ErrorStatus

ソリューション名を変更します(ソリューションディレクトリも同時に変更されます)。連続して名前変更を行う場合は、一定時間の間隔を空ける必要があります。

getInfo(info)

ErrorStatus

ソリューションの基本情報を取得し、SolutionInfo 構造体に出力します。

getAllProjectInfos(projectInfos)

ErrorStatus

ソリューション内のすべてのプロジェクト情報を取得し、vector<ProjectInfo> に出力します。

SolutionInfo 構造体

struct SolutionInfo {
    std::string name;       // Solution name
    std::string path;       // Absolute path of the solution directory
    std::string version;    // Solution version
    bool hasChanges;        // Whether there are unsaved changes
    bool isRunning;         // Whether it is currently running
};

Project クラス

主なメソッド

メソッドシグネチャ 戻り値 説明

Project(name)

コンストラクタ。プロジェクト名を指定します。

getInfo(info)

ErrorStatus

プロジェクトの基本情報を取得し、ProjectInfo 構造体に出力します。

save()

ErrorStatus

プロジェクトを保存します。

run(state, requestId, projectResult)

ErrorStatus

プロジェクトを実行します。state には OutputFinished(出力ステップ完了まで待機)または Finished(プロジェクト全体の完了まで待機)を指定できます。

stopRun()

ErrorStatus

実行中のプロジェクトを停止します。

getOutput(outputJson)

ErrorStatus

プロジェクトの出力データ(JSON文字列)を取得します。

pinStepOutput(stepPorts)

ErrorStatus

指定したステップ出力ポートのデータを保持し、プロジェクト実行終了後に破棄されないようにします。

setRunningChangedCallback(cb)

void

プロジェクト実行状態変更コールバックを登録します(開始時・終了時に呼び出されます)。

setCaptureFinishedCallback(cb)

void

画像取得完了コールバックを登録します(すべての取得ステップの実行完了後に呼び出されます)。

ProjectInfo 構造体

struct ProjectInfo {
    int id;               // Unique project ID
    std::string name;     // Project name
    std::string path;     // Absolute path of the project file
    bool hasChanges;      // Whether there are unsaved changes
    bool isRegistered;    // Whether it is registered
    bool isRunning;       // Whether it is currently running
};

ProjectResult 構造体

struct ProjectResult {
    std::string projectName; // Project name
    std::string requestId;   // Unique identifier for this run
    int64_t jobId;           // Project run task ID
    std::string outputJson;  // Output data in JSON format (pick point pose and so on)
};

Step クラス

主なメソッド

メソッドシグネチャ 戻り値 説明

Step(name, projectName)

コンストラクタ。ステップ名および所属プロジェクト名を指定します。

getInfo(info)

ErrorStatus

ステップの基本情報を取得し、StepInfo 構造体に出力します。

getPropertiesJson(namesJson, propsJson)

ErrorStatus

パラメータ名の JSON 配列を指定してステップパラメータを取得します。namesJson の形式例:["threshold"]

setPropertiesJson(propsJson)

ErrorStatus

JSON 文字列を使用してステップパラメータを一括設定します。

run(requestId, stepResult)

ErrorStatus

当該ステップを単独実行します(先頭から当該ステップまで実行)。

getOutput(portIndex, stepOutput)

ErrorStatus

指定ポートのステップ出力データを取得します。事前に Project::pinStepOutput() を呼び出してポートを固定する必要があります。

StepInfo 構造体

struct StepInfo {
    std::string guid; // Step GUID
    std::string name; // Step name
};

ErrorStatus 構造体

すべての SDK メソッドは ErrorStatus を返します。ErrorStatus には以下のメンバーが含まれます。

struct ErrorStatus {
    std::string code;        // Error code (for example, "SUCCESS" or "-E_FILE_IO_ERROR")
    std::string description; // Error description

    bool ok() const;         // Whether successful (code == "SUCCESS")
};

主なエラーコード

エラーコード 意味

E_SUCCESS

操作が正常に完了しました。

E_INTERNAL

内部エラー(プロジェクトサービスが登録されていない場合など)。

E_FILEIO

ファイル I/O エラー(パスが存在しない、保存に失敗した場合など)。

E_INVALID_PARAM

不正なパラメータ(パラメータが空、または形式が正しくない場合)。

E_NOT_COMPATIBLE

バージョンに互換性がありません。

E_PERMISSION_DENIED

アクセス権限が不足しています。

E_SOLUTION_NOT_FOUND

ソリューションが開かれていません。

E_SOLUTION_LOGIN_FAILED

ソリューションのユーザー名またはパスワードが正しくありません。

E_PROJECT_NOT_FOUND

プロジェクトが見つかりません。

E_PROJECT_RUNNING

プロジェクト実行中のため、この操作は実行できません。

E_PROJECT_EXEC_INSTANCE_OVERFLOW

実行中のプロジェクトタスク数が上限を超えています。

E_STEP_NOT_FOUND

ステップが存在しません。

E_STEP_INVALID_PROPERTY

ステップのパラメータ名が存在しない、またはパラメータ値の型が一致しません。

E_RECIPE_NAME_NOT_FOUND

指定されたパラメータレシピ名が存在しません。

E_GLOBAL_VARIABLE_NOT_FOUND

グローバル変数が存在しません。

E_GLOBAL_VARIABLE_TYPE_MISMATCH

グローバル変数の型が一致しません。

グローバル関数

関数シグネチャ 説明

void initialize(configFilePath={})

SDK を初期化します。JSON 形式の設定ファイルパスを指定できます。指定しない場合はデフォルト設定が使用されます。プログラム起動時に必ず最初に呼び出してください。

void uninitialize()

SDK の終了処理を行い、すべてのリソースを解放します。プログラム終了前に必ず呼び出してください。

bool startServer(serverPath={})

SDK を介して Mech-Vision を起動します。

bool closeServer()

SDK を介して起動した Mech-Vision を終了します。

この情報は役に立ちましたか?

ご意見・ご要望がございましたら、以下よりお寄せください:

Mech-Mindは、お客様のプライバシーを重視しています

このサイトでは最高の体験を提供するために Cookie を使用しています。サイトの閲覧を続ける場合、Cookie の使用に同意したことになります。「拒否する」を選択すると、このサイトを訪れた際に追跡や記憶が行われないように単独の Cookie が使用されます。