|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
public interface ITraceFlowSolverGEN
Provides access to members that perform traces on a network.
Use the ITraceFlowSolverGEN interface when you want to implement your own custom solver. This interface provides methods for common network tracing tasks such as find common ancestors and trace upstream.
Method Summary | |
---|---|
void |
findAccumulation(int flowMethod,
int flowElements,
IEnumNetEID[] junctionEIDs,
IEnumNetEID[] edgeEIDs,
Object[] pTotalCost)
Finds the total cost of all reachable network elements based on the specified flow method. |
void |
findCircuits(int flowElements,
IEnumNetEID[] junctionEIDs,
IEnumNetEID[] edgeEIDs)
Finds all reachable network elements that are parts of closed circuits in the network. |
void |
findCommonAncestors(int flowElements,
IEnumNetEID[] junctionEIDs,
IEnumNetEID[] edgeEIDs)
Finds all reachable network elements that are upstream from all the specified origins. |
void |
findFlowElements(int flowMethod,
int flowElements,
IEnumNetEID[] junctionEIDs,
IEnumNetEID[] edgeEIDs)
Finds all reachable network elements based on the specified flow method. |
void |
findFlowEndElements(int flowMethod,
int flowElements,
IEnumNetEID[] junctionEIDs,
IEnumNetEID[] edgeEIDs)
Finds all reachable network end elements based on the specified flow method. |
void |
findFlowUnreachedElements(int flowMethod,
int flowElements,
IEnumNetEID[] junctionEIDs,
IEnumNetEID[] edgeEIDs)
Finds all unreachable network elements based on the flow method. |
void |
findPath(int flowMethod,
int objFn,
IEnumNetEID[] junctionEIDs,
IEnumNetEID[] edgeEIDs,
int count,
Object[][] segmentCosts)
Finds a path between the specified origins in the network. |
void |
findSource(int flowMethod,
int objFn,
IEnumNetEID[] junctionEIDs,
IEnumNetEID[] edgeEIDs,
int count,
Object[][] segmentCosts)
Finds a path upstream to a source or downstream to a sink, depending on the specified flow method. |
void |
putEdgeOrigins(IEdgeFlag[] edgeOrigins)
Sets the starting edges for this trace solver. |
void |
putJunctionOrigins(IJunctionFlag[] junctionOrigins)
Sets the starting junctions for this trace solver. |
void |
setTraceIndeterminateFlow(boolean rhs1)
Indicates if directional traces include edges with indeterminate or uninitialized flow direction. |
Method Detail |
---|
void setTraceIndeterminateFlow(boolean rhs1) throws IOException, AutomationException
The TraceIndeterminateFlow property affects the trace results of trace solvers whose FlowMethod parameter is esriFMUpstream or esriFMDownstream. If the TraceIndeterminateFlow parameter is set to False, then the trace solver will only trace on edges whose flow is determined, and only in the direction specified in the FlowMethod parameter of the trace solver. If the TraceIndeterminateFlow parameter is set to True, then the trace solver will not only trace on the aforementioned edges, but also on edges with indeterminate or uninitialized flow.
Set the TraceIndetermiateFlow property before calling any of the trace solvers.
rhs1
- The rhs1 (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.void putJunctionOrigins(IJunctionFlag[] junctionOrigins) throws IOException, AutomationException
junctionOrigins
- A reference to a com.esri.arcgis.networkanalysis.IJunctionFlag array (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.void putEdgeOrigins(IEdgeFlag[] edgeOrigins) throws IOException, AutomationException
edgeOrigins
- A reference to a com.esri.arcgis.networkanalysis.IEdgeFlag array (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.void findFlowElements(int flowMethod, int flowElements, IEnumNetEID[] junctionEIDs, IEnumNetEID[] edgeEIDs) throws IOException, AutomationException
The FlowMethod parameter determines whether the trace solver traces upstream, downstream, or on all connected edges. If you would like to allow or restrict tracing on edges with indeterminate or uninitialized flow, be sure to set the TraceIndeterminateFlow property prior to calling this trace solver.
The flowElements parameter determines whether edge elements, junction elements, or both are returned by the trace solver.
The trace solver will return the traced junction and edge element IDs in the junctionEIDs and edgeEIDs parameters respectively.
flowMethod
- A com.esri.arcgis.networkanalysis.esriFlowMethod constant (in)flowElements
- A com.esri.arcgis.networkanalysis.esriFlowElements constant (in)junctionEIDs
- A reference to a com.esri.arcgis.geodatabase.IEnumNetEID (out: use single element array)edgeEIDs
- A reference to a com.esri.arcgis.geodatabase.IEnumNetEID (out: use single element array)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.void findFlowEndElements(int flowMethod, int flowElements, IEnumNetEID[] junctionEIDs, IEnumNetEID[] edgeEIDs) throws IOException, AutomationException
The FindFlowEndElements method returns those network elements stopping the trace. Network elements stopping a trace are those elements past which a trace cannot continue. These include network elements in a disabled element class (specified by INetSolver::DisableElementClass), and network elements that are connected to only one other network element.
The FlowMethod parameter determines whether the trace solver traces upstream, downstream, or on all connected edges. If you would like to allow or restrict tracing on edges with indeterminate or uninitialized flow, be sure to set the TraceIndeterminateFlow property prior to calling this trace solver.
The flowElements parameter determines whether edge elements, junction elements, or both are returned by the trace solver.
The trace solver will return the traced junction and edge element IDs in the junctionEIDs and edgeEIDs parameters respectively.
flowMethod
- A com.esri.arcgis.networkanalysis.esriFlowMethod constant (in)flowElements
- A com.esri.arcgis.networkanalysis.esriFlowElements constant (in)junctionEIDs
- A reference to a com.esri.arcgis.geodatabase.IEnumNetEID (out: use single element array)edgeEIDs
- A reference to a com.esri.arcgis.geodatabase.IEnumNetEID (out: use single element array)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.void findPath(int flowMethod, int objFn, IEnumNetEID[] junctionEIDs, IEnumNetEID[] edgeEIDs, int count, Object[][] segmentCosts) throws IOException, AutomationException
The FlowMethod parameter determines whether the trace solver traces upstream, downstream, or on all connected edges.
The objFn parameter specifies the objective function of the trace solver. Depending on this parameter, the trace solver will either attempt to minimize the total cost of the path, or will attempt to minimize the maximum cost of any single element in the path.
The Count is the number of path segments to be returned by the trace solver. It is equivalent to one less than the number of flags being passed into the trace solver. The Count is also the size of the array passed into the segmentCosts parameter.
The origins you place on the network using PutEdgeOrigins or PutJunctionOrigins must be either all edge origins or all junction origins. You cannot find a path among a mixture of edge and junction origins.
The trace solver will return the traced junction and edge element IDs in the junctionEIDs and edgeEIDs parameters respectively, and will return the cost of each segment in the segmentCosts array.
The traced element IDs are returned in the order that they were traced.
flowMethod
- A com.esri.arcgis.networkanalysis.esriFlowMethod constant (in)objFn
- A com.esri.arcgis.networkanalysis.esriShortestPathObjFn constant (in)junctionEIDs
- A reference to a com.esri.arcgis.geodatabase.IEnumNetEID (out: use single element array)edgeEIDs
- A reference to a com.esri.arcgis.geodatabase.IEnumNetEID (out: use single element array)count
- The count (in)segmentCosts
- A Variant (in/out: use single element array)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.void findCircuits(int flowElements, IEnumNetEID[] junctionEIDs, IEnumNetEID[] edgeEIDs) throws IOException, AutomationException
The flowElements parameter determines whether edge elements, junction elements, or both are returned by the trace solver.
The trace solver will return the traced junction and edge element IDs in the junctionEIDs and edgeEIDs parameters respectively.
flowElements
- A com.esri.arcgis.networkanalysis.esriFlowElements constant (in)junctionEIDs
- A reference to a com.esri.arcgis.geodatabase.IEnumNetEID (out: use single element array)edgeEIDs
- A reference to a com.esri.arcgis.geodatabase.IEnumNetEID (out: use single element array)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.void findCommonAncestors(int flowElements, IEnumNetEID[] junctionEIDs, IEnumNetEID[] edgeEIDs) throws IOException, AutomationException
The flowElements parameter determines whether edge elements, junction elements, or both are returned by the trace solver.
The trace solver will return the traced junction and edge element IDs in the junctionEIDs and edgeEIDs parameters respectively.
If you would like to allow or restrict tracing on edges with indeterminate or uninitialized flow, be sure to set the TraceIndeterminateFlow property prior to calling this trace solver.
flowElements
- A com.esri.arcgis.networkanalysis.esriFlowElements constant (in)junctionEIDs
- A reference to a com.esri.arcgis.geodatabase.IEnumNetEID (out: use single element array)edgeEIDs
- A reference to a com.esri.arcgis.geodatabase.IEnumNetEID (out: use single element array)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.void findFlowUnreachedElements(int flowMethod, int flowElements, IEnumNetEID[] junctionEIDs, IEnumNetEID[] edgeEIDs) throws IOException, AutomationException
The FlowMethod parameter determines whether the trace solver traces upstream, downstream, or on all connected edges. If you would like to allow or restrict tracing on edges with indeterminate or uninitialized flow, be sure to set the TraceIndeterminateFlow property prior to calling this trace solver.
The flowElements parameter determines whether edge elements, junction elements, or both are returned by the trace solver.
The trace solver will return the traced junction and edge element IDs in the junctionEIDs and edgeEIDs parameters respectively.
flowMethod
- A com.esri.arcgis.networkanalysis.esriFlowMethod constant (in)flowElements
- A com.esri.arcgis.networkanalysis.esriFlowElements constant (in)junctionEIDs
- A reference to a com.esri.arcgis.geodatabase.IEnumNetEID (out: use single element array)edgeEIDs
- A reference to a com.esri.arcgis.geodatabase.IEnumNetEID (out: use single element array)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.void findSource(int flowMethod, int objFn, IEnumNetEID[] junctionEIDs, IEnumNetEID[] edgeEIDs, int count, Object[][] segmentCosts) throws IOException, AutomationException
The FlowMethod parameter determines whether the trace solver traces upstream, downstream, or on all connected edges. If you would like to allow or restrict tracing on edges with indeterminate or uninitialized flow, be sure to set the TraceIndeterminateFlow property prior to calling this trace solver.
The objFn parameter specifies the objective function of the trace solver. Depending on this parameter, the trace solver will either attempt to minimize the total cost of the paths to the source, or will attempt to minimize the maximum cost of any single element in the paths to the source.
The Count is the number of path segments to be returned by the trace solver. It is equivalent to the number of flags being passed into the trace solver. The Count is also the size of the array passed into the segmentCosts parameter.
The trace solver will return the traced junction and edge element IDs in the junctionEIDs and edgeEIDs parameters respectively, and will return the cost of each segment in the segmentCosts array.
The traced element IDs are returned in the order that they were traced.
flowMethod
- A com.esri.arcgis.networkanalysis.esriFlowMethod constant (in)objFn
- A com.esri.arcgis.networkanalysis.esriShortestPathObjFn constant (in)junctionEIDs
- A reference to a com.esri.arcgis.geodatabase.IEnumNetEID (out: use single element array)edgeEIDs
- A reference to a com.esri.arcgis.geodatabase.IEnumNetEID (out: use single element array)count
- The count (in)segmentCosts
- A Variant (in/out: use single element array)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.void findAccumulation(int flowMethod, int flowElements, IEnumNetEID[] junctionEIDs, IEnumNetEID[] edgeEIDs, Object[] pTotalCost) throws IOException, AutomationException
The FlowMethod parameter determines whether the trace solver traces upstream, downstream, or on all connected edges. If you would like to allow or restrict tracing on edges with indeterminate or uninitialized flow, be sure to set the TraceIndeterminateFlow property prior to calling this trace solver.
The flowElements parameter determines whether edge elements, junction elements, or both are returned by the trace solver.
The trace solver will return the traced junction and edge element IDs in the junctionEIDs and edgeEIDs parameters respectively, and will return the total cost of the traced elements in the pTotalCost parameter.
flowMethod
- A com.esri.arcgis.networkanalysis.esriFlowMethod constant (in)flowElements
- A com.esri.arcgis.networkanalysis.esriFlowElements constant (in)junctionEIDs
- A reference to a com.esri.arcgis.geodatabase.IEnumNetEID (out: use single element array)edgeEIDs
- A reference to a com.esri.arcgis.geodatabase.IEnumNetEID (out: use single element array)pTotalCost
- A Variant (out: use single element array)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |