mirror of
https://github.com/reactos/reactos.git
synced 2025-07-31 22:02:14 +00:00
fix include guard, use winddi types instead of ros specific function pointer types, add a bunch of static asserts to make sure the DRIVRE_FUNCTIONS structure matches the array.
svn path=/trunk/; revision=40386
This commit is contained in:
parent
dc1bfc0941
commit
595ee18b02
5 changed files with 170 additions and 149 deletions
|
@ -216,7 +216,7 @@ typedef DWORD LFTYPE;
|
|||
typedef PVOID KERNEL_PVOID;
|
||||
typedef PVOID PUMDHPDEV;
|
||||
typedef D3DNTHAL_CONTEXTCREATEDATA D3DNTHAL_CONTEXTCREATEI;
|
||||
#if !defined(__WINDDI_H)
|
||||
#if !defined(_WINDDI_)
|
||||
typedef LONG FIX;
|
||||
#endif
|
||||
|
||||
|
@ -533,78 +533,11 @@ typedef struct _GDIBSOBJECT
|
|||
HGDIOBJ hgdiobj;
|
||||
} GDIBSOBJECT, *PGDIBSOBJECT;
|
||||
|
||||
//
|
||||
// Driver Functions
|
||||
//
|
||||
typedef BOOL (NTAPI *PGD_ENABLEDRIVER)(ULONG, ULONG, PDRVENABLEDATA);
|
||||
typedef DHPDEV (NTAPI *PGD_ENABLEPDEV)(DEVMODEW *, LPWSTR, ULONG, HSURF *, ULONG, ULONG *, ULONG, DEVINFO *, LPWSTR, LPWSTR, HANDLE);
|
||||
typedef VOID (NTAPI *PGD_COMPLETEPDEV)(DHPDEV, HDEV);
|
||||
typedef VOID (NTAPI *PGD_DISABLEPDEV)(DHPDEV);
|
||||
typedef HSURF (NTAPI *PGD_ENABLESURFACE)(DHPDEV);
|
||||
typedef VOID (NTAPI *PGD_DISABLESURFACE)(DHPDEV);
|
||||
typedef BOOL (NTAPI *PGD_ASSERTMODE)(DHPDEV, BOOL);
|
||||
typedef BOOL (NTAPI *PGD_OFFSET)(SURFOBJ*, LONG, LONG, FLONG);
|
||||
typedef BOOL (NTAPI *PGD_RESETPDEV)(DHPDEV, DHPDEV);
|
||||
typedef VOID (NTAPI *PGD_DISABLEDRIVER)(VOID);
|
||||
typedef HBITMAP (NTAPI *PGD_CREATEDEVICEBITMAP)(DHPDEV, SIZEL, ULONG);
|
||||
typedef VOID (NTAPI *PGD_DELETEDEVICEBITMAP)(DHSURF);
|
||||
typedef BOOL (NTAPI *PGD_ALPHABLEND)(SURFOBJ*, SURFOBJ*, CLIPOBJ*, XLATEOBJ*, RECTL*, RECTL*, BLENDOBJ*);
|
||||
typedef BOOL (NTAPI *PGD_REALIZEBRUSH)(BRUSHOBJ*, SURFOBJ*, SURFOBJ*, SURFOBJ*, XLATEOBJ*, ULONG);
|
||||
typedef ULONG (NTAPI *PGD_DITHERCOLOR)(DHPDEV, ULONG, ULONG, PULONG);
|
||||
typedef BOOL (NTAPI *PGD_STROKEPATH)(SURFOBJ*, PATHOBJ*, CLIPOBJ*, XFORMOBJ*, BRUSHOBJ*, POINTL*, PLINEATTRS, MIX);
|
||||
typedef BOOL (NTAPI *PGD_FILLPATH)(SURFOBJ*, PATHOBJ*, CLIPOBJ*, BRUSHOBJ*, POINTL*, MIX, ULONG);
|
||||
typedef BOOL (NTAPI *PGD_STROKEANDFILLPATH)(SURFOBJ*, PATHOBJ*, CLIPOBJ*, XFORMOBJ*, BRUSHOBJ*, PLINEATTRS, BRUSHOBJ*, POINTL*, MIX, ULONG);
|
||||
typedef BOOL (NTAPI *PGD_PAINT)(SURFOBJ*, CLIPOBJ*, BRUSHOBJ*, POINTL*, MIX);
|
||||
typedef BOOL (NTAPI *PGD_BITBLT)(SURFOBJ*, SURFOBJ*, SURFOBJ*, CLIPOBJ*, XLATEOBJ*, RECTL*, POINTL*, POINTL*, BRUSHOBJ*, POINTL*, ROP4);
|
||||
typedef BOOL (NTAPI *PGD_TRANSPARENTBLT)(SURFOBJ*, SURFOBJ*, CLIPOBJ*, XLATEOBJ*, RECTL*, RECTL*, ULONG, ULONG);
|
||||
typedef BOOL (NTAPI *PGD_COPYBITS)(SURFOBJ*, SURFOBJ*, CLIPOBJ*, XLATEOBJ*, RECTL*, POINTL*);
|
||||
typedef BOOL (NTAPI *PGD_STRETCHBLT)(SURFOBJ*, SURFOBJ*, SURFOBJ*, CLIPOBJ*, XLATEOBJ*, COLORADJUSTMENT*, POINTL*, RECTL*, RECTL*, POINTL*, ULONG);
|
||||
typedef BOOL (NTAPI *PGD_STRETCHBLTROP)(SURFOBJ*, SURFOBJ*, SURFOBJ*, CLIPOBJ*, XLATEOBJ*, COLORADJUSTMENT*, POINTL*, RECTL*, RECTL*, POINTL*, ULONG, BRUSHOBJ*, DWORD);
|
||||
typedef BOOL (NTAPI *PGD_SETPALETTE)(DHPDEV, PALOBJ*, ULONG, ULONG, ULONG);
|
||||
typedef BOOL (NTAPI *PGD_TEXTOUT)(SURFOBJ*, STROBJ*, FONTOBJ*, CLIPOBJ*, RECTL*, RECTL*, BRUSHOBJ*, BRUSHOBJ*, POINTL*, MIX);
|
||||
typedef ULONG (NTAPI *PGD_ESCAPE)(SURFOBJ*, ULONG, ULONG, PVOID *, ULONG, PVOID *);
|
||||
typedef ULONG (NTAPI *PGD_DRAWESCAPE)(SURFOBJ*, ULONG, CLIPOBJ*, RECTL*, ULONG, PVOID *);
|
||||
typedef PIFIMETRICS (NTAPI *PGD_QUERYFONT)(DHPDEV, ULONG, ULONG, PULONG);
|
||||
typedef PVOID (NTAPI *PGD_QUERYFONTTREE)(DHPDEV, ULONG, ULONG, ULONG, PULONG);
|
||||
typedef LONG (NTAPI *PGD_QUERYFONTDATA)(DHPDEV, FONTOBJ*, ULONG, HGLYPH, GLYPHDATA*, PVOID, ULONG);
|
||||
typedef ULONG (NTAPI *PGD_SETPOINTERSHAPE)(SURFOBJ*, SURFOBJ*, SURFOBJ*, XLATEOBJ*, LONG, LONG, LONG, LONG, RECTL*, ULONG);
|
||||
typedef VOID (NTAPI *PGD_MOVEPOINTER)(SURFOBJ*, LONG, LONG, RECTL*);
|
||||
typedef BOOL (NTAPI *PGD_LINETO)(SURFOBJ*, CLIPOBJ*, BRUSHOBJ*, LONG, LONG, LONG, LONG, RECTL*, MIX);
|
||||
typedef BOOL (NTAPI *PGD_SENDPAGE)(SURFOBJ*);
|
||||
typedef BOOL (NTAPI *PGD_STARTPAGE)(SURFOBJ*);
|
||||
typedef BOOL (NTAPI *PGD_ENDDOC)(SURFOBJ*, ULONG);
|
||||
typedef BOOL (NTAPI *PGD_STARTDOC)(SURFOBJ*, PWSTR, DWORD);
|
||||
typedef ULONG (NTAPI *PGD_GETGLYPHMODE)(DHPDEV, FONTOBJ*);
|
||||
typedef VOID (NTAPI *PGD_SYNCHRONIZE)(DHPDEV, RECTL*);
|
||||
typedef ULONG (NTAPI *PGD_SAVESCREENBITS)(SURFOBJ*, ULONG, ULONG, RECTL*);
|
||||
typedef ULONG (NTAPI *PGD_GETMODES)(HANDLE, ULONG, PDEVMODEW);
|
||||
typedef VOID (NTAPI *PGD_FREE)(PVOID, ULONG);
|
||||
typedef VOID (NTAPI *PGD_DESTROYFONT)(FONTOBJ*);
|
||||
typedef LONG (NTAPI *PGD_QUERYFONTCAPS)(ULONG, PULONG);
|
||||
typedef ULONG (NTAPI *PGD_LOADFONTFILE)(ULONG, PVOID, ULONG, ULONG);
|
||||
typedef BOOL (NTAPI *PGD_UNLOADFONTFILE)(ULONG);
|
||||
typedef ULONG (NTAPI *PGD_FONTMANAGEMENT)(SURFOBJ*, FONTOBJ*, ULONG, ULONG, PVOID, ULONG, PVOID);
|
||||
typedef LONG (NTAPI *PGD_QUERYTRUETYPETABLE)(ULONG, ULONG, ULONG, PTRDIFF, ULONG, PBYTE);
|
||||
typedef LONG (NTAPI *PGD_QUERYTRUETYPEOUTLINE)(DHPDEV, FONTOBJ*, HGLYPH, BOOL, GLYPHDATA*, ULONG, TTPOLYGONHEADER*);
|
||||
typedef PVOID (NTAPI *PGD_GETTRUETYPEFILE)(ULONG, PULONG);
|
||||
typedef LONG (NTAPI *PGD_QUERYFONTFILE)(ULONG, ULONG, ULONG, PULONG);
|
||||
typedef BOOL (NTAPI *PGD_QUERYADVANCEWIDTHS)(DHPDEV, FONTOBJ*, ULONG, HGLYPH *, PVOID *, ULONG);
|
||||
typedef BOOL (NTAPI *PGD_SETPIXELFORMAT)(SURFOBJ*, LONG, ULONG);
|
||||
typedef LONG (NTAPI *PGD_DESCRIBEPIXELFORMAT)(DHPDEV, LONG, ULONG, PPIXELFORMATDESCRIPTOR);
|
||||
typedef BOOL (NTAPI *PGD_SWAPBUFFERS)(SURFOBJ*, PWNDOBJ);
|
||||
typedef BOOL (NTAPI *PGD_STARTBANDING)(SURFOBJ*, POINTL*);
|
||||
typedef BOOL (NTAPI *PGD_NEXTBAND)(SURFOBJ*, POINTL*);
|
||||
typedef BOOL (NTAPI *PGD_GETDIRECTDRAWINFO)(DHPDEV, PDD_HALINFO, PDWORD, VIDEOMEMORY*, PDWORD, PDWORD);
|
||||
typedef BOOL (NTAPI *PGD_ENABLEDIRECTDRAW)(DHPDEV, PDD_CALLBACKS, PDD_SURFACECALLBACKS, PDD_PALETTECALLBACKS);
|
||||
typedef VOID (NTAPI *PGD_DISABLEDIRECTDRAW)(DHPDEV);
|
||||
typedef LONG (NTAPI *PGD_QUERYSPOOLTYPE)(DHPDEV, LPWSTR);
|
||||
typedef BOOL (NTAPI *PGD_GRADIENTFILL)(SURFOBJ*, CLIPOBJ*, XLATEOBJ*, TRIVERTEX*, ULONG, PVOID, ULONG, RECTL*, POINTL*, ULONG);
|
||||
typedef VOID (NTAPI *PGD_SYNCHRONIZESURFACE)(SURFOBJ*, RECTL *, FLONG);
|
||||
|
||||
//
|
||||
// Declarations missing in ddk/winddi.h
|
||||
//
|
||||
typedef VOID (APIENTRY *PFN_DrvMovePanning)(LONG, LONG, FLONG);
|
||||
//typedef BOOL (APIENTRY *PFN_DrvOffset)(SURFOBJ*, LONG, LONG, FLONG);
|
||||
|
||||
|
||||
//
|
||||
|
@ -612,81 +545,81 @@ typedef VOID (APIENTRY *PFN_DrvMovePanning)(LONG, LONG, FLONG);
|
|||
//
|
||||
typedef struct _DRIVER_FUNCTIONS
|
||||
{
|
||||
PGD_ENABLEPDEV EnablePDEV;
|
||||
PGD_COMPLETEPDEV CompletePDEV;
|
||||
PGD_DISABLEPDEV DisablePDEV;
|
||||
PGD_ENABLESURFACE EnableSurface;
|
||||
PGD_DISABLESURFACE DisableSurface;
|
||||
PGD_ASSERTMODE AssertMode;
|
||||
PGD_OFFSET Offset;
|
||||
PGD_RESETPDEV ResetPDEV;
|
||||
PGD_DISABLEDRIVER DisableDriver;
|
||||
PFN_DrvEnablePDEV EnablePDEV;
|
||||
PFN_DrvCompletePDEV CompletePDEV;
|
||||
PFN_DrvDisablePDEV DisablePDEV;
|
||||
PFN_DrvEnableSurface EnableSurface;
|
||||
PFN_DrvDisableSurface DisableSurface;
|
||||
PFN_DrvAssertMode AssertMode;
|
||||
PFN_DrvOffset Offset;
|
||||
PFN_DrvResetDevice ResetPDEV;
|
||||
PFN_DrvDisableDriver DisableDriver;
|
||||
PVOID Unknown1;
|
||||
PGD_CREATEDEVICEBITMAP CreateDeviceBitmap;
|
||||
PGD_DELETEDEVICEBITMAP DeleteDeviceBitmap;
|
||||
PGD_REALIZEBRUSH RealizeBrush;
|
||||
PGD_DITHERCOLOR DitherColor;
|
||||
PGD_STROKEPATH StrokePath;
|
||||
PGD_FILLPATH FillPath;
|
||||
PGD_STROKEANDFILLPATH StrokeAndFillPath;
|
||||
PGD_PAINT Paint;
|
||||
PGD_BITBLT BitBlt;
|
||||
PGD_COPYBITS CopyBits;
|
||||
PGD_STRETCHBLT StretchBlt;
|
||||
PFN_DrvCreateDeviceBitmap CreateDeviceBitmap;
|
||||
PFN_DrvDeleteDeviceBitmap DeleteDeviceBitmap;
|
||||
PFN_DrvRealizeBrush RealizeBrush;
|
||||
PFN_DrvDitherColor DitherColor;
|
||||
PFN_DrvStrokePath StrokePath;
|
||||
PFN_DrvFillPath FillPath;
|
||||
PFN_DrvStrokeAndFillPath StrokeAndFillPath;
|
||||
PFN_DrvPaint Paint;
|
||||
PFN_DrvBitBlt BitBlt;
|
||||
PFN_DrvCopyBits CopyBits;
|
||||
PFN_DrvStretchBlt StretchBlt;
|
||||
PVOID Unknown2;
|
||||
PGD_SETPALETTE SetPalette;
|
||||
PGD_TEXTOUT TextOut;
|
||||
PGD_ESCAPE Escape;
|
||||
PGD_DRAWESCAPE DrawEscape;
|
||||
PGD_QUERYFONT QueryFont;
|
||||
PGD_QUERYFONTTREE QueryFontTree;
|
||||
PGD_QUERYFONTDATA QueryFontData;
|
||||
PGD_SETPOINTERSHAPE SetPointerShape;
|
||||
PGD_MOVEPOINTER MovePointer;
|
||||
PGD_LINETO LineTo;
|
||||
PGD_SENDPAGE SendPage;
|
||||
PGD_STARTPAGE StartPage;
|
||||
PGD_ENDDOC EndDoc;
|
||||
PGD_STARTDOC StartDoc;
|
||||
PFN_DrvSetPalette SetPalette;
|
||||
PFN_DrvTextOut TextOut;
|
||||
PFN_DrvEscape Escape;
|
||||
PFN_DrvDrawEscape DrawEscape;
|
||||
PFN_DrvQueryFont QueryFont;
|
||||
PFN_DrvQueryFontTree QueryFontTree;
|
||||
PFN_DrvQueryFontData QueryFontData;
|
||||
PFN_DrvSetPointerShape SetPointerShape;
|
||||
PFN_DrvMovePointer MovePointer;
|
||||
PFN_DrvLineTo LineTo;
|
||||
PFN_DrvSendPage SendPage;
|
||||
PFN_DrvStartPage StartPage;
|
||||
PFN_DrvEndDoc EndDoc;
|
||||
PFN_DrvStartDoc StartDoc;
|
||||
PVOID Unknown3;
|
||||
PGD_GETGLYPHMODE GetGlyphMode;
|
||||
PGD_SYNCHRONIZE Synchronize;
|
||||
PFN_DrvGetGlyphMode GetGlyphMode;
|
||||
PFN_DrvSynchronize Synchronize;
|
||||
PVOID Unknown4;
|
||||
PGD_SAVESCREENBITS SaveScreenBits;
|
||||
PGD_GETMODES GetModes;
|
||||
PGD_FREE Free;
|
||||
PGD_DESTROYFONT DestroyFont;
|
||||
PGD_QUERYFONTCAPS QueryFontCaps;
|
||||
PGD_LOADFONTFILE LoadFontFile;
|
||||
PGD_UNLOADFONTFILE UnloadFontFile;
|
||||
PGD_FONTMANAGEMENT FontManagement;
|
||||
PGD_QUERYTRUETYPETABLE QueryTrueTypeTable;
|
||||
PGD_QUERYTRUETYPEOUTLINE QueryTrueTypeOutline;
|
||||
PGD_GETTRUETYPEFILE GetTrueTypeFile;
|
||||
PGD_QUERYFONTFILE QueryFontFile;
|
||||
PFN_DrvSaveScreenBits SaveScreenBits;
|
||||
PFN_DrvGetModes GetModes;
|
||||
PFN_DrvFree Free;
|
||||
PFN_DrvDestroyFont DestroyFont;
|
||||
PFN_DrvQueryFontCaps QueryFontCaps;
|
||||
PFN_DrvLoadFontFile LoadFontFile;
|
||||
PFN_DrvUnloadFontFile UnloadFontFile;
|
||||
PFN_DrvFontManagement FontManagement;
|
||||
PFN_DrvQueryTrueTypeTable QueryTrueTypeTable;
|
||||
PFN_DrvQueryTrueTypeOutline QueryTrueTypeOutline;
|
||||
PFN_DrvGetTrueTypeFile GetTrueTypeFile;
|
||||
PFN_DrvQueryFontFile QueryFontFile;
|
||||
PFN_DrvMovePanning MovePanning;
|
||||
PGD_QUERYADVANCEWIDTHS QueryAdvanceWidths;
|
||||
PGD_SETPIXELFORMAT SetPixelFormat;
|
||||
PGD_DESCRIBEPIXELFORMAT DescribePixelFormat;
|
||||
PGD_SWAPBUFFERS SwapBuffers;
|
||||
PGD_STARTBANDING StartBanding;
|
||||
PGD_NEXTBAND NextBand;
|
||||
PGD_GETDIRECTDRAWINFO GetDirectDrawInfo;
|
||||
PGD_ENABLEDIRECTDRAW EnableDirectDraw;
|
||||
PGD_DISABLEDIRECTDRAW DisableDirectDraw;
|
||||
PGD_QUERYSPOOLTYPE QuerySpoolType;
|
||||
PFN_DrvQueryAdvanceWidths QueryAdvanceWidths;
|
||||
PFN_DrvSetPixelFormat SetPixelFormat;
|
||||
PFN_DrvDescribePixelFormat DescribePixelFormat;
|
||||
PFN_DrvSwapBuffers SwapBuffers;
|
||||
PFN_DrvStartBanding StartBanding;
|
||||
PFN_DrvNextBand NextBand;
|
||||
PFN_DrvGetDirectDrawInfo GetDirectDrawInfo;
|
||||
PFN_DrvEnableDirectDraw EnableDirectDraw;
|
||||
PFN_DrvDisableDirectDraw DisableDirectDraw;
|
||||
PFN_DrvQuerySpoolType QuerySpoolType;
|
||||
PVOID Unknown5;
|
||||
PFN_DrvIcmCreateColorTransform IcmCreateColorTransform;
|
||||
PFN_DrvIcmDeleteColorTransform IcmDeleteColorTransform;
|
||||
PFN_DrvIcmCheckBitmapBits IcmCheckBitmapBits;
|
||||
PFN_DrvIcmSetDeviceGammaRamp IcmSetDeviceGammaRamp;
|
||||
PGD_GRADIENTFILL GradientFill;
|
||||
PGD_STRETCHBLTROP StretchBltROP;
|
||||
PFN_DrvGradientFill GradientFill;
|
||||
PFN_DrvStretchBltROP StretchBltROP;
|
||||
PFN_DrvPlgBlt PlgBlt;
|
||||
PGD_ALPHABLEND AlphaBlend;
|
||||
PFN_DrvAlphaBlend AlphaBlend;
|
||||
PVOID SynthesizeFont;
|
||||
PVOID GetSynthesizedFontFiles;
|
||||
PGD_TRANSPARENTBLT TransparentBlt;
|
||||
PFN_DrvTransparentBlt TransparentBlt;
|
||||
PFN_DrvQueryPerBandInfo QueryPerBandInfo;
|
||||
PFN_DrvQueryDeviceSupport QueryDeviceSupport;
|
||||
PVOID Reserved1;
|
||||
|
@ -700,14 +633,102 @@ typedef struct _DRIVER_FUNCTIONS
|
|||
PFN_DrvDeriveSurface DeriveSurface;
|
||||
PFN_DrvQueryGlyphAttrs QueryGlyphAttrs;
|
||||
PFN_DrvNotify Notify;
|
||||
PGD_SYNCHRONIZESURFACE SynchronizeSurface;
|
||||
PFN_DrvSynchronizeSurface SynchronizeSurface;
|
||||
PFN_DrvResetDevice ResetDevice;
|
||||
PVOID Reserved9;
|
||||
PVOID Reserved10;
|
||||
PVOID Reserved11; /* 92 */
|
||||
|
||||
/* ReactOS specify */
|
||||
PGD_ENABLEDRIVER EnableDriver; //ReactOS Extra
|
||||
PFN_DrvEnableDriver EnableDriver; //ReactOS Extra
|
||||
} DRIVER_FUNCTIONS, *PDRIVER_FUNCTIONS;
|
||||
|
||||
#define ASSERT_PFN(pfn) \
|
||||
C_ASSERT(FIELD_OFFSET(DRIVER_FUNCTIONS, pfn) == sizeof(PVOID) * INDEX_Drv##pfn)
|
||||
|
||||
ASSERT_PFN(EnablePDEV);
|
||||
ASSERT_PFN(CompletePDEV);
|
||||
ASSERT_PFN(DisablePDEV);
|
||||
ASSERT_PFN(EnableSurface);
|
||||
ASSERT_PFN(DisableSurface);
|
||||
ASSERT_PFN(AssertMode);
|
||||
ASSERT_PFN(Offset);
|
||||
ASSERT_PFN(ResetPDEV);
|
||||
ASSERT_PFN(DisableDriver);
|
||||
ASSERT_PFN(CreateDeviceBitmap);
|
||||
ASSERT_PFN(DeleteDeviceBitmap);
|
||||
ASSERT_PFN(RealizeBrush);
|
||||
ASSERT_PFN(DitherColor);
|
||||
ASSERT_PFN(StrokePath);
|
||||
ASSERT_PFN(FillPath);
|
||||
ASSERT_PFN(StrokeAndFillPath);
|
||||
ASSERT_PFN(Paint);
|
||||
ASSERT_PFN(BitBlt);
|
||||
ASSERT_PFN(CopyBits);
|
||||
ASSERT_PFN(StretchBlt);
|
||||
ASSERT_PFN(SetPalette);
|
||||
ASSERT_PFN(TextOut);
|
||||
ASSERT_PFN(Escape);
|
||||
ASSERT_PFN(DrawEscape);
|
||||
ASSERT_PFN(QueryFont);
|
||||
ASSERT_PFN(QueryFontTree);
|
||||
ASSERT_PFN(QueryFontData);
|
||||
ASSERT_PFN(SetPointerShape);
|
||||
ASSERT_PFN(MovePointer);
|
||||
ASSERT_PFN(LineTo);
|
||||
ASSERT_PFN(SendPage);
|
||||
ASSERT_PFN(StartPage);
|
||||
ASSERT_PFN(EndDoc);
|
||||
ASSERT_PFN(StartDoc);
|
||||
ASSERT_PFN(GetGlyphMode);
|
||||
ASSERT_PFN(Synchronize);
|
||||
ASSERT_PFN(SaveScreenBits);
|
||||
ASSERT_PFN(GetModes);
|
||||
ASSERT_PFN(Free);
|
||||
ASSERT_PFN(DestroyFont);
|
||||
ASSERT_PFN(QueryFontCaps);
|
||||
ASSERT_PFN(LoadFontFile);
|
||||
ASSERT_PFN(UnloadFontFile);
|
||||
ASSERT_PFN(FontManagement);
|
||||
ASSERT_PFN(QueryTrueTypeTable);
|
||||
ASSERT_PFN(QueryTrueTypeOutline);
|
||||
ASSERT_PFN(GetTrueTypeFile);
|
||||
ASSERT_PFN(QueryFontFile);
|
||||
ASSERT_PFN(MovePanning);
|
||||
ASSERT_PFN(QueryAdvanceWidths);
|
||||
ASSERT_PFN(SetPixelFormat);
|
||||
ASSERT_PFN(DescribePixelFormat);
|
||||
ASSERT_PFN(SwapBuffers);
|
||||
ASSERT_PFN(StartBanding);
|
||||
ASSERT_PFN(NextBand);
|
||||
ASSERT_PFN(GetDirectDrawInfo);
|
||||
ASSERT_PFN(EnableDirectDraw);
|
||||
ASSERT_PFN(DisableDirectDraw);
|
||||
ASSERT_PFN(QuerySpoolType);
|
||||
ASSERT_PFN(IcmCreateColorTransform);
|
||||
ASSERT_PFN(IcmDeleteColorTransform);
|
||||
ASSERT_PFN(IcmCheckBitmapBits);
|
||||
ASSERT_PFN(IcmSetDeviceGammaRamp);
|
||||
ASSERT_PFN(GradientFill);
|
||||
ASSERT_PFN(StretchBltROP);
|
||||
ASSERT_PFN(PlgBlt);
|
||||
ASSERT_PFN(AlphaBlend);
|
||||
ASSERT_PFN(SynthesizeFont);
|
||||
ASSERT_PFN(GetSynthesizedFontFiles);
|
||||
ASSERT_PFN(TransparentBlt);
|
||||
ASSERT_PFN(QueryPerBandInfo);
|
||||
ASSERT_PFN(QueryDeviceSupport);
|
||||
ASSERT_PFN(Reserved1);
|
||||
ASSERT_PFN(Reserved2);
|
||||
ASSERT_PFN(Reserved3);
|
||||
ASSERT_PFN(Reserved4);
|
||||
ASSERT_PFN(Reserved5);
|
||||
ASSERT_PFN(Reserved6);
|
||||
ASSERT_PFN(Reserved7);
|
||||
ASSERT_PFN(Reserved8);
|
||||
ASSERT_PFN(DeriveSurface);
|
||||
ASSERT_PFN(QueryGlyphAttrs);
|
||||
ASSERT_PFN(Notify);
|
||||
ASSERT_PFN(SynchronizeSurface);
|
||||
|
||||
#endif
|
||||
|
|
|
@ -44,7 +44,7 @@ typedef struct _GDIPOINTER /* should stay private to ENG? No, part of PDEVOBJ ak
|
|||
|
||||
/* public pointer information */
|
||||
RECTL Exclude; /* required publicly for SPS_ACCEPT_EXCLUDE */
|
||||
PGD_MOVEPOINTER MovePointer;
|
||||
PFN_DrvMovePointer MovePointer;
|
||||
ULONG Status;
|
||||
} GDIPOINTER, *PGDIPOINTER;
|
||||
|
||||
|
|
|
@ -10,9 +10,9 @@
|
|||
|
||||
|
||||
|
||||
BOOL DRIVER_RegisterDriver(LPCWSTR Name, PGD_ENABLEDRIVER EnableDriver);
|
||||
PGD_ENABLEDRIVER DRIVER_FindExistingDDIDriver(LPCWSTR Name);
|
||||
PGD_ENABLEDRIVER DRIVER_FindDDIDriver(LPCWSTR Name);
|
||||
BOOL DRIVER_RegisterDriver(LPCWSTR Name, PFN_DrvEnableDriver EnableDriver);
|
||||
PFN_DrvEnableDriver DRIVER_FindExistingDDIDriver(LPCWSTR Name);
|
||||
PFN_DrvEnableDriver DRIVER_FindDDIDriver(LPCWSTR Name);
|
||||
PFILE_OBJECT DRIVER_FindMPDriver(ULONG DisplayNumber);
|
||||
BOOL DRIVER_BuildDDIFunctions(PDRVENABLEDATA DED,
|
||||
PDRIVER_FUNCTIONS DF);
|
||||
|
|
|
@ -35,7 +35,7 @@
|
|||
typedef struct _GRAPHICS_DRIVER
|
||||
{
|
||||
PWSTR Name;
|
||||
PGD_ENABLEDRIVER EnableDriver;
|
||||
PFN_DrvEnableDriver EnableDriver;
|
||||
int ReferenceCount;
|
||||
struct _GRAPHICS_DRIVER *Next;
|
||||
} GRAPHICS_DRIVER, *PGRAPHICS_DRIVER;
|
||||
|
@ -43,7 +43,7 @@ typedef struct _GRAPHICS_DRIVER
|
|||
static PGRAPHICS_DRIVER DriverList;
|
||||
static PGRAPHICS_DRIVER GenericDriver = NULL;
|
||||
|
||||
BOOL DRIVER_RegisterDriver(LPCWSTR Name, PGD_ENABLEDRIVER EnableDriver)
|
||||
BOOL DRIVER_RegisterDriver(LPCWSTR Name, PFN_DrvEnableDriver EnableDriver)
|
||||
{
|
||||
PGRAPHICS_DRIVER Driver;
|
||||
|
||||
|
@ -79,7 +79,7 @@ BOOL DRIVER_RegisterDriver(LPCWSTR Name, PGD_ENABLEDRIVER EnableDriver)
|
|||
return TRUE;
|
||||
}
|
||||
|
||||
PGD_ENABLEDRIVER DRIVER_FindExistingDDIDriver(LPCWSTR Name)
|
||||
PFN_DrvEnableDriver DRIVER_FindExistingDDIDriver(LPCWSTR Name)
|
||||
{
|
||||
GRAPHICS_DRIVER *Driver = DriverList;
|
||||
while (Driver && Name)
|
||||
|
@ -94,11 +94,11 @@ PGD_ENABLEDRIVER DRIVER_FindExistingDDIDriver(LPCWSTR Name)
|
|||
return NULL;
|
||||
}
|
||||
|
||||
PGD_ENABLEDRIVER DRIVER_FindDDIDriver(LPCWSTR Name)
|
||||
PFN_DrvEnableDriver DRIVER_FindDDIDriver(LPCWSTR Name)
|
||||
{
|
||||
static WCHAR DefaultPath[] = L"\\SystemRoot\\System32\\";
|
||||
static WCHAR DefaultExtension[] = L".DLL";
|
||||
PGD_ENABLEDRIVER ExistingDriver;
|
||||
PFN_DrvEnableDriver ExistingDriver;
|
||||
SYSTEM_GDI_DRIVER_INFORMATION GdiDriverInfo;
|
||||
NTSTATUS Status;
|
||||
LPWSTR FullName;
|
||||
|
@ -174,7 +174,7 @@ PGD_ENABLEDRIVER DRIVER_FindDDIDriver(LPCWSTR Name)
|
|||
DRIVER_RegisterDriver( L"DISPLAY", GdiDriverInfo.EntryPoint);
|
||||
DRIVER_RegisterDriver( FullName, GdiDriverInfo.EntryPoint);
|
||||
ExFreePoolWithTag(FullName, TAG_DRIVER);
|
||||
return (PGD_ENABLEDRIVER)GdiDriverInfo.EntryPoint;
|
||||
return (PFN_DrvEnableDriver)GdiDriverInfo.EntryPoint;
|
||||
}
|
||||
|
||||
#define BEGIN_FUNCTION_MAP() \
|
||||
|
|
|
@ -204,7 +204,7 @@ SetupDevMode(PDEVMODEW DevMode, ULONG DisplayNumber)
|
|||
static BOOL FASTCALL
|
||||
IntPrepareDriver()
|
||||
{
|
||||
PGD_ENABLEDRIVER GDEnableDriver;
|
||||
PFN_DrvEnableDriver GDEnableDriver;
|
||||
DRVENABLEDATA DED;
|
||||
UNICODE_STRING DriverFileNames;
|
||||
PWSTR CurrentName;
|
||||
|
@ -326,7 +326,7 @@ IntPrepareDriver()
|
|||
HS_DDI_MAX,
|
||||
PrimarySurface.FillPatterns,
|
||||
sizeof(PrimarySurface.GDIInfo),
|
||||
(ULONG *) &PrimarySurface.GDIInfo,
|
||||
&PrimarySurface.GDIInfo,
|
||||
sizeof(PrimarySurface.DevInfo),
|
||||
&PrimarySurface.DevInfo,
|
||||
NULL,
|
||||
|
@ -353,7 +353,7 @@ IntPrepareDriver()
|
|||
HS_DDI_MAX,
|
||||
PrimarySurface.FillPatterns,
|
||||
sizeof(PrimarySurface.GDIInfo),
|
||||
(ULONG *) &PrimarySurface.GDIInfo,
|
||||
&PrimarySurface.GDIInfo,
|
||||
sizeof(PrimarySurface.DevInfo),
|
||||
&PrimarySurface.DevInfo,
|
||||
NULL,
|
||||
|
@ -1552,8 +1552,8 @@ IntEnumDisplaySettings(
|
|||
CurrentName += wcslen(CurrentName) + 1)
|
||||
{
|
||||
INT i;
|
||||
PGD_ENABLEDRIVER GDEnableDriver;
|
||||
PGD_GETMODES GetModes = NULL;
|
||||
PFN_DrvEnableDriver GDEnableDriver;
|
||||
PFN_DrvGetModes GetModes = NULL;
|
||||
INT SizeNeeded, SizeUsed;
|
||||
|
||||
/* Get the DDI driver's entry point */
|
||||
|
@ -1583,7 +1583,7 @@ IntEnumDisplaySettings(
|
|||
|
||||
if (DrvFn->iFunc == INDEX_DrvGetModes)
|
||||
{
|
||||
GetModes = (PGD_GETMODES)DrvFn->pfn;
|
||||
GetModes = (PFN_DrvGetModes)DrvFn->pfn;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue