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