00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013 #ifndef STXXL_HEADER_IO_DISK_QUEUED_FILE
00014 #define STXXL_HEADER_IO_DISK_QUEUED_FILE
00015
00016 #include <stxxl/bits/io/file.h>
00017
00018
00019 __STXXL_BEGIN_NAMESPACE
00020
00023
00025 class disk_queued_file : public virtual file
00026 {
00027 int queue_id, allocator_id;
00028
00029 public:
00030 disk_queued_file(int queue_id, int allocator_id) : queue_id(queue_id), allocator_id(allocator_id)
00031 { }
00032 request_ptr aread(
00033 void * buffer,
00034 offset_type pos,
00035 size_type bytes,
00036 const completion_handler & on_cmpl);
00037 request_ptr awrite(
00038 void * buffer,
00039 offset_type pos,
00040 size_type bytes,
00041 const completion_handler & on_cmpl);
00042
00043 virtual int get_queue_id() const
00044 {
00045 return queue_id;
00046 }
00047
00048 virtual int get_allocator_id() const
00049 {
00050 return allocator_id;
00051 }
00052 };
00053
00055
00056 __STXXL_END_NAMESPACE
00057
00058 #endif // !STXXL_HEADER_IO_DISK_QUEUED_FILE
00059