DataObject - Объект данных

digraph geometry {
    node [shape="box", style=filled, fillcolor="lightgray"]
    rankdir=LR
    labelloc="t";
    label="Иерархия классов:";

    DataObject  [ href="DataObject.html#ref-label-dataobject-class" ];
    Table  [ href="Table.html#ref-label-table-class" ];
    QueryTable  [ href="QueryTable.html#ref-label-querytable-class" ];
    SelectionTable  [ href="SelectionTable.html#ref-label-selectiontable-class" ];
    CosmeticTable  [ href="CosmeticTable.html#ref-label-cosmetictable-class" ];
    Raster  [ href="Raster.html#ref-label-raster-class" ];
    RasteredTable  [ href="RasteredTable.html#ref-label-rasteredtable-class" ];

    DataObject -> Table;
    DataObject -> Raster;
    DataObject -> RasteredTable;
    Table -> CosmeticTable;
    Table -> SelectionTable;
    Table -> QueryTable;
}
class axipy.DataObject

Объект данных.

Открываемые объекты из источников данных представляются объектами этого типа. Возможные реализации: таблица, растр, грид, чертеж, панорама, и так далее.

Пример:

table = provider_manager.openfile('path/to/file.tab')
...
table.close()  # Закрывает таблицу

Для закрытия объекта данных можно использовать менеджер контекста - выражение with. В таком случае таблица будет закрыта при выходе из блока. См. close().

Пример:

with provider_manager.openfile('path/to/file.tab') as raster:
    ...
    # При выходе из блока растр будет закрыт

Свойства:

file_name

Возвращает путь к файлу таблицы.

is_spatial

Признак того, что объект данных является пространственным.

is_valid

Возвращает признак валидности объекта.

name

Название объекта данных.

properties

Дополнительные свойства объекта данных.

provider

Провайдер изначального источника данных.

Методы:

close([wait])

Закрыть объект данных.

Сигналы:

destroyed

Сигнал оповещения об удалении объекта.

Специальные методы:

__enter__()

Вход в контекст (используется с оператором with).

__eq__(other)

Оператор равенства (==).

__exit__(exception_type, exception_value, ...)

Закрывает таблицу при выходе из блока кода with.

__repr__()

Официальное строковое представление объекта при вызове repr().

Исключения:

CloseTimeout

Не удалось дождаться полного закрытия объекта данных в рамках установленного времени.

exception CloseTimeout

Не удалось дождаться полного закрытия объекта данных в рамках установленного времени. Используется в функции axipy.Table.close().

__enter__() → DataObject

Вход в контекст (используется с оператором with).

__eq__(other: object) → bool

Оператор равенства (==).

__exit__(exception_type: Optional[Type[BaseException]], exception_value: Optional[BaseException], traceback: Optional[TracebackType]) → Optional[bool]

Закрывает таблицу при выходе из блока кода with.

__repr__() → str

Официальное строковое представление объекта при вызове repr().

close(wait: bool = True)

Закрыть объект данных.

Параметры:

wait –

Будет ли метод ждать полного закрытия объекта данных. Если передать значение wait=True (по умолчанию), метод будет ждать полного закрытия объекта и освобождения всех связанных ресурсов. Если объект не был полностью закрыт в течение 1 минуты, будет вызвано исключение axipy.DataObject.CloseTimeout. Если передать значение wait=False, метод отметит объект на закрытие, не дожидаясь полного освобождения ресурсов.

Полное закрытие объекта данных означает что после выхода из функции, все связанные с объектом ресурсы, например файлы объекта данных, будут гарантированно освобождены.

Исключение:
  • RuntimeError – Ошибка закрытия объекта данных.

  • CloseTimeout – Не удалось дождаться полного закрытия объекта данных в рамках установленного времени.

Примечание

Объект данных не всегда может быть сразу закрыт. Например, для таблиц используется транзакционная модель редактирования и перед закрытием необходимо сохранить или отменить изменения, если они есть. См. Table.is_modified.

property destroyed: Signal

Сигнал оповещения об удалении объекта.

property file_name: Optional[Path]

Возвращает путь к файлу таблицы.

property is_spatial: bool

Признак того, что объект данных является пространственным.

property is_valid: bool

Возвращает признак валидности объекта.

property name: str

Название объекта данных.

property properties: dict

Дополнительные свойства объекта данных.

property provider: str

Провайдер изначального источника данных.