14 #ifndef STXXL_IO_LINUXAIO_REQUEST_HEADER 
   15 #define STXXL_IO_LINUXAIO_REQUEST_HEADER 
   19 #if STXXL_HAVE_LINUXAIO_FILE 
   21 #include <linux/aio_abi.h> 
   24 #define STXXL_VERBOSE_LINUXAIO(msg) STXXL_VERBOSE2(msg) 
   34     template <
class base_file_type>
 
   40     void fill_control_block();
 
   52         assert(dynamic_cast<linuxaio_file*>(file));
 
   54                                " linuxaio_request" <<
 
   55                                "(file=" << file << 
" buffer=" << buffer <<
 
   56                                " offset=" << offset << 
" bytes=" << bytes <<
 
   57                                " type=" << type << 
")");
 
   63     void completed(
bool posted, 
bool canceled);
 
   71 #endif // #if STXXL_HAVE_LINUXAIO_FILE 
   73 #endif // !STXXL_IO_LINUXAIO_REQUEST_HEADER 
Completion handler class (Loki-style). 
iocb cb
control block of async request 
Request with completion state. 
Defines interface of file. 
#define STXXL_VERBOSE_LINUXAIO(msg)
#define STXXL_BEGIN_NAMESPACE
void completed(bool canceled)
Implementation of file based on other files, dynamically allocate one file per block. Allows for dynamic disk space consumption. 
stxxl::internal_size_type size_type
static const size_t bytes
number of bytes in uint_pair 
stxxl::external_size_type offset_type
linuxaio_request(const completion_handler &on_cmpl, file *file, void *buffer, offset_type offset, size_type bytes, request_type type)
Request for an linuxaio_file. 
#define STXXL_END_NAMESPACE