d3dut
annotate src/win.h @ 0:ecc040281dc9
initial commit
author | John Tsiombikas <nuclear@member.fsf.org> |
---|---|
date | Sat, 22 Jun 2013 10:11:39 +0300 |
parents | |
children | 242535442d04 |
rev | line source |
---|---|
nuclear@0 | 1 #ifndef D3DUT_WIN_H_ |
nuclear@0 | 2 #define D3DUT_WIN_H_ |
nuclear@0 | 3 |
nuclear@0 | 4 #include <vector> |
nuclear@0 | 5 #include <d3d11.h> |
nuclear@0 | 6 |
nuclear@0 | 7 #define WINCLASSNAME "d3dutwindow" |
nuclear@0 | 8 |
nuclear@0 | 9 struct Window { |
nuclear@0 | 10 HWND win; |
nuclear@0 | 11 int width, height; |
nuclear@0 | 12 |
nuclear@0 | 13 IDXGISwapChain *swap; |
nuclear@0 | 14 ID3D11RenderTargetView *rtarg_view; |
nuclear@0 | 15 |
nuclear@0 | 16 bool must_redisplay, changed_size; |
nuclear@0 | 17 int mousex, mousey; |
nuclear@0 | 18 |
nuclear@0 | 19 D3DUT_DisplayFunc display_func; |
nuclear@0 | 20 D3DUT_ReshapeFunc reshape_func; |
nuclear@0 | 21 D3DUT_KeyboardFunc keyboard_func; |
nuclear@0 | 22 D3DUT_KeyboardUpFunc keyboard_up_func; |
nuclear@0 | 23 D3DUT_SpecialFunc special_func; |
nuclear@0 | 24 D3DUT_SpecialUpFunc special_up_func; |
nuclear@0 | 25 D3DUT_MouseFunc mouse_func; |
nuclear@0 | 26 D3DUT_MotionFunc motion_func; |
nuclear@0 | 27 D3DUT_PassiveMotionFunc passive_motion_func; |
nuclear@0 | 28 }; |
nuclear@0 | 29 |
nuclear@0 | 30 extern std::vector<Window*> windows; |
nuclear@0 | 31 |
nuclear@0 | 32 int create_window(const char *title, int xsz, int ysz, unsigned int dmflags); |
nuclear@0 | 33 void destroy_window(int idx); |
nuclear@0 | 34 |
nuclear@0 | 35 void set_active_win(int idx); |
nuclear@0 | 36 int get_active_win(); |
nuclear@0 | 37 |
nuclear@0 | 38 Window *get_window(int idx = -1); |
nuclear@0 | 39 |
nuclear@0 | 40 long CALLBACK win_handle_event(HWND syswin, unsigned int msg, unsigned int wparam, long lparam); |
nuclear@0 | 41 |
nuclear@0 | 42 #endif // D3DUT_WIN_H_ |