Stxxl 1.2.1
|
Implementation of disk emulation. More...
#include <simdisk_file.h>
Public Member Functions | |
sim_disk_file (const std::string &filename, int mode, int disk) | |
constructs file object | |
request_ptr | aread (void *buffer, stxxl::int64 pos, size_t bytes, completion_handler on_cmpl) |
Schedules asynchronous read request to the file. | |
request_ptr | awrite (void *buffer, stxxl::int64 pos, size_t bytes, completion_handler on_cmpl) |
Schedules asynchronous write request to the file. | |
void | set_size (stxxl::int64 newsize) |
Changes the size of the file. |
Implementation of disk emulation.
sim_disk_file::sim_disk_file | ( | const std::string & | filename, |
int | mode, | ||
int | disk | ||
) | [inline] |
constructs file object
filename | path of file |
mode | open mode, see stxxl::file::open_modes |
disk | disk(file) identifier |
request_ptr sim_disk_file::aread | ( | void * | buffer, |
stxxl::int64 | pos, | ||
size_t | bytes, | ||
completion_handler | on_cmpl | ||
) | [virtual] |
Schedules asynchronous read request to the file.
buffer | pointer to memory buffer to read into |
pos | starting file position to read |
bytes | number of bytes to transfer |
on_cmpl | I/O completion handler |
request_ptr
object, that can be used to track the status of the operation Implements file.
References request_ptr::get().
request_ptr sim_disk_file::awrite | ( | void * | buffer, |
stxxl::int64 | pos, | ||
size_t | bytes, | ||
completion_handler | on_cmpl | ||
) | [virtual] |
Schedules asynchronous write request to the file.
buffer | pointer to memory buffer to write from |
pos | starting file position to write |
bytes | number of bytes to transfer |
on_cmpl | I/O completion handler |
request_ptr
object, that can be used to track the status of the operation Implements file.
References request_ptr::get().
void sim_disk_file::set_size | ( | stxxl::int64 | newsize | ) | [virtual] |
Changes the size of the file.
newsize | value of the new file size |
Reimplemented from ufs_file_base.
References ufs_file_base::size().