![]() |
UNIVERS
15.3
UNIVERS base processing software API
|
#include <DbBufStorage.H>
Public Member Functions | |
| DbDataCluster (unsigned nItemSize, DbIndex nStartVolume=DB_CLUSTER_START_VOLUME) | |
| virtual | ~DbDataCluster () |
| void * | data_item (DbIndex iLocal) const |
| void | add_items (DbIndex nCount, DbIndex *pLocal, Logic *bSequent=NULL) |
| void | release_items (DbIndex nCount, const DbIndex *pLocal) |
| Logic | is_empty () const |
| DbIndex | empty_slots () const |
| DbIndex | total_slots () const |
| void | print_self () const |
Менеджер хранения - массив произвольно взятых строк таблицы. Номер элемента в кластере - строго неотрицательное число! Использование last в качестве индексов ЗАПРЕЩЕНО!
| DbDataCluster::DbDataCluster | ( | unsigned | nItemSize, |
| DbIndex | nStartVolume = DB_CLUSTER_START_VOLUME |
||
| ) |
Создать кластер для элементов данных размера nItemSize и начальным количеством неиспользуемых ячеек nStartVolume.
|
virtual |
Удалить кластер и его данные.
| void DbDataCluster::add_items | ( | DbIndex | nCount, |
| DbIndex * | pLocal, | ||
| Logic * | bSequent = NULL |
||
| ) |
Создание нескольких элементов данных и возвращение их локальных индексов в массив pLocal. Если все индексы идут последовательно, в переменную bSequent возвращается TRUE.
| void* DbDataCluster::data_item | ( | DbIndex | iLocal | ) | const |
Доступ к элементу данных по его локальному индексу.
| DbIndex DbDataCluster::empty_slots | ( | ) | const |
Возвратить количество неиспользуемых ячеек.
| Logic DbDataCluster::is_empty | ( | ) | const |
Возвратить TRUE, если в кластере отсутствуют задействованные ячейки.
| void DbDataCluster::print_self | ( | ) | const |
Печать элемента в stderr.
| void DbDataCluster::release_items | ( | DbIndex | nCount, |
| const DbIndex * | pLocal | ||
| ) |
Пометить ячейки с указанными индексами как неиспользуемые.
| DbIndex DbDataCluster::total_slots | ( | ) | const |
Возвратить общее количество ячеек.
1.8.5