Core - Базовый сервисный класс

class axioma.core.Core

Базовый сервисный класс. Используется тогда, когда нет необходимости использовать модули render или gui. Например, когда необходимо открыть таблицу и прочитать из нее данные. В рамках одного отдельного проекта достаточно проинициализировать один экземпляр данного класса. Перед вызовом initialize() должен быть создан объект приложения QGuiApplication

Пример инициализации:
import sys
import axioma.core
from PyQt5.QtGui import QGuiApplication

a = QGuiApplication(sys.argv)
core = axioma.core.Core()
core.initialize()

Примечание

Получить существующий экземпляр можно через глобальную переменную axioma.app.core

От него наследуются: Render

Core(parent=None)

Конструктор

Параметры:parent (QObject или None) – Родительский объект
appLocalDataLocation()

Возвращает каталог с пользовательскими настройками

Тип результата:QDir
dataProviderById(id)

Получение провайдера данных по его идентификатору

Параметры:id (str) – Текстовый идентификатор провайдера
Результат:Найденный провайдер или None
Тип результата:DataProvider
# находим необходимый провайдер
dp = axioma.app.core.dataProviderById("GdalDataProvider")
if dp is not None:
        ...
dataProviders()

Список загруженных провайдеров данных

Результат:загруженные провайдеры
Тип результата:list [DataProvider]
enableLoggingToConsole(enabled=True)

Включить или выключить вывод лога в консоль

Параметры:enabled (bool) – желаемое состояние вывода; по умолчанию - True, т.е. осуществлять вывод
getService(service_type, name=None)

Получить сервис типа service_type. Если name == None, будет использовано стандартное имя сервиса service.metaObject().className()

Примечание

В момент вызова метода нет гарантии, что запрашиваемый сервис уже зарегистрирован в системе. Для того, чтобы получить сервис, как только он станет доступным, используйте механизм Управления зависимостями

Параметры:
  • service_type (тип класса, наследованный от QObject) – Тип класса сервиса
  • name (str) – Имя сервиса
service = axioma.app.core.getService(axioma.core.plugin.PluginManager)
notificationManager()

Получить менеджер уведомлений

Результат:менеджер уведомлений
Тип результата:NotificationManager
pluginManager()

Получить менеджер плагинов

Результат:менеджер плагинов
Тип результата:PluginManager
prependExtension(ext)

Регистрация нового, ранее созданного, расширения в системе

Параметры:ext (Extension) – Расширение
prependExtensions(exts)

Регистрация списка расширений в системе

Параметры:exts (list [Extension]) – Расширения
registerService(service, name)

Регистрация сервиса service с именем name. Все расширения, которые объявили зависимость от сервиса с таким именем будут оповещены о его регистрации.

Параметры:
  • service (QObject) – Объект сервиса
  • name (str) – Имя сервиса
registerService(service)

Регистрация сервиса с именем соответствующим его типу. Аналогичен вызову

registerService(service, service.metaObject().className())
settings()

Постоянные настройки приложения

Тип результата:SettingsManager
translationLanguage()

Возвращает язык интерфейса приложения

Результат:Значение „ru“, „en“
Тип результата:str
validDataDir()

Получение каталога с ресурсами приложения

Результат:Каталог
Тип результата:QDir