This class serves as a base from which to implement individual display drivers. A GPE object represents a single display device.
The following code example shows the methods that a GPE-based driver must implement.
// Configuration methods
virtual SCODE GetModeInfo(
GPEMode *pMode,
int modeNo )=0;
virtual int NumModes()=0;
virtual SCODE SetMode(
int modeId )=0;
// Blit 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;