Neo  0.5.0
Developer Documentation
SystemContext.h
Go to the documentation of this file.
1 //========================================================================
2 // Copyright (c) 2003-2011 Anael Seghezzi <www.maratis3d.com>
3 // Copyright (c) 2015 Yannick Pflanzer <www.neo-engine.de>
4 //
5 // This software is provided 'as-is', without any express or implied
6 // warranty. In no event will the authors be held liable for any damages
7 // arising from the use of this software.
8 //
9 // Permission is granted to anyone to use this software for any purpose,
10 // including commercial applications, and to alter it and redistribute it
11 // freely, subject to the following restrictions:
12 //
13 // 1. The origin of this software must not be misrepresented; you must not
14 // claim that you wrote the original software. If you use this software
15 // in a product, an acknowledgment in the product documentation would
16 // be appreciated but is not required.
17 //
18 // 2. Altered source versions must be plainly marked as such, and must not
19 // be misrepresented as being the original software.
20 //
21 // 3. This notice may not be removed or altered from any source
22 // distribution.
23 //
24 //========================================================================
25 
26 
27 #ifndef __SYSTEM_CONTEXT_H
28 #define __SYSTEM_CONTEXT_H
29 
30 namespace Neo
31 {
40 class NEO_CORE_EXPORT SystemContext
41 {
42 public:
43 
44  // destructor
45  virtual ~SystemContext(void){}
46 
59  virtual void getScreenSize(unsigned int * width, unsigned int * height) = 0;
60 
65  virtual Vector2 getScreenSize() = 0;
66 
72  virtual void setCursorPosition(int x, int y){};
73 
77  virtual void hideCursor(void){};
78 
82  virtual void showCursor(void){};
83 
88  virtual const char * getWorkingDirectory(void) = 0;
89 
94  virtual unsigned long getSystemTick(void) = 0;
95 
100  virtual void setWindowTitle(const char* title) = 0;
101 
109  virtual void setScreenSize(unsigned int width, unsigned int height) = 0;
110 };
111 }
112 #endif
This class implements a basic interface to the underlying operating system.
Definition: SystemContext.h:40
virtual ~SystemContext(void)
Definition: SystemContext.h:45
virtual void hideCursor(void)
Hides the cursor.
Definition: SystemContext.h:77
Definition: Vector2.h:31
Definition: Color.h:29
virtual void showCursor(void)
Shows the cursor.
Definition: SystemContext.h:82
virtual void setCursorPosition(int x, int y)
Changes the current cursor position.
Definition: SystemContext.h:72