Stxxl
1.4.0
|
00001 /*************************************************************************** 00002 * include/stxxl/bits/io/request_queue.h 00003 * 00004 * Part of the STXXL. See http://stxxl.sourceforge.net 00005 * 00006 * Copyright (C) 2009 Andreas Beckmann <beckmann@cs.uni-frankfurt.de> 00007 * Copyright (C) 2011 Johannes Singler <singler@ira.uka.de> 00008 * 00009 * Distributed under the Boost Software License, Version 1.0. 00010 * (See accompanying file LICENSE_1_0.txt or copy at 00011 * http://www.boost.org/LICENSE_1_0.txt) 00012 **************************************************************************/ 00013 00014 #ifndef STXXL_IO_REQUEST_QUEUE_HEADER 00015 #define STXXL_IO_REQUEST_QUEUE_HEADER 00016 00017 #include <stxxl/bits/noncopyable.h> 00018 #include <stxxl/bits/io/request_ptr.h> 00019 00020 00021 __STXXL_BEGIN_NAMESPACE 00022 00023 //! \addtogroup iolayer 00024 //! \{ 00025 00026 class request_queue : private noncopyable 00027 { 00028 public: 00029 enum priority_op { READ, WRITE, NONE }; 00030 00031 public: 00032 virtual void add_request(request_ptr & req) = 0; 00033 virtual bool cancel_request(request_ptr & req) = 0; 00034 virtual ~request_queue() { } 00035 virtual void set_priority_op(priority_op p) { STXXL_UNUSED(p); } 00036 }; 00037 00038 //! \} 00039 00040 __STXXL_END_NAMESPACE 00041 00042 #endif // !STXXL_IO_REQUEST_QUEUE_HEADER 00043 // vim: et:ts=4:sw=4