### Class

# Shumate DataSource

since: 1.0

#### Description [src]

    abstract class Shumate.DataSource : GObject.Object
    {
      /* No available fields */
    }

The base class used to retrieve tiles as `GBytes`.

Available since: 1.0

#### Ancestors

- GObject

#### Descendants

- ShumateTileDownloader

#### Instance methods

###### shumate_data_source_get_max_zoom_level

Gets the data source’s maximum zoom level.

since: 1.1

###### shumate_data_source_get_min_zoom_level

Gets the data source’s minimum zoom level.

since: 1.1

###### shumate_data_source_get_tile_data_async

Gets the data for the tile at the given coordinates.

since: 1.0

###### shumate_data_source_get_tile_data_finish

Gets the final result of a request started with shumate_data_source_get_tile_data_async().

since: 1.0

###### shumate_data_source_set_max_zoom_level

Sets the data source’s maximum zoom level.

since: 1.1

###### shumate_data_source_set_min_zoom_level

Sets the data source’s minimum zoom level.

since: 1.1

###### shumate_data_source_start_request

Begins a request for a tile.

since: 1.1

##### Methods inherited from GObject (43)

Please see GObject for a full list of methods.

#### Properties

###### Shumate.DataSource:max-zoom-level

The maximum zoom level.

since: 1.1

###### Shumate.DataSource:min-zoom-level

The minimum zoom level.

since: 1.1

#### Signals

###### Shumate.DataSource::received-data

Emitted when data is received for any tile. This includes any intermediate steps, such as data from the file cache, as well as the final result.

deprecated: 1.1 since: 1.0

##### Signals inherited from GObject (1)

###### GObject::notify

The notify signal is emitted on an object when one of its properties has its value set through g_object_set_property(), g_object_set(), et al.

unstable since: 2.0

#### Class structure

    struct ShumateDataSourceClass {
      GObjectClass parent_class;
      void (* get_tile_data_async) (
        ShumateDataSource* self,
        int x,
        int y,
        int zoom_level,
        GCancellable* cancellable,
        GAsyncReadyCallback callback,
        gpointer user_data
      );
      GBytes* (* get_tile_data_finish) (
        ShumateDataSource* self,
        GAsyncResult* result,
        GError** error
      );
      ShumateDataSourceRequest* (* start_request) (
        ShumateDataSource* self,
        int x,
        int y,
        int zoom_level,
        GCancellable* cancellable
      );

    }

No description available.

###### Class members

`parent_class: GObjectClass`
  No description available.
`get_tile_data_async: void (* get_tile_data_async) ( ShumateDataSource* self, int x, int y, int zoom_level, GCancellable* cancellable, GAsyncReadyCallback callback, gpointer user_data )`
  No description available.
`get_tile_data_finish: GBytes* (* get_tile_data_finish) ( ShumateDataSource* self, GAsyncResult* result, GError** error )`
  No description available.
`start_request: ShumateDataSourceRequest* (* start_request) ( ShumateDataSource* self, int x, int y, int zoom_level, GCancellable* cancellable )`
  No description available.

#### Virtual methods

###### Shumate.DataSourceClass.get_tile_data_async

Gets the data for the tile at the given coordinates.

since: 1.0

###### Shumate.DataSourceClass.get_tile_data_finish

Gets the final result of a request started with shumate_data_source_get_tile_data_async().

since: 1.0

###### Shumate.DataSourceClass.start_request

Begins a request for a tile.

since: 1.1