#include <file.hpp>
Граф наследования:file_t:
Открытые члены | |
void | open (const std::string &file_name, bool is_read_only) |
void | create (const std::string &file_name) |
void | close () |
oess_1::uint_t | tell () |
void | seek (oess_1::uint_t pos) |
oess_1::uint_t | length () |
virtual bool | eof () const |
void | chsize (oess_1::uint_t size) |
Открытые статические члены | |
static void | remove (const std::string &file_name) |
static bool | is_file_exists (const std::string &file_name) |
Проверить существование файла с указанным именем. | |
static void | rename_file (const std::string &what, const std::string &to, bool auto_destroy_existing_target=false) |
Переименовать файл. | |
Защищенные члены | |
virtual const oess_1::char_t * | in_reserve (size_t item_count, size_t item_size, size_t &item_available) |
virtual void | in_shift (size_t item_count, size_t item_size) |
virtual oess_1::char_t * | out_reserve (size_t item_count, size_t item_size, size_t &item_available) |
virtual void | out_shift (size_t item_count, size_t item_size) |
Закрытые члены | |
void | is_workable (bool is_read_only_op) const |
Закрытые данные | |
auto_ptr_3::vect_ptr_t< oess_1::char_t > | m_buf |
int | m_file |
bool | m_is_read_only |
void chsize | ( | oess_1::uint_t | size | ) |
Усечь файл до указанного размера.
void close | ( | ) |
Закрыть файл. Исключения не выпускаются.
void create | ( | const std::string & | file_name | ) |
Создать новый файл или перезаписать существующий.
file_name | Имя создаваемого файла. |
bool eof | ( | ) | const [virtual] |
Достигнут ли конец файла?
Замещает ibinstream_t.
const oess_1::char_t * in_reserve | ( | size_t | item_count, | |
size_t | item_size, | |||
size_t & | item_available | |||
) | [protected, virtual] |
Метод для определения указателя, из которого можно считывать данные. Если нет достаточного объема данных для чтения хотя бы одного элемента, то должно порождаться исключение.
Осуществляет загрузку фрагмента (части фрагмента) из файла во внутренний буфер.
item_count | Количество элементов, которые нужно прочитать. |
item_size | Размер одного элемента в байтах. |
item_available | Количество элементов, доступных по возвращенному указателю. |
Замещает ibinstream_t.
void in_shift | ( | size_t | item_count, | |
size_t | item_size | |||
) | [protected, virtual] |
Сдвинуть указатель. Вызывается после успешного чтения из буфера, указатель на который был возвращен методом out_reserve.
Ничего не делает.
item_count | Количество успешно прочитанных элементов. |
item_size | Размер одного элемента в байтах. |
Замещает ibinstream_t.
bool is_file_exists | ( | const std::string & | file_name | ) | [static] |
Проверить существование файла с указанным именем.
void is_workable | ( | bool | is_read_only_op | ) | const [private] |
Проверка возможности выполнения операции. Если операцию осуществить невозможно, то порождается исключение.
is_read_only_op | true, если операция является read-only операцией и не требует изменения содержимого файла. |
oess_1::uint_t length | ( | ) |
Определить длину файла.
void open | ( | const std::string & | file_name, | |
bool | is_read_only | |||
) |
Открыть существующий файл.
file_name | Имя открываемого файла. |
is_read_only | true, если файл должен быть открыт только для чтения. |
oess_1::char_t * out_reserve | ( | size_t | item_count, | |
size_t | item_size, | |||
size_t & | item_available | |||
) | [protected, virtual] |
Метод для определения указателя, в который можно записывать данные. Если нет достаточного объема данных для чтения хотя бы одного элемента, то должно порождаться исключение.
Возвращает указатель на начало внутреннего буфера.
item_count | Количество элементов, которые нужно записать. |
item_size | Размер одного элемента в байтах. |
item_available | Количество элементов, доступных для записи по возвращенному указателю. |
Замещает obinstream_t.
void out_shift | ( | size_t | item_count, | |
size_t | item_size | |||
) | [protected, virtual] |
Сдвинуть указатель. Вызывается после успешной записи в буфер, указатель на который был возвращен методом out_reserve.
Осуществляет запись фрагмента (части фрагмента) из внутреннего буфера в файл.
item_count | Количество успешно записанных элементов. |
item_size | Размер одного элемента в байтах. |
Замещает obinstream_t.
void remove | ( | const std::string & | file_name | ) | [static] |
Удалить файл.
void rename_file | ( | const std::string & | what, | |
const std::string & | to, | |||
bool | auto_destroy_existing_target = false | |||
) | [static] |
Переименовать файл.
Если аргумент auto_destroy_existing_target == false, то существование to воспринимается как ошибка и удаление не выполняется, а порождается исключение.
what | Что переименовывать. |
to | Во что переименовывать. |
auto_destroy_existing_target | Нужно ли уничтожать to, если to существует. |
void seek | ( | oess_1::uint_t | pos | ) |
Перейти на указанную позицию.
oess_1::uint_t tell | ( | ) |
Определить текущую позицию в файле.
auto_ptr_3::vect_ptr_t< oess_1::char_t > m_buf [private] |
Буфер для операций ввода-вывода.
int m_file [private] |
Системный дескриптор файла.
bool m_is_read_only [private] |
true, если файл открыт в режиме read-only.