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