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