00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014 #ifndef STXXL_IO__SERVING_REQUEST_H_
00015 #define STXXL_IO__SERVING_REQUEST_H_
00016
00017 #include <stxxl/bits/io/request_with_state.h>
00018
00019
00020 __STXXL_BEGIN_NAMESPACE
00021
00024
00026 class serving_request : public request_with_state
00027 {
00028 template <class base_file_type>
00029 friend class fileperblock_file;
00030
00031 public:
00032 serving_request(
00033 const completion_handler & on_cmpl,
00034 file * f,
00035 void * buf,
00036 offset_type off,
00037 size_type b,
00038 request_type t);
00039
00040 protected:
00041 void serve();
00042 void completed();
00043
00044 public:
00045 const char * io_type() const;
00046 };
00047
00049
00050 __STXXL_END_NAMESPACE
00051
00052 #endif // !STXXL_IO__SERVING_REQUEST_H_
00053