ChamplainMapSourceDesc

## ChamplainMapSourceDesc ChamplainMapSourceDesc — A basic struct to describe map sources. |

## Synopsis

                        ChamplainMapSourceDesc;
    ChamplainMapSourceDesc * champlain_map_source_desc_copy (const ChamplainMapSourceDesc *desc);
    void                champlain_map_source_desc_free      (ChamplainMapSourceDesc *desc);
    ChamplainMapSourceDesc * champlain_map_source_desc_new  (void);

## Description

A basic struct to describe map sources.

## Details

### ChamplainMapSourceDesc

    typedef struct {
      gchar *id;
      gchar *name;
      gchar *license;
      gchar *license_uri;
      gint min_zoom_level;
      gint max_zoom_level;
      ChamplainMapProjection projection;
      ChamplainMapSourceConstructor constructor;
      gchar *uri_format;
      gpointer data;
    } ChamplainMapSourceDesc;

Describes a ChamplainMapSource. This is returned by champlain_map_source_factory_get_list.

gchar *`id`; | A unique identifier, should contain only characters found in filenames
gchar *`name`; | A display name
gchar *`license`; | A display name for the licence of the data
gchar *`license_uri`; | A URI for the licence of the data
gint `min_zoom_level`; | the minimum supported zoom level
gint `max_zoom_level`; | the maximum supported zoom level
ChamplainMapProjection `projection`; | the projection used by the data
ChamplainMapSourceConstructor `constructor`; | a function that returns a fully constructed ChamplainMapSource
gchar *`uri_format`; | the URI to use to fetch network map data
gpointer `data`; | user data passed to the constructor

Since 0.4

### champlain_map_source_desc_copy ()

    ChamplainMapSourceDesc * champlain_map_source_desc_copy (const ChamplainMapSourceDesc *desc);

Makes a copy of the map source desc structure. The result must be freed using champlain_map_source_desc_free. All string fields will be duplicated with g_strdup.

`desc` : | a ChamplainMapSourceDesc
Returns : | an allocated copy of `desc`.

Since 0.4

### champlain_map_source_desc_free ()

    void                champlain_map_source_desc_free      (ChamplainMapSourceDesc *desc);

Frees a desc structure created with champlain_map_source_desc_new or champlain_map_source_desc_copy. All strings will be freed with g_free. The data pointer will not be freed.

`desc` : | a ChamplainMapSourceDesc

Since 0.4

### champlain_map_source_desc_new ()

    ChamplainMapSourceDesc * champlain_map_source_desc_new  (void);

Creates a new instance of ChamplainMapSourceDesc.

Returns : | a newly allocated ChamplainMapSourceDesc to be freed with champlain_map_source_desc_free

Since 0.4