<GeotriggersTypes.h> - Geotriggers Enums

Collection of Geotriggers enumerations. More...

Header: #include <GeotriggersTypes.h>

Types

enum class FenceEnterExitSpatialRelationship { EnterIntersectsAndExitDoesNotIntersect, EnterContainsAndExitDoesNotContain, EnterContainsAndExitDoesNotIntersect }
enum class FenceGeotriggerFeedAccuracyMode { UseGeometry, UseGeometryWithAccuracy }
enum class FenceNotificationType { Entered, Exited }
enum class FenceParametersType { GraphicFenceParameters, FeatureFenceParameters, GraphicsOverlayFenceParameters }
enum class FenceRuleType { Enter, Exit, EnterOrExit }
enum class GeotriggerFeedType { LocationGeotriggerFeed }
enum class GeotriggerMonitorStatus { Stopped, Starting, Started, FailedToStart }
enum class GeotriggerNotificationInfoType { FenceGeotriggerNotificationInfo }
enum class GeotriggerType { FenceGeotrigger }

Detailed Description

Type Documentation

[since Esri::ArcGISRuntime 100.13] enum class FenceEnterExitSpatialRelationship

The spatial relationship that determines when a fence has been entered or exited.

When determining whether a feed entity has entered or exited a fence polygon, there are two spatial operations that can be used:

  • Intersects: the feed geometry must intersect the fence polygon.
  • Contains: the feed geometry must be contained by the fence polygon.

These operations determine whether a fence polygon has been entered, and also when it has been exited (the feed geometry no longer intersects or is no longer contained by the fence polygon). Because the contains condition is more strict than intersects (a geometry can intersect another geometry without being contained by it) it tends to result in fewer notifications when the two geometries are nearby. By using different combinations of these rules for enter and exit, you can control the likelihood that notifications will be sent.

Note that when the feed geometry is a Point, there is no difference between intersection and containment, so both options behave the same. When using a LocationGeotriggerFeed, set FenceGeotrigger::feedAccuracyMode to FenceGeotriggerFeedAccuracyMode::UseGeometryWithAccuracy in order to create a polygon geometry that accounts for the area of uncertainty around a Location::position.

The FenceEnterExitSpatialRelationship can be one of:

ConstantValueDescription
FenceEnterExitSpatialRelationship::EnterIntersectsAndExitDoesNotIntersect0The fence polygon is entered when it intersects a GeotriggerFeed entity and exited when it no longer intersects. This option tends to increase the number of notifications as an entity approaches a fence polygon. Use this option when you want to receive all possible notifications - for example, when you want to be warned that you are approaching a hazard.

This option has no effect unless the feed entity geometry is a Polygon. Set FenceGeotrigger::feedAccuracyMode to FenceGeotriggerFeedAccuracyMode::UseGeometryWithAccuracy to create a polygon geometry that accounts for the area of uncertainty around a Location::position.

"EnterIntersectsAndExitDoesNotIntersect"

In the diagram above, the feed enters the fence on the left (shown in yellow) and exits on the right (shown in purple).

ConstantValueDescription
FenceEnterExitSpatialRelationship::EnterContainsAndExitDoesNotContain1The fence polygon is entered when it contains the entity from a GeotriggerFeed and exited when the entity is no longer contained. This option limits notifications to when the entity is fully within the fence polygon. Use this option to be certain you are within a given fence - for example when carrying out work within a specific land parcel.

This option has no effect unless the feed entity geometry is a Polygon. Set FenceGeotrigger::feedAccuracyMode to FenceGeotriggerFeedAccuracyMode::UseGeometryWithAccuracy to create a polygon geometry that accounts for the area of uncertainty around a Location::position.

"EnterContainsAndExitDoesNotContain"

In the diagram above, the feed enters the fence on the left (shown in yellow) and exits on the right (shown in purple).

ConstantValueDescription
FenceEnterExitSpatialRelationship::EnterContainsAndExitDoesNotIntersect2The fence polygon is entered when it contains a GeotriggerFeed entity and exited when it no longer intersects. This option tends to minimize the number of notifications. The entity must be fully within the fence polygon to enter and must be fully outside to exit. This combination reduces the number of spurious notifications that occur as you move around the border of a fence. Use this option when you want to limit notifications - for example, when driving past properties on your way to a delivery address.

This option has no effect unless the feed entity geometry is a Polygon. Set FenceGeotrigger::feedAccuracyMode to FenceGeotriggerFeedAccuracyMode::UseGeometryWithAccuracy in order to create a polygon geometry that accounts for the area of uncertainty around a Location::position.

"EnterContainsAndExitDoesNotIntersect"

In the diagram above, the feed enters the fence on the left (shown in yellow) and exits on the right (shown in purple).

This enum was introduced or modified in Esri::ArcGISRuntime 100.13.

[since Esri::ArcGISRuntime 100.13] enum class FenceGeotriggerFeedAccuracyMode

Options that describe how a FenceGeotrigger uses accuracy information from a GeotriggerFeed.

This enumeration defines options for using accuracy information from a GeotriggerFeed to provide the Geometry for checking a Geotrigger condition. In particular, you can choose how to use the Location::horizontalAccuracy property to reflect the uncertainty around a fixed Location::position. Due to various factors, GPS positions may be inaccurate, with Location::horizontalAccuracy representing a radius that defines the area containing the actual location. Spurious notifications may occur when the Location::position is inaccurate and is incorrectly reported as inside or outside of a fence. You can use the Location::horizontalAccuracy to account for that uncertainty.

These values are used in conjunction with FenceGeotrigger::enterExitSpatialRelationship to affect when notifications are sent.

The FenceGeotriggerFeedAccuracyMode can be one of:

ConstantValueDescription
FenceGeotriggerFeedAccuracyMode::UseGeometry0The reported Geometry from a GeotriggerFeed is used. For a LocationGeotriggerFeed the point geometry from the Location::position property is used.
FenceGeotriggerFeedAccuracyMode::UseGeometryWithAccuracy1The reported Geometry from a GeotriggerFeed is used in conjunction with accuracy information. For a LocationGeotriggerFeed the point geometry from the Location::position property is buffered by the Location::horizontalAccuracy to produce a polygon geometry.

This enum was introduced or modified in Esri::ArcGISRuntime 100.13.

[since Esri::ArcGISRuntime 100.12] enum class FenceNotificationType

The type of a FenceGeotrigger that was met.

The FenceNotificationType can be one of:

ConstantValueDescription
FenceNotificationType::Entered0The feed data has entered one of the fence geometries.
FenceNotificationType::Exited1The feed data has exited one of the fence geometries.

This enum was introduced or modified in Esri::ArcGISRuntime 100.12.

[since Esri::ArcGISRuntime 100.12] enum class FenceParametersType

The type of a FenceParameters.

The FenceParametersType can be one of:

ConstantValueDescription
FenceParametersType::GraphicFenceParameters0The fence parameters uses Graphic data.
FenceParametersType::FeatureFenceParameters1The fence parameters uses features from a FeatureTable
FenceParametersType::GraphicsOverlayFenceParameters2The fence parameters uses graphics from a GraphicsOverlay

This enum was introduced or modified in Esri::ArcGISRuntime 100.12.

[since Esri::ArcGISRuntime 100.12] enum class FenceRuleType

The rule or query that determines whether a FenceGeotrigger condition is met.

The FenceRuleType can be one of:

ConstantValueDescription
FenceRuleType::Enter0Check whether objects from the GeotriggerFeed enter the FenceParameters.
FenceRuleType::Exit1Check whether objects from the GeotriggerFeed exit the FenceParameters.
FenceRuleType::EnterOrExit2Check whether objects from the GeotriggerFeed enter or exit the FenceParameters.

This enum was introduced or modified in Esri::ArcGISRuntime 100.12.

[since Esri::ArcGISRuntime 100.12] enum class GeotriggerFeedType

The type of a GeotriggerFeed.

The GeotriggerFeedType can be one of:

ConstantValueDescription
GeotriggerFeedType::LocationGeotriggerFeed0The feed uses a location data source.

This enum was introduced or modified in Esri::ArcGISRuntime 100.12.

[since Esri::ArcGISRuntime 100.12] enum class GeotriggerMonitorStatus

The current status of a GeotriggerMonitor.

The GeotriggerMonitorStatus can be one of:

ConstantValueDescription
GeotriggerMonitorStatus::Stopped0The GeotriggerMonitor has been stopped.
GeotriggerMonitorStatus::Starting1The GeotriggerMonitor is starting.
GeotriggerMonitorStatus::Started2The GeotriggerMonitor has been started.
GeotriggerMonitorStatus::FailedToStart3The GeotriggerMonitor failed to start.

This enum was introduced or modified in Esri::ArcGISRuntime 100.12.

[since Esri::ArcGISRuntime 100.12] enum class GeotriggerNotificationInfoType

The type of a GeotriggerNotificationInfo.

The GeotriggerNotificationInfoType can be one of:

ConstantValueDescription
GeotriggerNotificationInfoType::FenceGeotriggerNotificationInfo0A FenceGeotriggerNotificationInfo.

This enum was introduced or modified in Esri::ArcGISRuntime 100.12.

[since Esri::ArcGISRuntime 100.12] enum class GeotriggerType

The type of a Geotrigger.

The GeotriggerType can be one of:

ConstantValueDescription
GeotriggerType::FenceGeotrigger0The geotrigger checks fences.

This enum was introduced or modified in Esri::ArcGISRuntime 100.12.

Your browser is no longer supported. Please upgrade your browser for the best experience. See our browser deprecation post for more details.