Linux multi-monitor fullscreen support
[ryzomcore.git] / ryzom / client / src / main_loop.h
blob04079e213b06e29821f668dd7b61b1567ed41f63
1 // Ryzom - MMORPG Framework <http://dev.ryzom.com/projects/ryzom/>
2 // Copyright (C) 2010 Winch Gate Property Limited
3 //
4 // This source file has been modified by the following contributors:
5 // Copyright (C) 2013-2014 Jan BOON (Kaetemi) <jan.boon@kaetemi.be>
6 //
7 // This program is free software: you can redistribute it and/or modify
8 // it under the terms of the GNU Affero General Public License as
9 // published by the Free Software Foundation, either version 3 of the
10 // License, or (at your option) any later version.
12 // This program is distributed in the hope that it will be useful,
13 // but WITHOUT ANY WARRANTY; without even the implied warranty of
14 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 // GNU Affero General Public License for more details.
17 // You should have received a copy of the GNU Affero General Public License
18 // along with this program. If not, see <http://www.gnu.org/licenses/>.
22 #ifndef CL_MAIN_LOOP_H
23 #define CL_MAIN_LOOP_H
25 #include "nel/misc/types_nl.h"
27 class CChatWindow;
29 const uint NUM_MISSION_OPTIONS = 8;
31 // Main loop of the application (displayer, input, ...).
32 bool mainLoop();
34 // render all
35 void doRenderScene(bool wantTraversals, bool keepTraversals);
36 void renderScene(bool forceFullDetail, bool bloom);
37 void setDefaultChatWindow(CChatWindow *defaultChatWindow);
39 // Commit sky scene camera for rendering
40 void commitCamera();
42 void updateDayNightCycleHour();
45 enum TScreenshotRequest
47 ScreenshotRequestNone = 0,
48 ScreenshotRequestTGA,
49 ScreenshotRequestJPG,
50 ScreenshotRequestPNG
53 extern TScreenshotRequest ScreenshotRequest;
54 extern bool ShowInterface; // Do the Chat OSD have to be displayed.
57 void destroyLoadingBitmap ();
58 void drawLoadingBitmap (float progress);
59 void displayDebugUIUnderMouse();
61 // in-game helper : pop messages to signal that the patch isn't completed yet
62 void inGamePatchUncompleteWarning();
65 // enable/disable bloom config interface
66 void initBloomConfigUI();
68 #endif // CL_MAIN_LOOP_H
70 /* End of main_loop.h */