Propagator objects allow a subset of UtilityNetworkAttribute values to propagate through a network while executing a trace. More...
Header: | #include <UtilityPropagator.h> |
Since: | Esri::ArcGISRuntime 100.7 |
Inherits: | Esri::ArcGISRuntime::Object |
Public Functions
UtilityPropagator(Esri::ArcGISRuntime::UtilityNetworkAttribute *networkAttribute, Esri::ArcGISRuntime::UtilityPropagatorFunctionType propagatorFunctionType, Esri::ArcGISRuntime::UtilityAttributeComparisonOperator comparisonOperator, const QVariant &value, QObject *parent = nullptr) | |
UtilityPropagator(Esri::ArcGISRuntime::UtilityNetworkAttribute *networkAttribute, Esri::ArcGISRuntime::UtilityPropagatorFunctionType propagatorFunctionType, Esri::ArcGISRuntime::UtilityAttributeComparisonOperator comparisonOperator, const QVariant &value, Esri::ArcGISRuntime::UtilityNetworkAttribute *substitutionAttribute, QObject *parent = nullptr) | |
virtual | ~UtilityPropagator() override |
Esri::ArcGISRuntime::UtilityAttributeComparisonOperator | comparisonOperator() const |
Esri::ArcGISRuntime::UtilityNetworkAttribute * | networkAttribute() const |
Esri::ArcGISRuntime::UtilityPropagatorFunctionType | propagatorFunctionType() const |
Esri::ArcGISRuntime::UtilityNetworkAttribute * | substitutionNetworkAttribute() const |
QVariant | value() const |
Detailed Description
The propagated UtilityNetworkAttribute values can be tested to allow or disallow further traversal.
In the example of phase propagation, open devices along the network will restrict some phases from continuing along the trace.
Propagators only apply to subnetwork-based traces (UtilityTraceType::Upstream, UtilityTraceType::Downstream, and so on). UtilityPropagator is set in the UtilityTraceConfiguration.
Member Function Documentation
UtilityPropagator::UtilityPropagator (Esri::ArcGISRuntime::UtilityNetworkAttribute *networkAttribute , Esri::ArcGISRuntime::UtilityPropagatorFunctionType propagatorFunctionType , Esri::ArcGISRuntime::UtilityAttributeComparisonOperator comparisonOperator , const QVariant &value, QObject *parent = nullptr)
Creates an object that allows a subset of UtilityNetworkAttribute values to propagate through a network.
- networkAttribute - The UtilityNetworkAttribute to propagate further along the trace.
- propagatorFunctionType - The function type that is applied to the UtilityNetworkAttribute to propagate the attribute further along the trace.
- comparisonOperator - The filter operator that is applied when executing the trace. This operator is used to compare the propagated value to the specified UtilityPropagator::value
- value - The value that is compared against the propagated value when executing the trace. The type of this numeric value depends on the UtilityNetworkAttributeDataType of the UtilityNetworkAttribute.
- parent - The optional parent QObject.
The type of the numeric value is dependent on the UtilityNetworkAttributeDataType of the UtilityNetworkAttribute.
UtilityPropagator::UtilityPropagator (Esri::ArcGISRuntime::UtilityNetworkAttribute *networkAttribute , Esri::ArcGISRuntime::UtilityPropagatorFunctionType propagatorFunctionType , Esri::ArcGISRuntime::UtilityAttributeComparisonOperator comparisonOperator , const QVariant &value, Esri::ArcGISRuntime::UtilityNetworkAttribute *substitutionAttribute , QObject *parent = nullptr)
Creates an object that allows a subset of UtilityNetworkAttribute values to propagate through a network.
This constructor allows the specification of a substitution network attribute.
- networkAttribute - The UtilityNetworkAttribute to propagate further along the trace.
- propagatorFunctionType - The function type that is applied to the UtilityNetworkAttribute to propagate the attribute further along the trace.
- comparisonOperator - The filter operator that is applied when executing the trace. This operator is used to compare the propagated value to the specified UtilityPropagator::value.
- value - The value that is compared against the propagated value when executing the trace. The type of this numeric value depends on the UtilityNetworkAttributeDataType of the UtilityNetworkAttribute.
- substitutionAttribute - A UtilityNetworkAttribute that maps each bit in another bitset network attribute value to a new value.
- parent - The optional parent QObject.
The type of the numeric value is dependent on the UtilityNetworkAttributeDataType of the UtilityNetworkAttribute.
[override virtual]
UtilityPropagator::~UtilityPropagator ()
Destructor.
Esri::ArcGISRuntime::UtilityAttributeComparisonOperator UtilityPropagator::comparisonOperator () const
Returns the operator that is applied when executing the trace.
This operator is used to compare the propagated value to the specified UtilityPropagator::value. For example, if propagating phase, this would be UtilityAttributeComparisonOperator::IncludesAny.
Esri::ArcGISRuntime::UtilityNetworkAttribute *UtilityPropagator::networkAttribute () const
Returns the UtilityNetworkAttribute to propagate further along the trace.
For example, if propagating phase, this would be the UtilityNetworkAttribute that stores phase.
Esri::ArcGISRuntime::UtilityPropagatorFunctionType UtilityPropagator::propagatorFunctionType () const
Returns the function type that is applied to the UtilityNetworkAttribute to propagate the attribute further along the trace.
For example, if propagating phase, this would be UtilityPropagatorFunctionType::BitwiseAnd.
Esri::ArcGISRuntime::UtilityNetworkAttribute *UtilityPropagator::substitutionNetworkAttribute () const
Returns the UtilityNetworkAttribute that maps each bit in another bitset network attribute value to a new value.
QVariant UtilityPropagator::value() const
Returns the value that is compared against the propagated value when executing the trace.
The type of this numeric value depends on the UtilityNetworkAttributeDataType of the UtilityNetworkAttribute.