@itwin/core-frontend
Version:
iTwin.js frontend components
84 lines • 3.92 kB
TypeScript
import { AccessToken, GuidString } from "@itwin/core-bentley";
import { RealityData, RealityDataSourceKey, RealityDataSourceProps } from "@itwin/core-common";
import { PublisherProductInfo, RealityDataSource, SpatialLocationAndExtents } from "./RealityDataSource";
/** This class provides access to the reality data provider services.
* It encapsulates access to a reality data weiter it be from local access, http or ProjectWise Context Share.
* The key provided at the creation determines if this is ProjectWise Context Share reference.
* If not then it is considered local (ex: C:\temp\TileRoot.json) or plain http access (http://someserver.com/data/TileRoot.json)
* There is a one to one relationship between a reality data and the instances of present class.
* @internal
*/
export declare class RealityDataSourceContextShareImpl implements RealityDataSource {
readonly key: RealityDataSourceKey;
/** The URL that supplies the 3d tiles for displaying the reality model. */
private _tilesetUrl;
private _isUrlResolved;
private _rd;
/** For use by all Reality Data. For RD stored on PW Context Share, represents the portion from the root of the Azure Blob Container*/
private _baseUrl;
/** Construct a new reality data source.
* @param props JSON representation of the reality data source
*/
protected constructor(props: RealityDataSourceProps);
/**
* Create an instance of this class from a source key and iTwin context/
*/
static createFromKey(sourceKey: RealityDataSourceKey, iTwinId: GuidString | undefined): Promise<RealityDataSource | undefined>;
get isContextShare(): boolean;
/**
* Returns Reality Data if available
*/
get realityData(): RealityData | undefined;
get realityDataId(): string | undefined;
/**
* Returns Reality Data type if available
*/
get realityDataType(): string | undefined;
/**
* Query Reality Data from provider
*/
private queryRealityData;
private setBaseUrl;
/**
* Gets a tileset's app data json
* @param name name or path of tile
* @returns app data json object
* @internal
*/
getRealityDataTileJson(accessToken: AccessToken, name: string, realityData: RealityData): Promise<any>;
/**
* This method returns the URL to access the actual 3d tiles from the service provider.
* @returns string containing the URL to reality data.
*/
getServiceUrl(iTwinId: GuidString | undefined): Promise<string | undefined>;
getRootDocument(_iTwinId: GuidString | undefined): Promise<any>;
/**
* Gets tile content
* @param name name or path of tile
* @returns array buffer of tile content
*/
getRealityDataTileContent(accessToken: AccessToken, name: string, realityData: RealityData): Promise<ArrayBuffer>;
/**
* Returns the tile content. The path to the tile is relative to the base url of present reality data whatever the type.
*/
getTileContent(name: string): Promise<any>;
/**
* Returns the tile content in json format. The path to the tile is relative to the base url of present reality data whatever the type.
*/
getTileJson(name: string): Promise<any>;
getTileContentType(url: string): "tile" | "tileset";
/**
* Gets spatial location and extents of this reality data source
* @returns spatial location and extents
* @internal
*/
getSpatialLocationAndExtents(): Promise<SpatialLocationAndExtents | undefined>;
/**
* Gets information to identify the product and engine that create this reality data
* Will return undefined if cannot be resolved
* @returns information to identify the product and engine that create this reality data
* @alpha
*/
getPublisherProductInfo(): Promise<PublisherProductInfo | undefined>;
}
//# sourceMappingURL=RealityDataSourceContextShareImpl.d.ts.map