C3D Kernel  104065
Классы | Макросы | Определения типов | Перечисления | Функции
Файл io_buffer.h

Сериализация: буфер потока, работа с диском, хранитель версий. Подробнее...

Классы

class  Cluster
 Кластер. Подробнее...
class  FileSpace
 Файловое пространство. Подробнее...
struct  ClusterReference
class  iobuf_Seq
 Потоковый буфер, обеспечивает только последовательную запись, без возможности удалить или перезаписать файл. Подробнее...
class  iobuf
 Потоковый буфер с произвольным доступом , расширяет функциональность iobuf_Seq возможностью удаления и перезаписи файлов. Подробнее...

Макросы

#define EOF   (-1)
 Конец файла.

Определения типов

typedef ptrdiff_t io::pos
 Рабочая переменная (позиция, длина, количество).
typedef ptrdiff_t io::off
 Начало кластера (смещение (при работе с диском) или адрес (при работе с памятью)).

Перечисления

enum  mode_flags {
  io::in = 0x0001, io::out = 0x0002, io::trunc = 0x0004, io::speedOnClose = 0x0008,
  io::delIfEmpty = 0x0010, io::delOnClose = 0x0020, io::recovery = 0x0040, io::appSpecial = 0x0080,
  io::createNew = 0x0100, io::createAlways = 0x0200, io::openExisting = 0x0300, io::openAlways = 0x0400,
  io::truncExisting = 0x0500
}
 Режимы потоковых операций.
enum  dir { io::beg = 0, io::cur = 1, io::end = 2 }
 Направление поиска.
enum  state {
  io::good = 0x00000000L, io::eof = 0x00000001L, io::outOfRead = 0x00000002L, io::outOfMemory = 0x00000004L,
  io::fail = 0x00000008L, io::badData = 0x00000010L, io::notFound = 0x00000020L, io::accessViolation = 0x00000040L,
  io::cantOpenStore = 0x00000080L, io::cantCreateStore = 0x00000100L, io::badSig = 0x00000200L, io::cantReadCatalog = 0x00000400L,
  io::cantWriteCatalog = 0x00000800L, io::cantFind = 0x00001000L, io::cantRead = 0x00002000L, io::cantWrite = 0x00004000L,
  io::badClassId = 0x00008000L, io::doubledClassId = 0x00010000L, io::verViolation = 0x00040000L, io::hardFail = 0x00080000L,
  io::closed = 0x00100000L, io::writeProtect = 0x00200000L, io::cantWriteObject = 0x00400000L, io::underflow64to32 = 0x00800000L,
  io::encrypted = 0x01000000L, io::skippedUnknown = 0x02000000L, io::readAborted = 0x04000000L, io::allMask = 0xffffffffL
}
 Флаги состояния потока.

Функции

bool IsEqualSArrayItems (const Cluster &, const Cluster &)
size_t LenCOUNT (VERSION version)
 Длина данных size_t в потоке.
size_t SizeOfFileSpace (VERSION version, size_t cnt, bool calcFull)
 Размер данных FileSpace в потоке указанной версии.
size_t getMemLen (const Cluster &c, VERSION)
 Размер данных кластера.
size_t getMemLen (const FileSpace &s, VERSION version)
 Размер данных файла.
bool IsGoodFile (const FileSpace &file, const iobuf_Seq &owner)
 Проверить массив кластеров файла.

Подробное описание

 Указатель Классы Пространства имен Файлы Функции Переменные Определения типов Перечисления Элементы перечислений Друзья Макросы