Windows NT 4.0 source code leak
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

139 lines
4.1 KiB

/*
** Handler.H
**
** Copyright(C) 1993 Microsoft Corporation.
** All Rights Reserved.
**
** HISTORY:
** Created: 10/05/93 - MarkRi
**
*/
/*
** Prototypes
*/
BOOL LoadTargetDriver( VOID ) ;
VOID FreeTargetDriver( VOID ) ;
BOOL SetTargetAPI( ULONG cj, DRVENABLEDATA *pded ) ;
BOOL REAL_DrvEnableDriver(ULONG iEngineVersion, ULONG cj, DRVENABLEDATA *pded) ;
VOID REAL_DrvDisableDriver() ;
/*
** Manifests
*/
#define DEFAULT_DRIVER_NAME "MSDRVLOG.DLL"
/*
** DrvLog to driver function mapping
*/
typedef struct _drvlog_DRVFN {
ULONG iFunc ;
PFN pfnDrvLog ;
PFN pfnDriver ;
#if DBG
LPSTR pszFuncName ;
#endif
} DRVLOG_DRVFN ;
extern DRVLOG_DRVFN DrvLogFuncMap[] ;
/*
** Easy Access to the DrvLogFuncMap
**
** NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE
**
** The following defines are array indices into DrvLogFuncMap and must be
** be maintained with DrvLogFuncMap defininition from Handler.C
**
** NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE
**/
#define DRVLOG_DrvEnablePDEV 0
#define DRVLOG_DrvCompletePDEV 1
#define DRVLOG_DrvDisablePDEV 2
#define DRVLOG_DrvEnableSurface 3
#define DRVLOG_DrvDisableSurface 4
#define DRVLOG_DrvAssertMode 5
#define DRVLOG_DrvHookDriver 6
#define DRVLOG_DrvResetPDEV 7
#define DRVLOG_DrvRestartPDEV 8
#define DRVLOG_DrvGetResourceId 9
#define DRVLOG_DrvCreateDeviceBitmap 10
#define DRVLOG_DrvDeleteDeviceBitmap 11
#define DRVLOG_DrvRealizeBrush 12
#define DRVLOG_DrvDitherColor 13
#define DRVLOG_DrvStrokePath 14
#define DRVLOG_DrvFillPath 15
#define DRVLOG_DrvStrokeAndFillPath 16
#define DRVLOG_DrvPaint 17
#define DRVLOG_DrvBitBlt 18
#define DRVLOG_DrvCopyBits 19
#define DRVLOG_DrvStretchBlt 20
#define DRVLOG_DrvPlgBlt 21
#define DRVLOG_DrvSetPalette 22
#define DRVLOG_DrvTextOut 23
#define DRVLOG_DrvEscape 24
#define DRVLOG_DrvDrawEscape 25
#define DRVLOG_DrvQueryFont 26
#define DRVLOG_DrvQueryFontTree 27
#define DRVLOG_DrvQueryFontData 28
#define DRVLOG_DrvSetPointerShape 29
#define DRVLOG_DrvMovePointer 30
#define DRVLOG_DrvUNUSED2 31
#define DRVLOG_DrvSendPage 32
#define DRVLOG_DrvStartPage 33
#define DRVLOG_DrvEndDoc 34
#define DRVLOG_DrvStartDoc 35
#define DRVLOG_DrvQueryObjectData 36
#define DRVLOG_DrvGetGlyphMode 37
#define DRVLOG_DrvSynchronize 38
#define DRVLOG_DrvUnhookDriver 39
#define DRVLOG_DrvSaveScreenBits 40
#define DRVLOG_DrvGetModes 41
#define DRVLOG_DrvFree 42
#define DRVLOG_DrvDestroyFont 43
#define DRVLOG_DrvQueryFontCaps 44
#define DRVLOG_DrvLoadFontFile 45
#define DRVLOG_DrvUnloadFontFile 46
#define DRVLOG_DrvFontManagement 47
#define DRVLOG_DrvQueryTrueTypeTable 48
#define DRVLOG_DrvQueryTrueTypeOutline 49
#define DRVLOG_DrvGetTrueTypeFile 50
#define DRVLOG_DrvQueryFontFile 51
#define DRVLOG_UNUSED5 52
#define DRVLOG_DrvQueryAdvanceWidths 53
#define DRVLOG_DrvSetPixelFormat 54
#define DRVLOG_DrvDescribePixelFormat 55
#define DRVLOG_DrvSwapBuffers 56
#define DrvLogFunc(index) (DrvLogFuncMap[index].pfnDrvLog)
#define DriverFunc(index) (DrvLogFuncMap[index].pfnDriver)
/*
** Logging Control
*/
typedef struct _SharedMemory
{
BOOL bLogging ; // Set by DrvLoggingEnable API
} SharedMemory, *PSharedMemory ;
extern PSharedMemory pVars ;
#define DRVIN if( pVars->bLogging ) LogIn
#define DRVOUT if( pVars->bLogging ) LogOut
/*
** Debugging stuff
*/
#if DBG
#define DBGOUT(s) OutputDebugString(s)
#define ENTER(s) OutputDebugString( "Entering "#s"\n" )
#define LEAVE(s) OutputDebugString( "Leaving "#s"\n" )
#else
#define DBGOUT(s)
#define ENTER(s)
#define LEAVE(s)
#endif