LoadFlyLayerAsync

This method loads a Fly file into the current project. All the objects from the Fly file, including locations, presentations, and hyperlinks, are added.

LoadFlyLayerAsync executes asynchronously, immediately returning an ITerraExplorerAsync80, thereby ensuring that control is promptly handed back to the calling function. The results are delivered when ready using the ITerraExplorerAsync80 object that was returned. The ITerraExplorerAsync80 object provides a callback-based mechanism similar to the JavaScript promise and the C# Task that offers the following functionality:

§   Allows for handling rejections/errors and successful resolution of the asynchronous operation (using OnReject and OnResolve).

§   Upon resolution of the query, enables the passing of the ID of the newly created group which contains the Fly object, to the OnResolve callback.

If you want to execute synchronously, use LoadFlyLayer instead.

 

JavaScript

 

LoadFlyLayerAsync(

       FlyURL,

       ParentGroupID)

 

C#

 

ITerraExplorerAsync80 LoadFlyLayerAsync(

       string FlyURL,

       string ParentGroupID = "")

 

C++

 

HRESULT LoadFlyLayerAsync(

       BSTR FlyURL,

       BSTR ParentGroupID,

       ITerraExplorerAsync80** pVal) 

Parameters

FlyURL 

A full path name or a URL to the Fly file to load.

ParentGroupID

The Project Tree group in which to put the objects from the imported Fly file. If set to zero, the object is created under the root. The layer objects are put in a group with the name of the Fly file (e.g., for the file “C:\MyFly.fly”, a new group named “MyFly” is created), and maintain the same internal group hierarchy as the loaded file. You can obtain the GroupID by one of the following methods:

·          Create the group using IProjectTree80.CreateGroup.

·          Find the group, if you know the name, using IProjectTree80.FindItem.

·          Traverse the Tree using IProjectTree80 methods such as GetNextItem.

Return Value

pVal

An ITerraExplorerAsync80 object, which provides a callback-based mechanism similar to the JavaScript promise and the C# Task that offers the following functionality:

·          Allows for handling rejections/errors and successful resolution of the asynchronous operation (using OnReject and OnResolve).

·          Upon resolution of the query, enables the passing of the ID of the newly created group which contains the Fly object, to the OnResolve callback.

Exceptions

HRESULT can return any of the values listed in the HRESULT Return Values list, as well as the following values:

TE_E_INFOTREE_PARENTNOTGROUP

The group ID entered does not represent a valid group in the Project Tree.

TE_E_INFOTREE_ITEMNOTGROUP

The item entered is not a group and therefore cannot be used as a group.

TE_E_INFOTREE_CANTUSEROOT

Cannot use Tree root for this operation

TE_E_INFOTREE_ITEMISGROUP

Item ID is a group so an object cannot be retrieved.