com.esri.arcgis.trackinganalyst
Class TrackingEnvironment

java.lang.Object
  extended by com.esri.arcgis.trackinganalyst.TrackingEnvironment
All Implemented Interfaces:
com.esri.arcgis.interop.RemoteObjRef, IDocumentVersionSupportGEN, IPersist, IPersistStream, ITemporalGraphs, ITrackingEnvironment, ITrackingEnvironment2, ITrackingEnvironment3, Externalizable, Serializable

public class TrackingEnvironment
extends Object
implements com.esri.arcgis.interop.RemoteObjRef, ITrackingEnvironment, ITrackingEnvironment3, ITrackingEnvironment2, ITemporalGraphs, IPersistStream, IDocumentVersionSupportGEN, Externalizable

Provides a storage area for global Tracking environment objects.

Description

The tracking Environment singleton is a repository for commonly used configuration and state information needed by the tracking analyst objects. It provides functions that allow the tracking components to:

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server. Requires Tracking Analyst Extension.

See Also:
Serialized Form

Constructor Summary
TrackingEnvironment()
          Constructs a TrackingEnvironment using ArcGIS Engine.
TrackingEnvironment(Object obj)
          Deprecated. As of ArcGIS 9.2, replaced by normal Java casts.
TrackingEnvironment theTrackingEnvironment = (TrackingEnvironment) obj;
 
Method Summary
 void addGraph(ITemporalGraph piTemporalGraph)
          Adds a temporal graph.
 void close()
          Closes the Tracking Analyst Environment.
 Object convertToSupportedObject(int docVersion)
          Convert the object to another object that is supported.
 boolean equals(Object o)
          Compare this object with another
 IActionLookupSupport getActionEnvironment()
          Returns the Action Environment.
 void getClassID(GUID[] pClassID)
          getClassID
static String getClsid()
          getClsid.
 short getCount()
          Number of temporal graphs.
 ITemporalLegendGroup getDefaultTemporalLegendGroup()
          Returns the default Temporal Legend Group.
 ITemporalReference getDefaultTemporalReference()
          Returns the default Temporal Reference.
 IDirectionalVectorRendererProperties getDirectionalVectorProp()
          Returns the global (default) properties associated with the Directional Vector Rendering.
 ITAUpdateControl getDisplayManager()
          Returns the Tracking Display Manager.
 IEventAttributeProperties getEventAttributeProp()
          Returns the global (default) properties associated with the Event Attribute Rendering.
 ITemporalGraph getGraph(short nIndex)
          Retrieves a graph by index.
 ILabelEngineManager2 getLabelEngineManager()
          Returns the Tracking Label Engine Manager.
 void getSizeMax(_ULARGE_INTEGER[] pcbSize)
          getSizeMax
 int hashCode()
          the hashcode for this object
 void initialize(Object pInitializationData)
          Initializes the Tracking Analyst Environment.
 boolean isAttached()
          Indicates whether or not the tracking environment is attached to a document object.
 void isDirty()
          isDirty
 boolean isEnableTemporalDisplayManagement()
          Indicates if Temporal Management of the Display is enabled.
 boolean isLicensed()
          Indicates whether or not the tracking components are properly licensed.
 boolean isRunningInApplication()
          Indicates if the object is attached to an ArcGIS Application.
 boolean isRunningInArcMap()
          Indicates if the object is attached to ArcMap.
 boolean isRunningInCatalog()
          Indicates if the object is attached to ArcCatalog.
 boolean isRunningInMapControl()
          Indicates if the object is attached to a MapControl
 boolean isSupportedAtVersion(int docVersion)
          Is this object valid at the given document version.
 void load(IStream pstm)
          load
 void readExternal(ObjectInput in)
           
 void removeGraph(short nIndex)
          Removes a graph by index.
 int runningEnvironment()
          Identifies the client envirionment, e.g., ArcMap, ArcGlobe, Map Control, ...
 void save(IStream pstm, int fClearDirty)
          save
 void setEnableTemporalDisplayManagement(boolean pbvarEnableTemporalDisplayManagement)
          Indicates if Temporal Management of the Display is enabled.
 void setHideTrackingConnectionsFolder(boolean rhs1)
          Controls whether the Tracking Connections folder is hidden in ArcCatalog.
 void writeExternal(ObjectOutput out)
           
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface com.esri.arcgis.interop.RemoteObjRef
getJintegraDispatch, release
 

Constructor Detail

TrackingEnvironment

public TrackingEnvironment()
                    throws IOException,
                           UnknownHostException
Constructs a TrackingEnvironment using ArcGIS Engine.

Throws:
IOException - if there are interop problems
UnknownHostException - if there are interop problems

TrackingEnvironment

public TrackingEnvironment(Object obj)
                    throws IOException
Deprecated. As of ArcGIS 9.2, replaced by normal Java casts.
TrackingEnvironment theTrackingEnvironment = (TrackingEnvironment) obj;

Construct a TrackingEnvironment using a reference to such an object returned from ArcGIS Engine or Server. This is semantically equivalent to casting obj to TrackingEnvironment.

Parameters:
obj - an object returned from ArcGIS Engine or Server
Throws:
IOException - if there are interop problems
Method Detail

getClsid

public static String getClsid()
getClsid.


equals

public boolean equals(Object o)
Compare this object with another

Overrides:
equals in class Object

hashCode

public int hashCode()
the hashcode for this object

Overrides:
hashCode in class Object

getLabelEngineManager

public ILabelEngineManager2 getLabelEngineManager()
                                           throws IOException,
                                                  AutomationException
Returns the Tracking Label Engine Manager.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server. Requires Tracking Analyst Extension.

Specified by:
getLabelEngineManager in interface ITrackingEnvironment
Returns:
A reference to a com.esri.arcgis.trackinganalyst.ILabelEngineManager2
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getDisplayManager

public ITAUpdateControl getDisplayManager()
                                   throws IOException,
                                          AutomationException
Returns the Tracking Display Manager.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server. Requires Tracking Analyst Extension.

Specified by:
getDisplayManager in interface ITrackingEnvironment
Returns:
A reference to a com.esri.arcgis.trackinganalyst.ITAUpdateControl
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getDefaultTemporalReference

public ITemporalReference getDefaultTemporalReference()
                                               throws IOException,
                                                      AutomationException
Returns the default Temporal Reference.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server. Requires Tracking Analyst Extension.

Specified by:
getDefaultTemporalReference in interface ITrackingEnvironment
Returns:
A reference to a com.esri.arcgis.trackinganalyst.ITemporalReference
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getDefaultTemporalLegendGroup

public ITemporalLegendGroup getDefaultTemporalLegendGroup()
                                                   throws IOException,
                                                          AutomationException
Returns the default Temporal Legend Group.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server. Requires Tracking Analyst Extension.

Specified by:
getDefaultTemporalLegendGroup in interface ITrackingEnvironment
Returns:
A reference to a com.esri.arcgis.trackinganalyst.ITemporalLegendGroup
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

close

public void close()
           throws IOException,
                  AutomationException
Closes the Tracking Analyst Environment.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server. Requires Tracking Analyst Extension.

Specified by:
close in interface ITrackingEnvironment
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

initialize

public void initialize(Object pInitializationData)
                throws IOException,
                       AutomationException
Initializes the Tracking Analyst Environment.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server. Requires Tracking Analyst Extension.

Specified by:
initialize in interface ITrackingEnvironment
Parameters:
pInitializationData - A Variant (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isLicensed

public boolean isLicensed()
                   throws IOException,
                          AutomationException
Indicates whether or not the tracking components are properly licensed.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server. Requires Tracking Analyst Extension.

Specified by:
isLicensed in interface ITrackingEnvironment
Returns:
The pbvarLicensed
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isAttached

public boolean isAttached()
                   throws IOException,
                          AutomationException
Indicates whether or not the tracking environment is attached to a document object.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server. Requires Tracking Analyst Extension.

Specified by:
isAttached in interface ITrackingEnvironment
Returns:
The pbvarAttached
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isEnableTemporalDisplayManagement

public boolean isEnableTemporalDisplayManagement()
                                          throws IOException,
                                                 AutomationException
Indicates if Temporal Management of the Display is enabled.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server. Requires Tracking Analyst Extension.

Specified by:
isEnableTemporalDisplayManagement in interface ITrackingEnvironment
Returns:
The pbvarEnableTemporalDisplayManagement
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setEnableTemporalDisplayManagement

public void setEnableTemporalDisplayManagement(boolean pbvarEnableTemporalDisplayManagement)
                                        throws IOException,
                                               AutomationException
Indicates if Temporal Management of the Display is enabled.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server. Requires Tracking Analyst Extension.

Specified by:
setEnableTemporalDisplayManagement in interface ITrackingEnvironment
Parameters:
pbvarEnableTemporalDisplayManagement - The pbvarEnableTemporalDisplayManagement (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isRunningInMapControl

public boolean isRunningInMapControl()
                              throws IOException,
                                     AutomationException
Indicates if the object is attached to a MapControl

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server. Requires Tracking Analyst Extension.

Specified by:
isRunningInMapControl in interface ITrackingEnvironment
Returns:
The pbvarIsRunningInMapControl
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isRunningInApplication

public boolean isRunningInApplication()
                               throws IOException,
                                      AutomationException
Indicates if the object is attached to an ArcGIS Application.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server. Requires Tracking Analyst Extension.

Specified by:
isRunningInApplication in interface ITrackingEnvironment
Returns:
The pbvarIsRunningInApplication
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isRunningInCatalog

public boolean isRunningInCatalog()
                           throws IOException,
                                  AutomationException
Indicates if the object is attached to ArcCatalog.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server. Requires Tracking Analyst Extension.

Specified by:
isRunningInCatalog in interface ITrackingEnvironment
Returns:
The pbvarIsRunningInCatalog
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isRunningInArcMap

public boolean isRunningInArcMap()
                          throws IOException,
                                 AutomationException
Indicates if the object is attached to ArcMap.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server. Requires Tracking Analyst Extension.

Specified by:
isRunningInArcMap in interface ITrackingEnvironment
Returns:
The pbvarIsRunningInArcMap
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setHideTrackingConnectionsFolder

public void setHideTrackingConnectionsFolder(boolean rhs1)
                                      throws IOException,
                                             AutomationException
Controls whether the Tracking Connections folder is hidden in ArcCatalog.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server. Requires Tracking Analyst Extension.

Specified by:
setHideTrackingConnectionsFolder in interface ITrackingEnvironment
Parameters:
rhs1 - The rhs1 (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

runningEnvironment

public int runningEnvironment()
                       throws IOException,
                              AutomationException
Identifies the client envirionment, e.g., ArcMap, ArcGlobe, Map Control, ... with or without dynamic display.

Remarks

RunningEnvironment can be used to determine the host application that Tracking Analyst is running inside. This information can be useful when different operations need to be performed depending on the client hosting Tracking Analyst, i.e. a MapControl vs. a GlobeControl. This method supersedes IsMapControl, IsApplication, IsRunningInCatalog, and IsRunningInArcMap in ITrackingEnvironment.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server. Requires Tracking Analyst Extension.

Specified by:
runningEnvironment in interface ITrackingEnvironment3
Returns:
A com.esri.arcgis.trackinganalyst.enumTrackingEnv constant
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getActionEnvironment

public IActionLookupSupport getActionEnvironment()
                                          throws IOException,
                                                 AutomationException
Returns the Action Environment.

Description

This property returns the ActionEnvironment object that serves as a central point of entry for general action properties that apply to all actions within a process.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server. Requires Tracking Analyst Extension.

Specified by:
getActionEnvironment in interface ITrackingEnvironment2
Returns:
A reference to a com.esri.arcgis.trackinganalyst.IActionLookupSupport
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getDirectionalVectorProp

public IDirectionalVectorRendererProperties getDirectionalVectorProp()
                                                              throws IOException,
                                                                     AutomationException
Returns the global (default) properties associated with the Directional Vector Rendering.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server. Requires Tracking Analyst Extension.

Specified by:
getDirectionalVectorProp in interface ITrackingEnvironment2
Returns:
A reference to a com.esri.arcgis.trackinganalyst.IDirectionalVectorRendererProperties
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getEventAttributeProp

public IEventAttributeProperties getEventAttributeProp()
                                                throws IOException,
                                                       AutomationException
Returns the global (default) properties associated with the Event Attribute Rendering.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server. Requires Tracking Analyst Extension.

Specified by:
getEventAttributeProp in interface ITrackingEnvironment2
Returns:
A reference to a com.esri.arcgis.trackinganalyst.IEventAttributeProperties
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getCount

public short getCount()
               throws IOException,
                      AutomationException
Number of temporal graphs.

Description

This property indicates total number of temporal graphs.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server. Requires Tracking Analyst Extension.

Specified by:
getCount in interface ITemporalGraphs
Returns:
The pVal
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

addGraph

public void addGraph(ITemporalGraph piTemporalGraph)
              throws IOException,
                     AutomationException
Adds a temporal graph.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server. Requires Tracking Analyst Extension.

Specified by:
addGraph in interface ITemporalGraphs
Parameters:
piTemporalGraph - A reference to a com.esri.arcgis.trackinganalyst.ITemporalGraph (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getGraph

public ITemporalGraph getGraph(short nIndex)
                        throws IOException,
                               AutomationException
Retrieves a graph by index.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server. Requires Tracking Analyst Extension.

Specified by:
getGraph in interface ITemporalGraphs
Parameters:
nIndex - The nIndex (in)
Returns:
A reference to a com.esri.arcgis.trackinganalyst.ITemporalGraph
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

removeGraph

public void removeGraph(short nIndex)
                 throws IOException,
                        AutomationException
Removes a graph by index.

Description

This method removes a temporal graph by index.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server. Requires Tracking Analyst Extension.

Specified by:
removeGraph in interface ITemporalGraphs
Parameters:
nIndex - The nIndex (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isDirty

public void isDirty()
             throws IOException,
                    AutomationException
isDirty

Description

IPersistStream is a Microsoft interface. Please refer to MSDN for information about this interface.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
isDirty in interface IPersistStream
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

load

public void load(IStream pstm)
          throws IOException,
                 AutomationException
load

Description

IPersistStream is a Microsoft interface. Please refer to MSDN for information about this interface.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
load in interface IPersistStream
Parameters:
pstm - A reference to a com.esri.arcgis.system.IStream (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

save

public void save(IStream pstm,
                 int fClearDirty)
          throws IOException,
                 AutomationException
save

Description

IPersistStream is a Microsoft interface. Please refer to MSDN for information about this interface.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
save in interface IPersistStream
Parameters:
pstm - A reference to a com.esri.arcgis.system.IStream (in)
fClearDirty - The fClearDirty (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getSizeMax

public void getSizeMax(_ULARGE_INTEGER[] pcbSize)
                throws IOException,
                       AutomationException
getSizeMax

Description

IPersistStream is a Microsoft interface. Please refer to MSDN for information about this interface.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
getSizeMax in interface IPersistStream
Parameters:
pcbSize - A Structure: com.esri.arcgis.system._ULARGE_INTEGER (out: use single element array)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getClassID

public void getClassID(GUID[] pClassID)
                throws IOException,
                       AutomationException
getClassID

Description

IPersist is a Microsoft interface. Please refer to MSDN for information about this interface.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
getClassID in interface IPersist
Parameters:
pClassID - A Structure: com.esri.arcgis.support.ms.stdole.GUID (out: use single element array)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isSupportedAtVersion

public boolean isSupportedAtVersion(int docVersion)
                             throws IOException,
                                    AutomationException
Is this object valid at the given document version.

Remarks

Use IsSupportedAtVersion to identify if a particular object should be saved to the ObjectStream. This result is based on the esriArcGISVersion enumeration. In some instances, if the object is not supported at a particular ArcGIS version, the object may support conversion to another similar object; use IDocumentVersionSupportGEN::ConvertToSupportedObject to accomplish this.

Product Availability

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

Specified by:
isSupportedAtVersion in interface IDocumentVersionSupportGEN
Parameters:
docVersion - A com.esri.arcgis.system.esriArcGISVersion constant (in)
Returns:
The supported
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

convertToSupportedObject

public Object convertToSupportedObject(int docVersion)
                                throws IOException,
                                       AutomationException
Convert the object to another object that is supported.

Remarks

This method should be used when IDocumentVersionSupportGEN::IsSupportedAtVersion returns FALSE. Calling ConvertToSupportedObject will return an IUnknown pointer to a relevant object supported at the particular ArcGIS version. Not all objects will return a supported object; in these cases a null pointer will be returned.

Product Availability

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

Specified by:
convertToSupportedObject in interface IDocumentVersionSupportGEN
Parameters:
docVersion - A com.esri.arcgis.system.esriArcGISVersion constant (in)
Returns:
A Variant
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

writeExternal

public void writeExternal(ObjectOutput out)
                   throws IOException
Specified by:
writeExternal in interface Externalizable
Throws:
IOException

readExternal

public void readExternal(ObjectInput in)
                  throws IOException,
                         ClassNotFoundException
Specified by:
readExternal in interface Externalizable
Throws:
IOException
ClassNotFoundException