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

Last change on this file since 364 was 364, checked in by epyon, 10 years ago
  • fixed compilation on clang
  • cleared all clang warnings (except fix_me's)
File size: 866 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                virtual ~window_manager() {}
33        };
34
35}
36
37#endif // NV_WINDOW_MANAGER_HH
Note: See TracBrowser for help on using the repository browser.