14 #ifndef STXXL_IO_LINUXAIO_FILE_HEADER
15 #define STXXL_IO_LINUXAIO_FILE_HEADER
19 #if STXXL_HAVE_LINUXAIO_FILE
50 const std::string& filename,
int mode,
51 int queue_id = DEFAULT_LINUXAIO_QUEUE,
52 int allocator_id = NO_ALLOCATOR,
53 unsigned int device_id = DEFAULT_DEVICE_ID,
54 int desired_queue_length = 0)
58 desired_queue_length(desired_queue_length)
61 void serve(
void* buffer, offset_type offset, size_type
bytes,
65 request_ptr awrite(
void* buffer, offset_type pos, size_type bytes,
67 const char * io_type()
const;
71 return desired_queue_length;
79 #endif // #if STXXL_HAVE_LINUXAIO_FILE
81 #endif // !STXXL_IO_LINUXAIO_FILE_HEADER
Completion handler class (Loki-style).
Implementation of file based on the Linux kernel interface for asynchronous I/O.
High-performance smart pointer used as a wrapping reference counting pointer.
linuxaio_file(const std::string &filename, int mode, int queue_id=DEFAULT_LINUXAIO_QUEUE, int allocator_id=NO_ALLOCATOR, unsigned int device_id=DEFAULT_DEVICE_ID, int desired_queue_length=0)
Constructs file object.
Defines interface of file.
#define STXXL_BEGIN_NAMESPACE
int get_desired_queue_length() const
Implementation of some file methods based on serving_request.
static const size_t bytes
number of bytes in uint_pair
Base for UNIX file system implementations.
Request for an linuxaio_file.
#define STXXL_END_NAMESPACE