class IModelPreloader
(Niantic.Lightship.AR.Utilities.Preloading.IModelPreloader)
概要
ARDKクラスのインターフェイスで、意識特徴に必要なニューラルネットワークモデルファイルを事前にダウンロードします。 ファイルがプリロードされていない場合、これらの機能を使用するように設定されたARセッションが実行されると、ファイルのダウンロードに時間がかかります。
クラス IModelPreloader:IDisposable {
public:
// methods
virtual abstract PreloaderStatusCode DownloadModel(DepthMode depthMode) = 0;
virtual abstract PreloaderStatusCode DownloadModel(SemanticsMode semanticsMode) = 0;
virtual abstract PreloaderStatusCode RegisterModel(
DepthMode depthMode,
string filepath
) = 0;
virtual abstract PreloaderStatusCode RegisterModel(
SemanticsMode semanticsMode,
string filepath
) = 0;
virtual abstract PreloaderStatusCode CurrentProgress(
DepthMode depthMode,
out float progress
) = 0;
virtual abstract PreloaderStatusCode CurrentProgress(
SemanticsMode semanticsMode,
out float progress
) = 0;
virtual abstract bool ExistsInCache(DepthMode depthMode) = 0;
virtual abstract bool ExistsInCache(SemanticsMode semanticsMode) = 0;
virtual abstract bool ClearFromCache(DepthMode depthMode) = 0;
virtual abstract bool ClearFromCache(SemanticsMode semanticsMode) = 0;
virtual abstract void Dispose() = 0;
};
詳細資料
ARDKクラスのインターフェイスで、意識特徴に必要なニューラルネットワークモデルファイルを事前にダウンロードします。 ファイルがプリロードされていない場合、これらの機能を使用するように設定されたARセッションが実行されると、ファイルのダウンロードに時間がかかります。
各アウェアネス機能には、性能-品質曲線上に1つ以上のモードがあり、各モードは異なるモデルファイルに対応している。 Niantic.Lightship.AR.Utilities.Preloading](../index.mdx)のFeatureを参照してください。
メソッド
DownloadModel
virtual abstract PreloaderStatusCode DownloadModel(DepthMode depthMode) = 0
要求されたモデルファイルがまだ存在しなければ、キャッシュへのダウンロードを開始する。 リクエストステータスは、CurrentProgress(DepthMode, float)またはExistsInCache(DepthMode)でポーリングできます。
戻り値:
リクエストの初期ステータスを示すPreloaderStatusCodeを返す。 リクエストの最終結果は、非同期ネットワーク操作のために延期される可能性があるため、このリクエストがPreloaderStatusCode.SuccessまたはPreloaderStatusCode.RequestInProgressを返す場合、ユーザーは、ネットワークリクエストが正常に完了したことを確認するために、フレームごとにCurrentProgress(DepthMode, out float)を問い合わせ続ける必要があります。
DownloadModel
virtual abstract PreloaderStatusCode DownloadModel(SemanticsMode semanticsMode) = 0
要求されたモデルファイルがまだ存在しなければ、キャッシュへのダウンロードを開始する。 リクエストステータスは、CurrentProgress(SemanticsMode, float)またはExistsInCache(SemanticsMode)でポーリングできます。
戻り値:
リクエストの初期ステータスを示すPreloaderStatusCodeを返す。 リクエストの最終結果は、非同期ネットワーク操作のために延期される可能性があるため、このリクエストがPreloaderStatusCode.SuccessまたはPreloaderStatusCode.RequestInProgressを返す場合、ユーザーは、ネットワークリクエストが正常に完了したことを確認するために、フレームごとにCurrentProgress(SemanticsMode, out float)を問い合わせ続ける必要が あります。
RegisterModel
virtual abstract PreloaderStatusCode RegisterModel(
DepthMode depthMode,
string filepath
) = 0
特定のフィーチャーのローカルニューラルネットワークモデルファイルを登録します。 これは、指定された機能モードに対する Lightship の URI を上書きし、Lightship が初期化されるまで有効です。 このファイルは、アプリケーションからアクセス可能な場所にあり、ARセッションの間、そのままでなければならない。
戻り値:
リクエストの結果を示すPreloaderStatusCodeを返す。
RegisterModel
virtual abstract PreloaderStatusCode RegisterModel(
SemanticsMode semanticsMode,
string filepath
) = 0
特定のフィーチャーのローカルニューラルネットワークモデルファイルを登録します。 これは、指定された機能モードに対する Lightship の URI を上書きし、Lightship が初期化されるまで有効です。 このファイルは、アプリケーションからアクセス可能な場所にあり、ARセッションの間、そのままでなければならない。
戻り値:
リクエストの結果を示すPreloaderStatusCodeを返す。
CurrentProgress
virtual abstract PreloaderStatusCode CurrentProgress(
DepthMode depthMode,
out float progress
) = 0
モードファイル要求の現在のステータスを読む。 DownloadModel の結果は非同期であるため、HTTP リクエストが正常に完了したことを確認するために、呼び出し元は CurrentProgress(DepthMode, float) をポーリングしてリクエストのステータスを確認する必要があります。
Parameters:
progress
- [0.0, 1.0] の範囲の値で、指定したフィーチャーモードのモデルファイルのダウンロードがどれだけ進んでいるかを表します。 進捗が1.0であれば、ファイルがキャッシュに存在することを意味する。 ダウンロードの進行状況はサーバーに依存するため、常に進行状況のインクリメンタルな更新をサポートするとは限りません。
戻り値:
リクエストの ステータスを示すPreloaderStatusCodeを返す。
CurrentProgress
virtual abstract PreloaderStatusCode CurrentProgress(
SemanticsMode semanticsMode,
out float progress
) = 0
モードファイル要求の現在のステータスを読む。 DownloadModel の結果は非同期であるため、呼び出し元は HTTP リクエストが正常に完了したことを確認するために、CurrentProgress(SemanticsMode, float)をポーリングしてリクエストのステータスを確認する必要があります。
Parameters:
progress
- [0.0, 1.0] の範囲の値で、指定したフィーチャーモードのモデルファイルのダウンロードがどれだけ進んでいるかを表します。 進捗が1.0であれば、ファイルがキャッシュに存在することを意味する。 ダウンロードの進行状況はサーバーに依存するため、常に進行状況のインクリメンタルな更新をサポートするとは限りません。
戻り値:
リクエストのステータスを示すPreloaderStatusCodeを返す。