Skip to content

SmithsonianCatalogProvider

ClassAssetInventoryAssetInventory.Editor
public sealed class SmithsonianCatalogProvider : RemoteCatalogProviderBase, IRemoteCatalogProvider, IRemoteCatalogAccessProbe

Browses Smithsonian Open Access 3D objects and resolves GLB files, including Draco-compressed variants.

public SmithsonianCatalogProvider(HttpClient client = null)

Creates a Smithsonian provider with a caller-owned HTTP client, or an owned default client when none is supplied.

Parameters

Name Type
client System.Net.Http.HttpClient

FetchAsync(RemoteCatalogRequest, CancellationToken)

Section titled “FetchAsync(RemoteCatalogRequest, CancellationToken)”
public override Task<RemoteCatalogPage> FetchAsync(RemoteCatalogRequest request, CancellationToken cancellationToken)

Browses or searches GLB files, grouping each page by model and reporting the smallest known file size that does not use Draco.

Parameters

Name Type
request AssetInventory.RemoteCatalogRequest
cancellationToken System.Threading.CancellationToken

Returns

System.Threading.Tasks.Task{AssetInventory.RemoteCatalogPage}

GetVariantsAsync(string, RemoteCatalogRequest, CancellationToken)

Section titled “GetVariantsAsync(string, RemoteCatalogRequest, CancellationToken)”
public override Task<IReadOnlyList<RemoteDownloadVariant>> GetVariantsAsync(string itemId, RemoteCatalogRequest request, CancellationToken cancellationToken)

Retrieves all GLB files for a model, removes duplicate download URLs, and lists non-Draco files before variants carrying a Draco import notice.

Parameters

Name Type
itemId System.String
request AssetInventory.RemoteCatalogRequest
cancellationToken System.Threading.CancellationToken

Returns

System.Threading.Tasks.Task{System.Collections.Generic.IReadOnlyList{AssetInventory.RemoteDownloadVariant}}

public override string Id { get; }

Returns

System.String