source: trunk/nv/interface/window_manager.hh @ 326

Last change on this file since 326 was 326, checked in by epyon, 11 years ago
  • window_manager interface added
  • input interface added
  • sdl::window_manager and sdl::input added
  • gl_device/gl_window/gl_context made oblivious to sdl
  • currently some setup is required, application class needed
File size: 834 bytes
Line 
1// Copyright (C) 2014 ChaosForge Ltd
2// http://chaosforge.org/
3//
4// This file is part of NV Libraries.
5// For conditions of distribution and use, see copyright notice in nv.hh
6/**
7 * @file window_manager.hh
8 * @author Kornel Kisielewicz epyon@chaosforge.org
9 * @brief Window Manager interface
10 */
11
12#ifndef NV_WINDOW_MANAGER_HH
13#define NV_WINDOW_MANAGER_HH
14
15#include <nv/core/common.hh>
16#include <nv/core/string.hh>
17
18namespace nv
19{
20        class context;
21        class device;
22        class window;
23        class image_data;
24
25        class window_manager
26        {
27        public:
28                virtual window* create_window( device* dev, uint16 width, uint16 height, bool fullscreen ) = 0;
29                virtual void* adopt_window( void* sys_w_handle ) = 0;
30                virtual void sleep( uint32 ms ) = 0;
31                virtual uint32 get_ticks() = 0;
32        };
33
34}
35
36#endif // NV_WINDOW_MANAGER_HH
Note: See TracBrowser for help on using the repository browser.