Выбор требуемой карты в разделяемой области памяти.
#include <gis/gis_raw.h>int gis_data_raw_select_map( gis_data_raw_context_t ctx,gis_core_driver_id_t driver_id,int32_t map_id );
gishelper
Функция выбирает карту с переданным порядковым номером (индексом) map_id
, которая принадлежит указанному идентификатору драйвера driver_id
. Все карты в рамках одного драйвера имеют уникальный численный идентификатор. Таким образом, указав связку driver_id и map_id можно однозначно определить конкретную карту. Для получения списка карт заданного драйвера можно воспользоваться функцией gis_core_request_maps_list(). Функция вернет gis_core_map_list_t, пройдя по которому в цикле можно получить идентификатор интересующей карты, и затем передать этот идентификатор в gis_data_raw_select_map() для низкоуровневой работы с данными карты.
gis_core_connection_t connection;gis_core_request_parameters_t params;gis_data_raw_context_t raw_ctx;gis_core_link_init( &connection );gis_core_link_connect( &connection, 777 );gis_core_databuffer_attach( &connection );gis_core_request_parameters_init( ¶ms );gis_core_databuffer_data_request( &connection, ¶ms, 1 );gis_data_raw_ctx_alloc( &raw_ctx );gis_data_raw_ctx_import_databuffer( raw_ctx );gis_core_map_list_t map_list;gis_core_map_list_init( &map_list );gis_core_request_maps_list( &connection, ¶ms, GIS_CORE_DRIVERS_SXF_LOCAL, &map_list );gis_data_raw_select_map( raw_ctx, GIS_CORE_DRIVERS_SXF_LOCAL, map_list.entry_list[0].id );int count_obj = gis_data_raw_map_get_object_count( raw_ctx );if ( count_obj != 8589 ){printf( "Incorrect number of objects: %d\n", count_obj );gis_data_raw_ctx_free( &raw_ctx );gis_core_map_list_free( &map_list );gis_core_databuffer_detach();gis_core_link_destroy( &connection, true );return 1;}gis_data_raw_ctx_free( &raw_ctx );gis_core_map_list_free( &map_list );gis_core_databuffer_detach();gis_core_link_destroy( &connection, true );
ПК ЦКИ для ЗОСРВ «Нейтрино»
1.1.0
gis_data_raw_context_t, gis_data_raw_select_first_map(), gis_data_raw_select_next_map()
Предыдущий раздел: Описание API картографического фреймворка