Interface ISpatialCacheManager3

All Superinterfaces:
ISpatialCacheManager, ISpatialCacheManager2, Serializable
All Known Implementing Classes:

public interface ISpatialCacheManager3
extends ISpatialCacheManager2, Serializable

Provides access to members that control the Spatial Cache Management.


The ISpatialCacheManager3 interface was added to enable creating a spatial cache and allowing the creation process to be cancelable.

Enabling feature caching improves the performance of all spatial searches whose query geometry lies within the cached area and and also improves the performance of all queries that retrieve features by object ID (for example, GetRow, GetFeature, GetRows, and GetFeatures). At ArcGIS release 8.3 and earlier, caching of features using ISpatialCacheManager requires that there be an active edit session. At ArcGIS release 9.0 and higher, using ISpatialCacheManager does not require an active edit session.

Use of the cache is transparent to editing applications. Objects retrieved using non-recycling cursors may be updated and stored by the editing application. As in the uncached case, the geodatabase takes care of ensuring read and query consistency when queries are issued againt updated objects. The cache is exposed to end users as the edit cache in ArcMap for ArcGIS release 8.3 and earlier, and the map cache for ArcGIS releases 9.0 and higher. The cache improves performance significantly for network editing when working with ArcSDE geodatabases.

The SpatialCacheManager optimistically builds caches for features within the workspace. It caches the features in the cache extent for any open feature class. Note that opening a feature class that participates in a topology or geometric network will also open all other feature classes participating in the topology or geometric network. To correctly use the cache, you should be aware of which feature classes are open within a workspace. If a reference to the workspace is returned from a map document, the open feature classes will include all the feature classes for that workspace in the map. If you have opened the workspace through the Geodatabase API, by using a method such as IFeatureWorkspace::OpenFeatureDataset, only those features from feature classes that have been explicitly opened using the IFeatureWorkspace::OpenFeatureClass method will be cached.

Product Availability

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

Method Summary
 void fillCacheWithCancel(IEnvelope pExtent, double expansionFactor, ITrackCancel pCancelTraker)
          Fills the spatial cache using the specified extent with an expansion factor.
Methods inherited from interface com.esri.arcgis.geodatabase.ISpatialCacheManager2
fillCacheEx, getCacheExpansionFactor
Methods inherited from interface com.esri.arcgis.geodatabase.ISpatialCacheManager
emptyCache, fillCache, getCacheExtent, isCacheIsFull

Method Detail


void fillCacheWithCancel(IEnvelope pExtent,
                         double expansionFactor,
                         ITrackCancel pCancelTraker)
                         throws IOException,
Fills the spatial cache using the specified extent with an expansion factor.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

pExtent - A reference to a com.esri.arcgis.geometry.IEnvelope (in)
expansionFactor - The expansionFactor (in)
pCancelTraker - A reference to a com.esri.arcgis.system.ITrackCancel (in)
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.