Содержание материала

 

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;

 

 

Добавить комментарий

Не использовать не нормативную лексику.

Просьба писать ваши замечания, наблюдения и все остальное,
что поможет улучшить предоставляемую информацию на этом сайте.

ВСЕ КОММЕНТАРИИ МОДЕРИРУЮТСЯ ВРУЧНУЮ, ТАК ЧТО СПАМИТЬ БЕСПОЛЕЗНО!


Защитный код
Обновить