This document is archived and information here might be outdated.  Recommended version.


TopologyExtension CoClass (ArcObjects .NET 10.5 SDK)
ArcObjects Library Reference (EditorExt)  

TopologyExtension CoClass

Extension for working with topology.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

Interfaces

Interfaces Description
IActiveViewEvents (esriCarto) Provides access to events that occur when the state of the active view changes.
IConnectionPointContainer Supports connection points for connectable objects.
IEditEvents (esriEditor) Provides access to editor events. Implement it to listen for specific events that occur during an edit session.
IEditEvents2 (esriEditor) Provides access to more editor events. Implement it to listen for specific events that occur during an edit session.
IEditEvents3 (esriEditor) Provides access to more editor events. Implement it to listen for specific events that occur during an edit session.
IExtension (esriSystem) Provides access to members that define an extension.
IObjectClassEvents (esriGeoDatabase) Provides access to events that occur with an object class.
IPersistStream (esriSystem)
ITopologyExtension Provides access to members that control a topology.
ITopologyExtension2 Provides access to additional members that control the topology extension.
ITopologyExtension3 Provides access to additional members that control the topology extension.
ITopologyExtension4 Provides access to additional members that control the topology extension.

Event Interfaces

Interfaces Description
ITopologyExtensionEvents (default) Provides access to events that occur when working with a topology.
ITopologyExtensionEvents2 Provides access to more events that occur when working with a topology.

Remarks

The TopologyExtension CoClass is the main component used when working with a topology inside ArcMap.  From the TopologyExtension you can access the current MapTopology, work with the set of active topology errors, or listen for topology-related events.

In order to use the TopologyExtension you must be inside an edit session.

To get a reference to the TopologyExtension extension, use IApplication::FindExtensionByCLSID or IApplication::FindExtensionByName.

[C#]

The following C# code example shows the  method being used to acquire a reference of type ITopologyExtension to the TopologyExtension object.

public void GetTopologyExtension()
{
  UID extUid=new UIDClass();
  extUid.Value="esriEditorExt.TopologyExtension";
  //You can get app from ICommand :: OnCreate() hook parameter
  ITopologyExtension topologyExt=app.FindExtensionByCLSID(extUid) as ITopologyExtension;
}
[Visual Basic .NET]

The following VBNet code example shows the former method being used to acquire a reference of type ITopologyExtension to the TopologyExtension object.

  Public Sub GetTopologyExtension()
    'You can get app from ICommand :: OnCreate() hook parameter
    Dim extUid As UID=New UIDClass()
    extUid.Value="esriEditorExt.TopologyExtension"
    Dim topologyExt As ITopologyExtension=TryCast(app.FindExtensionByCLSID(extUid), ITopologyExtension)
  End Sub

Working with Events

[Visual Basic 6.0]

When working with TopologyExtension's default outbound interface in Visual Basic 6 declare variables as follows:

Private WithEvents pTopologyExtension as TopologyExtension

When implementing ITopologyExtensionEvents2 declare variables as follows:

Private WithEvents pAdjustment as Adjustment