gis_data_engine_get_class_list()

Получение списка активных классов.

Прототип:

#include <gis/gisrender.h>
int gis_data_engine_get_class_list( gis_data_engine_context_t ctx, std::vector<ClassifierInfo> &list, std::vector<gis_core_class_code_t> &class_list );

Аргументы:

ctx
Указатель на контекст движка рендеринга.
list
Вектор, содержащий тип class ClassifierInfo.
class_list
Вектор активных кодов класса типа gis_core_class_code_t.

Библиотека:

gisrender

Описание:

Функция заполняет список классов, активных на момент запроса.

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

EOK
Успешное завершение
EINVAL
Некорректные параметры функции
ENODATA
Отсутствуют классификаторы

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

gis_core_connection_t connection;
gis_data_engine_context_t ctx;
uint32_t width = 100;
uint32_t height = 100;
gis_core_link_init( &connection );
if ( gis_core_link_connect( &connection, 777 ) != EOK ) {
printf( "Failed to connect databuffer\n" );
return 1;
}
if ( gis_core_databuffer_attach( &connection ) != EOK ) {
printf( "Failed to attach databuffer\n" );
return 1;
}
gis_core_request_parameters_t map;
gis_core_request_parameters_init( &map );
gis_core_databuffer_data_request( &connection, &map, 1 );
if ( gis_data_engine_alloc( width, height, GIS_DATA_ENGINE_MODE_SM, GIS_DATA_ENGINE_BPP_32, &connection, &ctx ) != EOK ) {
printf( "gis_data_engine_alloc() failed.\n" );
return 1;
}
std::vector<ClassifierInfo> list;
std::vector<gis_core_class_code_t> class_list;
list.clear();
class_list.clear();
if ( gis_data_engine_get_classifier_list( ctx, list ) != EOK ) {
printf( "Failed to fill classifier list \n" );
return 1;
}
for ( int i = 0; i < (int)list.size(); i++ )
{
printf( "classifier_%d: %s\n", i, list.at( i ).name.c_str() );
}
if ( gis_data_engine_get_class_list( ctx, list, class_list ) != EOK ) {
printf( "Failed to fill class list\n" );
return 1;
}
if ( class_list.size() != 1182 )
{
printf( "Incorrect class_list size: %d\n", class_list.size() );
return 1;
}
gis_data_engine_free( &ctx );
gis_core_databuffer_detach();
gis_core_link_destroy( &connection, true );

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

ПК ЦКИ для ЗОСРВ «Нейтрино»

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

Поддерживается, начиная с ПК ЦКИ редакции 1.1.0

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

gis_data_engine_context_t, gis_data_engine_get_map_list()




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