Skip To Content ArcGIS for Developers Sign In Dashboard

UtilityTraceFilter Class


A mechanism to stop tracing when returning results. More...

Header: #include <UtilityTraceFilter>
Since: Esri::ArcGISRuntime 100.8
Inherits: Object

Public Functions

UtilityTraceFilter(QObject *parent = nullptr)
UtilityTraceFilter(std::shared_ptr<QRTImpl::UtilityTraceFilterImpl> impl, QObject *parent)
UtilityTraceCondition *barriers() const
UtilityNetworkAttribute *bitsetNetworkAttribute() const
UtilityTraceFunctionBarrierListModel *functionBarriers() const
UtilityNearestNeighbor *nearestNeighbor() const
UtilityTraversabilityScope scope() const
void setBarriers(UtilityTraceCondition *barriers)
void setBitsetNetworkAttribute(UtilityNetworkAttribute *bitsetNetworkAttribute)
void setNearestNeighbor(UtilityNearestNeighbor *nearestNeighbor)
void setScope(UtilityTraversabilityScope scope)
  • 31 public functions inherited from QObject

Additional Inherited Members

Detailed Description

A mechanism to stop tracing when returning results.

Consider an upstream protective device trace. At first, you might try defining a UtilityCategoryComparison that looks for a Protective Device category and assigning this to UtilityTraversability::barriers. When you try to run an upstream trace using this configuration, it will probably fail. This is because traversability will stop at the first protective device, and the trace will be unable to find the subnetwork controller. The correct way to implement this trace is to assign UtilityCategoryComparison to the filter.

UtilityTraceFilter objects do not stop traversability to the controller.

Member Function Documentation

UtilityTraceFilter::UtilityTraceFilter(QObject *parent = nullptr)

Creates a UtilityTraceFilter object with default values.

  • parent - The optional parent object.

UtilityTraceFilter::UtilityTraceFilter(std::shared_ptr<QRTImpl::UtilityTraceFilterImpl> impl, QObject *parent)



UtilityTraceCondition *UtilityTraceFilter::barriers() const

Returns a condition object specifying when to traverse a node or its subnodes.

See also setBarriers().

UtilityNetworkAttribute *UtilityTraceFilter::bitsetNetworkAttribute() const

Returns a UtilityNetworkAttribute that is specified to store a bitset, and is used to filter results.

See also setBitsetNetworkAttribute().

UtilityTraceFunctionBarrierListModel *UtilityTraceFilter::functionBarriers() const

Returns a list model of UtilityTraceFunctionBarrier objects.

If any of these objects evaluates to true, further traversal is terminated.

UtilityNearestNeighbor *UtilityTraceFilter::nearestNeighbor() const

Returns a filter object specifying the next N features to be returned from the starting point.

See also setNearestNeighbor().

UtilityTraversabilityScope UtilityTraceFilter::scope() const

Returns a UtilityTraversabilityScope that determines whether traversability criteria are evaluated on edges, junctions, or both.

The default value is UtilityTraversabilityScope::JunctionsAndEdges.

See also setScope().

void UtilityTraceFilter::setBarriers(UtilityTraceCondition *barriers)

Sets the barriers to barriers.

See also barriers().

void UtilityTraceFilter::setBitsetNetworkAttribute(UtilityNetworkAttribute *bitsetNetworkAttribute)

Sets the bitsetNetworkAttribute to bitsetNetworkAttribute.

See also bitsetNetworkAttribute().

void UtilityTraceFilter::setNearestNeighbor(UtilityNearestNeighbor *nearestNeighbor)

Sets the nearestNeighbor to nearestNeighbor.

See also nearestNeighbor().

void UtilityTraceFilter::setScope(UtilityTraversabilityScope scope)

Sets the scope to scope.

See also scope().

Feedback on this topic?