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

Last change on this file since 550 was 550, checked in by epyon, 8 years ago
  • ECS and windowing updates
File size: 926 bytes
Line 
1// Copyright (C) 2014-2015 ChaosForge Ltd
2// http://chaosforge.org/
3//
4// This file is part of Nova libraries.
5// For conditions of distribution and use, see copying.txt file in root folder.
6
7/**
8 * @file window_manager.hh
9 * @author Kornel Kisielewicz epyon@chaosforge.org
10 * @brief Window Manager interface
11 */
12
13#ifndef NV_INTERFACE_WINDOW_MANAGER_HH
14#define NV_INTERFACE_WINDOW_MANAGER_HH
15
16#include <nv/common.hh>
17#include <nv/stl/string.hh>
18
19namespace nv
20{
21        class context;
22        class device;
23        class window;
24        class image_data;
25
26        class window_manager
27        {
28        public:
29                virtual window* create_window( device* dev, uint16 width, uint16 height, bool fullscreen, bool msaa = false ) = 0;
30                virtual void* adopt_window( void* sys_w_handle ) = 0;
31                virtual void sleep( uint32 ms ) = 0;
32                virtual uint32 get_ticks() = 0;
33                virtual ~window_manager() {}
34        };
35
36}
37
38#endif // NV_INTERFACE_WINDOW_MANAGER_HH
Note: See TracBrowser for help on using the repository browser.