00001
00002
00003 This file is subject to the terms and conditions of the GNU Lesser
00004 General Public License Version 2.1. See the file "COPYING" in the
00005 main directory of this archive for more details. */
00006
00007 #ifndef displaycontext_h
00008 #define displaycontext_h
00009
00010 #include "ps2gl/glcontext.h"
00011
00012 namespace GS {
00013 class CMemArea;
00014 class CDisplayEnv;
00015 }
00016
00017 class CDisplayContext {
00018 CGLContext &GLContext;
00019
00020
00021 GS::CMemArea *Frame0Mem, *Frame1Mem;
00022 GS::CMemArea *CurFrameMem, *LastFrameMem;
00023 GS::CDisplayEnv *DisplayEnv;
00024
00025 bool DisplayIsDblBuffered;
00026 bool DisplayIsInterlaced;
00027
00028 public:
00029 CDisplayContext( CGLContext &context );
00030 ~CDisplayContext();
00031
00032 GS::CDisplayEnv &GetDisplayEnv() { return *DisplayEnv; }
00033 void SetDisplayBuffers( bool interlaced, GS::CMemArea *frame0Mem, GS::CMemArea *frame1Mem );
00034 void SwapBuffers();
00035 };
00036
00037 #endif // displaycontext_h