ArcObjects Library Reference (GlobeCore)  

IGlobeServer Interface

Provides access to members that support Globe server operations. Note: the IGlobeServer interface has been superseded byIGlobeServer2. Please consider using the more recent version.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Members

Description
Method Find Returns a Globe Server Find Result object that contain the given search string.
Method GetAnimation Gets the animation stream.
Method GetCacheName Gets the virtual cache directory for a given layer.
Method GetConfig Gets the configuration file from a given layer.
Method GetConfiguration Gets all the configuration and MQT files from a given layer.
Method GetLegendInfos Returns a collection of Globe Legend Info objects for the specified layers. If layerIDs is Nothing/Null or empty, legend information for all layers is returned.
Method GetMQT Gets the MQT for a given face from a given layer.
Method GetSymbols Gets the symbols with given IDs.
Method GetTextures Gets the textures with given IDs.
Method GetTile Gets a tile for a given tile location from a given layer.
Method GetVirtualCacheDirectory Gets the virtual cache directory for a given layer.
Method Identify Returns a Globe Server Identify Result object at the given location.
Read-only property LayerCount The number of layers in the server under a certain parent.
Read-only property LayerInfos A collection of Globe Layer Info objects.
Read-only property Version The Globe Server version number.

CoClasses that implement IGlobeServer

CoClasses and Classes Description
GlobeServer A Globe Server class that serves Globe Tiles.
GlobeServerIP
GlobeServerLP
[C#]

//Make the connection….

private IAGSServerConnection ConnectToServer (string ServerConnection) //pass either the URL address or Lan ex. http://globeserver/GlobeWebService/GlobeServer22/catalog.agsx

{

//Creat the ArcGIS connection...

IAGSServerConnectionName pAGSServerConnectionName = new AGSServerConnectionNameClass();

//populate IpropertySet2

IPropertySet2 pProps = new PropertySetClass();

//Check the Server types (LAN or http).

if (ServerConnection.StartsWith("http://"))

//case for URL..

{

pProps.SetProperty("URL",ServerConnection);

//LOG A BUG this doesnot work

//pProps.SetProperties("CONNECTIONTYPE", esriAGSConnectionType.esriAGSConnectionTypeInternet);

}

else

{

//case for Lan

pProps.SetProperty("CONNECTIONTYPE", esriAGSConnectionType.esriAGSConnectionTypeLAN);

pProps.SetProperty("MACHINE",ServerConnection);

}

//set the AGSServerConnection name...

pAGSServerConnectionName.ConnectionProperties = pProps;

//use Iname..

IName pName;

pName= (IName) pAGSServerConnectionName;

//get the connection

return (IAGSServerConnection) pName.Open();

}

 

 

private IGlobeServer GetGlobeServerObj(IAGSServerConnection pAGSServerConnection)

{

//use the connecton object passed to get the serverlayer objects...

IAGSEnumServerObjectName pEnumSOName;

pEnumSOName = pAGSServerConnection.ServerObjectNames;

IAGSServerObjectName pSOName;

pSOName = pEnumSOName.Next();

//

while (pSOName !=null)

{

System.Diagnostics.Debug.WriteLine(pSOName.Name,pSOName.Type);

if(pSOName.Type=="GlobeServer") break; //break on the first found available globeSevrer object...

pSOName = pEnumSOName.Next();

}

//create a globeserver, globeserverlayer objects ...

IGlobeServerLayer pglobeSevrerLayer=new GlobeServerLayerClass();

//get the severobject from the GlobeSeverLayer...

int layerid=0;

pglobeSevrerLayer.ServerConnect(pSOName,pSOName.Name,layerid);

IGlobeServer pglobeServer=new GlobeServerClass();

pglobeServer= pglobeSevrerLayer.GlobeServer;

return pglobeServer;

}