1 #ifndef __GNUC__ 2 #pragma once 3 #endif 4 #ifndef __XR_FILE_SYSTEM_WIN32_H__ 5 #define __XR_FILE_SYSTEM_WIN32_H__ 6 7 #ifndef NOMINMAX 8 #define NOMINMAX 9 #endif 10 #include <windows.h> 11 #include "xr_file_system.h" 12 13 namespace xray_re { 14 15 class xr_mmap_reader_win32: public xr_reader { 16 public: 17 xr_mmap_reader_win32(); 18 xr_mmap_reader_win32(HANDLE h, HANDLE h_mmap, const void* data, size_t size); 19 virtual ~xr_mmap_reader_win32(); 20 21 private: 22 HANDLE m_h; 23 HANDLE m_h_mmap; 24 }; 25 26 class xr_file_writer_win32: public xr_writer { 27 public: 28 xr_file_writer_win32(); 29 xr_file_writer_win32(HANDLE h); 30 virtual ~xr_file_writer_win32(); 31 virtual void w_raw(const void* src, size_t src_size); 32 virtual void seek(size_t pos); 33 virtual size_t tell(); 34 35 private: 36 HANDLE m_h; 37 }; 38 39 } // end of namespace xray_re 40 41 #endif 42