Skip To Content ArcGIS for Developers Sign In Dashboard

ArcGISFeature Class


A feature from an ArcGIS service, such as a feature in a ServiceFeatureTable. More...

Header: #include <ArcGISFeature>
Since: Esri::ArcGISRuntime 100.0
Inherits: Feature and Loadable

Public Functions

AttachmentListModel *attachments() const
bool canEditAttachments() const
bool canUpdateGeometry() const
void relateFeature(ArcGISFeature *feature)
void relateFeature(ArcGISFeature *feature, const RelationshipInfo &relationshipInfo)
void unrelateFeature(ArcGISFeature *feature)

Reimplemented Public Functions

virtual void cancelLoad()
virtual void load()
virtual Error loadError() const
virtual LoadStatus loadStatus() const
virtual void retryLoad()


void doneLoading(Esri::ArcGISRuntime::Error loadError)
void loadStatusChanged(Esri::ArcGISRuntime::LoadStatus loadStatus)

Additional Inherited Members

  • 1 property inherited from QObject
  • 1 public slot inherited from QObject
  • 1 public variable inherited from QObject
  • 10 static public members inherited from QObject
  • 9 protected functions inherited from QObject
  • 2 protected variables inherited from QObject

Detailed Description

A feature from an ArcGIS service, such as a feature in a ServiceFeatureTable.

Provides access to all of the feature's fields, values of the feature's attributes, and also to its geometry if one is set. A feature's attribute values can be changed, but fields cannot be added, deleted, or modified.

An ArcGISFeature can contain:

  • A set of attributes of the real-world entity it represents.
  • A geometry which describes the location and the shape of the entity.
  • Zero or more feature attachments such as images or documents.

See also Loadable.

Member Function Documentation



AttachmentListModel *ArcGISFeature::attachments() const

Returns the attachment list model used for querying and editing this feature's attachments.

bool ArcGISFeature::canEditAttachments() const

Returns true if the attachments of this feature are editable.

bool ArcGISFeature::canUpdateGeometry() const

Returns true if the geometry of this feature can be updated.

It takes into account the feature table properties, as well as ownership-based access control.

[virtual] void ArcGISFeature::cancelLoad()

Reimplemented from Loadable::cancelLoad().

See Loadable.

[signal] void ArcGISFeature::doneLoading(Esri::ArcGISRuntime::Error loadError)

Signal emitted when this object is done loading.

  • loadError - Details about any error that may have occurred.

Note: If there is a load error it will also be emitted on the errorOccurred signal.

See also Loadable and Object.

[virtual] void ArcGISFeature::load()

Reimplemented from Loadable::load().

See Loadable.

[virtual] Error ArcGISFeature::loadError() const

Reimplemented from Loadable::loadError().

See Loadable.

[virtual] LoadStatus ArcGISFeature::loadStatus() const

Reimplemented from Loadable::loadStatus().

See Loadable.

[signal] void ArcGISFeature::loadStatusChanged(Esri::ArcGISRuntime::LoadStatus loadStatus)

loadStatus See Loadable.

void ArcGISFeature::relateFeature(ArcGISFeature *feature)

Sets up a relationship between this feature and a given feature.

If this relationship is keyed on an Object ID or Global ID, and the origin feature in this call has been created locally, first you must call ServiceFeatureTable::applyEdits and refreshObjectId to obtain the new object ID and global ID generated by the service. If this is not done, then the destination feature will refer to an outdated ID and will not be considered related.

This function was introduced in Qt 100.1.

void ArcGISFeature::relateFeature(ArcGISFeature *feature, const RelationshipInfo &relationshipInfo)

Sets up a relationship between this feature and a given feature based on the relationshipInfo.

This function was introduced in Qt 100.1.

[virtual] void ArcGISFeature::retryLoad()

Reimplemented from Loadable::retryLoad().

See Loadable.

void ArcGISFeature::unrelateFeature(ArcGISFeature *feature)

Removes the relationship between this feature and a give feature.

If there is no existing relationship between the features, an errorOccurred is signaled.

This function was introduced in Qt 100.1.

Feedback on this topic?