Skip To Content ArcGIS for Developers Sign In Dashboard

DownloadPreplannedOfflineMapParameters Class

(Esri::ArcGISRuntime::DownloadPreplannedOfflineMapParameters)

Parameters used for creating a DownloadPreplannedOfflineMapJob. More...

Header: #include <DownloadPreplannedOfflineMapParameters>
Since: Esri::ArcGISRuntime 100.4

Public Functions

DownloadPreplannedOfflineMapParameters()
DownloadPreplannedOfflineMapParameters(PreplannedMapArea *preplannedMapArea)
DownloadPreplannedOfflineMapParameters(const DownloadPreplannedOfflineMapParameters &other)
DownloadPreplannedOfflineMapParameters(DownloadPreplannedOfflineMapParameters &&other)
~DownloadPreplannedOfflineMapParameters()
bool isContinueOnErrors() const
bool isIncludeBasemap() const
PreplannedMapArea *preplannedMapArea(QObject *parent = nullptr) const
QString referenceBasemapDirectory() const
QString referenceBasemapFilename() const
void setContinueOnErrors(bool continueOnErrors)
void setIncludeBasemap(bool includeBasemap)
void setPreplannedMapArea(PreplannedMapArea *preplannedMapArea)
void setReferenceBasemapDirectory(const QString &referenceBasemapDirectory)
void setReferenceBasemapFilename(const QString &referenceBasemapFilename)
void setUpdateMode(PreplannedUpdateMode updateMode)
PreplannedUpdateMode updateMode() const
DownloadPreplannedOfflineMapParameters &operator=(const DownloadPreplannedOfflineMapParameters &other)
DownloadPreplannedOfflineMapParameters &operator=(DownloadPreplannedOfflineMapParameters &&other)

Detailed Description

Parameters used for creating a DownloadPreplannedOfflineMapJob.

Member Function Documentation

DownloadPreplannedOfflineMapParameters::DownloadPreplannedOfflineMapParameters()

Default constructor.

DownloadPreplannedOfflineMapParameters::DownloadPreplannedOfflineMapParameters(PreplannedMapArea *preplannedMapArea)

Constructor accepting a preplannedMapArea.

DownloadPreplannedOfflineMapParameters::DownloadPreplannedOfflineMapParameters(const DownloadPreplannedOfflineMapParameters &other)

Copy constructor from other DownloadPreplannedOfflineMapParameters.

DownloadPreplannedOfflineMapParameters::DownloadPreplannedOfflineMapParameters(DownloadPreplannedOfflineMapParameters &&other)

Move constructor from other DownloadPreplannedOfflineMapParameters.

DownloadPreplannedOfflineMapParameters::~DownloadPreplannedOfflineMapParameters()

Destructor.

bool DownloadPreplannedOfflineMapParameters::isContinueOnErrors() const

Indicates whether or not a download preplanned offline map job should continue running in the event of failure to take a layer offline.

Returns true if the DownloadPreplannedOfflineMapJob is to continue running in the event of failure.

If this property is true, failure to take a layer or table offline will not fail the job and the failure will be exposed in the job result. If this property is false, failure to take a layer or table offline will fail the job and no more layers or tables will be taken offline. The layer or table's error will be available as the job's error.

The default value is true.

bool DownloadPreplannedOfflineMapParameters::isIncludeBasemap() const

Returns whether the basemap of an online map will be included when the offline map is generated.

PreplannedMapArea *DownloadPreplannedOfflineMapParameters::preplannedMapArea(QObject *parent = nullptr) const

Returns the preplanned map area that will be downloaded for offline use.

The optional parent parameter will be set as the parent for the returned map area the first time this method is called.

See also setPreplannedMapArea().

QString DownloadPreplannedOfflineMapParameters::referenceBasemapDirectory() const

Gets the path to a directory on the device where the local basemap file is located.

This function was introduced in Esri::ArcGISRuntime 100.5.

See also setReferenceBasemapDirectory.

QString DownloadPreplannedOfflineMapParameters::referenceBasemapFilename() const

Gets the name of a local basemap file on the device which can be used rather than downloading an online basemap.

This function was introduced in Esri::ArcGISRuntime 100.5.

See also setReferenceBasemapFilename.

void DownloadPreplannedOfflineMapParameters::setContinueOnErrors(bool continueOnErrors)

Sets whether a download preplanned offline map job should continue running in the event of failure to take a layer offline to continueOnErrors.

See also isContinueOnErrors().

void DownloadPreplannedOfflineMapParameters::setIncludeBasemap(bool includeBasemap)

Sets whether the basemap of an online map will be included when the offline map is generated to includeBasemap.

See also isIncludeBasemap().

void DownloadPreplannedOfflineMapParameters::setPreplannedMapArea(PreplannedMapArea *preplannedMapArea)

Sets the preplanned map area that will be downloaded for offline use to preplannedMapArea.

See also preplannedMapArea().

void DownloadPreplannedOfflineMapParameters::setReferenceBasemapDirectory(const QString &referenceBasemapDirectory)

Sets the path to a directory on the device where the local basemap file is located.

  • referenceBasemapDirectory. A path to a directory on the device where local basemap files are located.

This property should be set in order to use a basemap which is already on the device, rather than downloading. The directory should only be set when referenceBasemapFilename is set.

This property supports any directory specified as either:

If the directory does not exist, or does not contain the specified basemap, the DownloadPreplannedOfflineMapJob will fail.

Note that the mobile map package will store either a relative or absolute path to the reference basemap file so that it can be opened in the future.

A relative path typically begins with "." to denote the parent directory of the resulting mobile map package or ".." to move up one directory. The parent directory of the mobile map package will be set when calling OfflineMapTask::downloadPreplannedOfflineMap.

For example, to download a mobile map package to "[my root path]/my_offline_maps/my_mobile_map_package", which uses a reference basemap in "[my root path]/other_maps/my_basemap.tpk", you would set the relative path as follows:

Note that this property is ignored if isIncludeBasemap is false.

This function was introduced in Esri::ArcGISRuntime 100.5.

See also referenceBasemapDirectory().

void DownloadPreplannedOfflineMapParameters::setReferenceBasemapFilename(const QString &referenceBasemapFilename)

Sets the name of a local basemap file on the device which can be used rather than downloading an online basemap.

  • referenceBasemapFilename. The name of the local basemap file.

The local basemap filename must end with .tpk, .tpkx or .vtpk since these are the supported file formats. This property can be read directly from settings applied by the author of the online web map or set by user code to a file known to be on the device.

This property can be read directly from settings applied by the author of the online web map (see OfflineSettings) or set by user code to a file known to be on the device.

To use the specified local basemap rather than downloading, the referenceBasemapDirectory property must also be set.

If the directory does not exist, or does not contain the specified basemap, DownloadPreplannedOfflineMapJob will fail.

Note that this property is ignored if isIncludeBasemap is false.

This function was introduced in Esri::ArcGISRuntime 100.5.

See also referenceBasemapFilename().

void DownloadPreplannedOfflineMapParameters::setUpdateMode(PreplannedUpdateMode updateMode)

Sets the mode for the offline map will obtain feature updates from the online service to updateMode.

This function was introduced in Esri::ArcGISRuntime 100.6.

See also updateMode.

PreplannedUpdateMode DownloadPreplannedOfflineMapParameters::updateMode() const

Describes how the offline map will obtain feature updates from the online service.

The preplanned workflow offers two modes for updating the feature data in your offline map:

  • Sync feature changes directly with online feature services.
  • Download a set of scheduled updates (geodatabase delta files which are cached on the server) from the online map area.

To register your mobile geodatabases for syncing with online feature services, set this property to PreplannedUpdateMode::SyncWithFeatureServices. Syncing allows you to upload as well as download changes, so this approach should be used when you need to edit your data. As you sync changes directly with the back-end services, you will receive the most up-to-date feature data available. This is the default option if you construct the DownloadPreplannedOfflineMapParameters.

To download a set of cached updates (delta files) from the online map area, set this property to PreplannedUpdateMode::DownloadScheduledUpdates. With this approach, updates are generated whenever the online map area is refreshed - for example according to its update schedule. Updates are prepared once and cached for download by all users of the offline map area. Sharing a single set of cached updates, rather than performing individual sync operations, reduces the load on the back-end services - this makes this approach scalable for large deployments. As updates are only downloaded, this approach can only be used with read-only workflows. The updates also reflect a snapshot of the feature data at the time the online map area was refreshed - rather than the most up-to-date information. The web map author must configure the online map to store cached updates for this approach.

If you use this updateMode with a web map which does not support scheduled updates, the resultant DownloadPreplannedOfflineMapJob will fail with an Error::code of 7016 (Scheduled Updates Not Supported).

This function was introduced in Esri::ArcGISRuntime 100.6.

See also setUpdateMode().

DownloadPreplannedOfflineMapParameters &DownloadPreplannedOfflineMapParameters::operator=(const DownloadPreplannedOfflineMapParameters &other)

Assignment operator from other DownloadPreplannedOfflineMapParameters.

DownloadPreplannedOfflineMapParameters &DownloadPreplannedOfflineMapParameters::operator=(DownloadPreplannedOfflineMapParameters &&other)

Move operator from other DownloadPreplannedOfflineMapParameters.


Feedback on this topic?