gis_core_request_maps_list()

Получение списка доступных карт для выбранного драйвера.

Прототип:

#include <gis/gishelper.h>
int gis_core_request_maps_list( gis_core_connection_t *connection, gis_core_request_parameters_t *params, gis_core_driver_id_t driver_id, gis_core_map_list_t *map_list );

Аргументы:

connection
Указатель на дескриптор соединения.
params
Указатель на структуру параметров запроса к картографическому ядру.
driver_id
Идентификатор драйвера.
map_list
Указатель на список карт.

Библиотека:

gishelper

Описание:

Функция позволяет запросить у картографического ядра список карт во внутреннем формате (GCM), которые доступны драйверу driver_id для заданного региона params (анализируется лишь поле borders данной структуры). При успешном выполнении запроса функция выделяет память для возвращаемого списка карт map_list самостоятельно.

Возвращаемое значение:

EOK
Успешное завершение.
ESRCH
Запрос не выполнен.
EPIPE
Соединение с картографическим ядром не установлено.
EINVAL
Передан некорректный указатель.
EFAULT
Чтение списка карт завершилось с ошибкой.
ENOMEM
Не удалось выделить память для списка карт.
ENODATA
Отсутствуют данные, удовлетворяющие параметрам запроса.

Примеры использования:

gis_core_map_list_t list;
gis_core_map_list_init( &list );
gis_core_request_parameters_t params;
gis_borders_t borders;
borders.degrees.west = 10;
borders.degrees.south = 10;
borders.degrees.east = 20;
borders.degrees.north = 20;
if ( gis_core_request_parameters_set_borders( &params, &borders ) != EOK ) {
printf( "gis_core_request_parameters_set_borders() failed\n" );
return (-1);
}
if ( gis_core_request_maps_list( connection, &params, GIS_CORE_DRIVERS_SXF_LOCAL, &list ) != EOK ) {
printf( "gis_core_request_maps_list() failed\n" );
return (-2);
}

Классификация:

Картографический фреймворк для ЗОСРВ "Нейтрино"

Способ использования Использование разрешено
Обработчик прерывания Нет
Обработчик сигналов Да
В потоке Да

Тематические ссылки:

gis_core_connection_t, gis_core_request_parameters_t, gis_core_driver_id_t gis_core_map_list_t gis_core_map_list_free() gis_core_map_list_get_entry()




Предыдущий раздел: Описание API картографического фреймворка