13.1.14. サードパーティのリポジトリ#
IDE には OpenMV 独自のボード、ファームウェア、サンプル、機械学習モデル、およびエディター スタブが同梱されていますが、他社からの同じ種類のコンテンツ (パートナーが構築したボード、その上で実行されるファームウェア、そのために調整されたサンプルとモデル、ファームウェアが追加する API のコード補完) も同様に読み込むことができます。これらは third-party repositories として到着します。IDE が独自のコンテンツとマージし、最新の状態に保つコンテンツのフォルダーです。
このページには 2 人の読者がいます。そのほとんどは、他の人が公開したリポジトリをインストールおよび管理する人のためのものです。最後のセクション authoring a repository は、ベンダーがセクションを構築するためのものです。
13.1.14.1. 「サードパーティリポジトリ」ページ#
すべては「編集」→「設定」→「OpenMV」→「サードパーティリポジトリ」から管理されます。この表には、インストールされているすべてのリポジトリと、それぞれの表示名、その短縮 ID (Built-in か User か)、リポジトリが提供する各種類のコンテンツ (ファームウェア、サンプル、モデル、スタブ) のインストールされているバージョン、および更新元の URL がリストされています。
Built-in は、ベンダーが出荷したインストーラー (ドライバー パッケージがプログラムにファイルを追加する方法) によってリポジトリがアプリケーション独自のディレクトリに配置されたことを意味します。 User は、URL から自分でインストールしたことを意味します。唯一の実際的な違いは、組み込みリポジトリを IDE から削除できないことです。組み込みリポジトリは、そこに配置されているものをアンインストールすることで削除されます。そのため、[削除] ボタンは無効になっています。
13.1.14.2. リポジトリのインストール#
URL からインストールでは、リポジトリの config.json (ベンダーが公開する小さなマニフェスト ファイル) のアドレスを要求し、それが指すものをすべてインストールします。ベンダーから提供された URL を貼り付けます。 IDE はマニフェストをダウンロードし、リストされているファームウェア、サンプル、モデル、およびスタブを取得し、各ダウンロードを検証します。リポジトリのインストール、削除、更新はすべて再起動後に有効になるため、インストールが完了すると IDE は再起動を求めます。
ベンダーは、リポジトリをアプリケーション ディレクトリに直接ドロップするインストーラーとして配布することもできます。その場合、最初にページを開いたときには単に Built-in 行として表示され、インストールするものはありません。
13.1.14.3. リポジトリを常に最新の状態に保つ#
更新 URL を含むリポジトリは、IDE が起動するたびにチェックされます。新しいコンテンツが利用可能になると、IDE は内容を通知し、各リポジトリと関連するバージョンをリストし、そのインストールをすべて 1 つのプロンプトで提案します。 「更新のチェック」は、同じチェックをオンデマンドで実行します。
13.1.14.4. 優先順位とオーバーライド#
リポジトリは順序付きリストであり、最も高い優先順位が一番上にあり、「上へ移動」および「下へ移動」により、選択したリストの順序が変更されます。順序が重要になるのは、2 つのソースが「0」のものを提供する場合のみです。つまり、同じ USB 識別子を持つボード、または同じ名前を持つサンプル、モデル、またはスタブです。そうなると、上位のエントリが優先され、すべてのリポジトリが OpenMV の組み込みコンテンツよりも優先されます。これは意図的なものです。これは、ベンダーが OpenMV ボードの USB 識別子を共有するボードに独自のファームウェアを提供し、IDE が提供するストック ファームウェアを置き換えたり、ストック サンプルを自社のハードウェア用に書かれたサンプルに置き換えたりする方法です。
オーバーライドはよく知られた名前の動作を暗黙的に変更するため、ページが名前を隠すことはありません。 [オーバーライド警告] パネルには、有効なすべてのオーバーライド (どのリポジトリのボード、サンプル、モデル、またはスタブがどのオーバーライドをオーバーライドしているか) がリストされ、リポジトリが初めて表示されたときに同じリストがメッセージとして 1 回表示されます。ボード、サンプル、またはモデルが OpenMV のドキュメントに記載されているとおりに動作しない場合は、最初にこのパネルを参照してください。
13.1.14.5. リポジトリが提供するもの#
4 種類のコンテンツはそれぞれ IDE の通常の場所に表示されるため、リポジトリがインストールされれば、新しく学ぶことは何もありません。
Boards and firmware. リポジトリのボードは OpenMV ボードとまったく同じように動作します。接続時に認識され、ステータス バーにタイプが表示され、最新の開発リリースのインストール パスを含む IDE を通じてファームウェアが更新されます。 ファームウェアの更新と復旧を参照してください。
Examples. リポジトリのサンプルは [ファイル] → [サンプル] に表示され、カテゴリ ツリーにマージされます。ベンダーが OpenMV カテゴリと同じ名前を付けたカテゴリのサンプルが OpenMV のカテゴリと並んで配置され、新しいカテゴリが独自のサブメニューになります。他の例と同様に、サポートするボードにフィルターされます。 スクリプト、サンプル、そしてドキュメントフォルダを参照してください。
Models. リポジトリのモデルは Model Zoo に表示され、ベンダー独自の説明とともに同じ方法でブラウザ ツリーにマージされます。
Stubs. リポジトリは
.pyiスタブ ファイルを配布できるため、editor はファームウェアが追加する関数の補完、署名、およびドキュメントを提供します。これは、OpenMV 独自のモジュールやベンダーのカスタム API で得られるのと同じ補完です。