6. Библиотека потоковых хранилищ
TBaseStorage - базовый класс
Оба хранилища, которые будут рассматриваться в дальнейшем, основаны на одном абстрактом базовом классе и имеют схожие свойства и методы.
Item[] - получение указателя на указанный элемент по его индексу.
ItemSize - запрос размера хранимого элемента.
Count - запрос и установка числа хранимых элементов.
Clear - очистка хранилища, установление его размера в нуль.
AddItems, GetItems, SetItems - добавление, запрос и установка блока элементов. SaveStream, LoadStream - запись и загрузка хранилища в/из потока. Параметр Compression в этих процедурах означает следующее 0 - компрессия не производится, и хранилище записывается в линейном натуральном виде; 1 - наименьшая степень компрессии; 9 - наивысшая степень компрессии. Число между 1..9 - произвольная степень компрессии.
Code: |
// TBaseStorage // Базовый класс для хранилищ type TBaseStorage = class(TObject) public property Item[Ind: Cardinal]: Pointer read GetItem; default; property ItemSize: Cardinal read FItemSize; property Count: Cardinal read FCount write SetCount; public procedure Clear; virtual; abstract; procedure AddItems(Items: Pointer; Count: Cardinal); virtual; abstract; procedure SetItems(Items: Pointer; Index, Count: Cardinal); virtual; abstract; procedure GetItems(Items: Pointer; Index, Count: Cardinal); virtual; abstract; procedure SaveStream(Stream: TStream; Compression: Integer); virtual; abstract; procedure LoadStream(Stream: TStream; Compression: Integer; Count: Cardinal); virtual; abstract; end; |
Просьба писать ваши замечания, наблюдения и все остальное,
что поможет улучшить предоставляемую информацию на этом сайте.
ВСЕ КОММЕНТАРИИ МОДЕРИРУЮТСЯ ВРУЧНУЮ, ТАК ЧТО СПАМИТЬ БЕСПОЛЕЗНО!