gis_common_driver_recover_gcm_database()

Восстановить базу данных GCM.

Прототип:

#include <gis/gis_driver.h>
int gis_common_driver_recover_gcm_database( gis_driver_ctx_t *driver_ctx );

Аргументы:

driver_ctx
Контекст драйвера.

Библиотека:

formatctl

Описание:

Функция пытается добавить в базу данных GCM записи из папки /gcm/. Если валидация заголовка gcm провалилась, функция пытается переконвертировать карту. Если попытка конвертации провалилась, файл GCM удаляется.

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

gis_driver_ctx_t driver_ctx;
driver_ctx.id = GIS_CORE_DRIVERS_SXF_LOCAL;
driver_ctx.prefix = "[SXF_local_driver] ";
char *suffix = calloc( strlen( "sxf" ) + strlen( ".local."GIS_GCM_FILE_EXTENSION ) + 1, sizeof( char ) );
if ( !suffix )
{
gis_helper_debug_write( GIS_DEBUG_LEVEL_ERROR, driver_ctx.prefix,
"Memory allocation error [%s()]", __FUNCTION__ );
return ENOMEM;
}
strcpy( suffix, "sxf" );
driver_ctx.driver_gcm_suffix = strcat( suffix, ".local."GIS_GCM_FILE_EXTENSION );
if ( gis_common_driver_recover_gcm_database( driver_ctx ) != EOK )
{
gis_helper_debug_write_lvl( GIS_DEBUG_LEVEL_ERROR, driver_ctx.prefix,
"Failed to recover GCM database [%s()]", __FUNCTION__ );
return EFAULT;
}
free( (char*)driver_ctx.driver_gcm_suffix );

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

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

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

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

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

gis_driver_ctx_t




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