The GPE class servers as the base from which concrete drivers can be derived. A GPE object represents a single display device.
Drivers based upon GPE must implement the following methods
// Configuration methods
virtual SCODE GetModeInfo(
GPEMode *pMode,
int modeNo )=0;
virtual int NumModes()=0;
virtual SCODE SetMode(
int modeId )=0;
// Blt methods
virtual SCODE BltPrepare(
GPEBltParms *pBltParms )=0;
virtual SCODE BltComplete(
GPEBltParms *pBltParms )=0;
// Line Method
virtual SCODE Line(
GPELineParms *pLineParms,
EGPEPhase phase = gpeSingle )=0;
// Surface creation Method
virtual SCODE AllocSurface(
GPESurf **ppSurf,
int width,
int height,
EGPEFormat format,
int surfaceFlags )=0;
// Cursor methods
virtual SCODE SetPointerShape(
GPESurf *pMask,
GPESurf *pColorSurf,
int xHot,
int yHot,
int cx,
int cy )=0;
virtual SCODE MovePointer(
int x,
int y )=0;
// Palette methods
virtual SCODE SetPalette(
RGBQUAD *src,
unsigned short firstEntry,
unsigned short numEntries )=0;
virtual SCODE SetPalette(
PALETTEENTRY *src,
unsigned short firstEntry,
unsigned short numEntries )=0;
// Timing method
virtual int InVBlank()=0;