00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013 #ifndef STXXL_WINCALL_FILE_HEADER
00014 #define STXXL_WINCALL_FILE_HEADER
00015
00016 #ifndef STXXL_HAVE_WINCALL_FILE
00017 #ifdef STXXL_BOOST_CONFIG
00018 #include <boost/config.hpp>
00019 #endif
00020
00021 #ifdef BOOST_MSVC
00022 #define STXXL_HAVE_WINCALL_FILE 1
00023 #else
00024 #define STXXL_HAVE_WINCALL_FILE 0
00025 #endif
00026 #endif
00027
00028 #if STXXL_HAVE_WINCALL_FILE
00029
00030 #include <stxxl/bits/io/wfs_file_base.h>
00031
00032
00033 __STXXL_BEGIN_NAMESPACE
00034
00037
00039 class wincall_file : public wfs_file_base, public disk_queued_file
00040 {
00041 public:
00047 wincall_file(
00048 const std::string & filename,
00049 int mode,
00050 int queue_id = DEFAULT_QUEUE, int allocator_id = NO_ALLOCATOR)
00051 : wfs_file_base(filename, mode), disk_queued_file(queue_id, allocator_id)
00052 { }
00053 void serve(const request * req) throw (io_error);
00054 const char * io_type() const;
00055 };
00056
00058
00059 __STXXL_END_NAMESPACE
00060
00061 #endif // #if STXXL_HAVE_WINCALL_FILE
00062
00063 #endif // !STXXL_WINCALL_FILE_HEADER