reactos/win32ss/gdi/eng/driverobj.h
David Quintana d5e23caf7a Sync with trunk r63430.
svn path=/branches/shell-experiments/; revision=63433
2014-05-24 20:29:19 +00:00

27 lines
697 B
C

#pragma once
/* Object structure */
typedef struct _EDRIVEROBJ
{
BASEOBJECT baseobj;
DRIVEROBJ drvobj;
PVOID reserved;
} EDRIVEROBJ, *PEDRIVEROBJ;
typedef DRIVEROBJ *PDRIVEROBJ;
/* Cleanup function */
VOID NTAPI DRIVEROBJ_vCleanup(PVOID pObject);
#define DRIVEROBJ_AllocObjectWithHandle() ((PEDRIVEROBJ)GDIOBJ_AllocObjWithHandle(GDI_OBJECT_TYPE_DRIVEROBJ, sizeof(EDRIVEROBJ)))
#define DRIVEROBJ_FreeObjectByHandle(hdo) GDIOBJ_FreeObjByHandle((HGDIOBJ)hdo, GDI_OBJECT_TYPE_DRIVEROBJ)
#define DRIVEROBJ_UnlockObject(pdo) GDIOBJ_vUnlockObject((POBJ)pdo)
FORCEINLINE
PEDRIVEROBJ
DRIVEROBJ_TryLockObject(HDRVOBJ hdo)
{
return GDIOBJ_TryLockObject(hdo, GDIObjType_DRVOBJ_TYPE);
}