BOOL Enabled;
SIZEL Size;
POINTL HotSpot;
- XLATEOBJ *XlateObject;
SURFACE *psurfColor;
SURFACE *psurfMask;
SURFACE *psurfSave;
DEVINFO devinfo;
GDIINFO gdiinfo;
PSURFACE pSurface; /* SURFACE for this device. */
-// HANDLE hSpooler; /* Handle to spooler, if spooler dev driver. */
+ HANDLE hSpooler; /* Handle to spooler, if spooler dev driver, DeviceObject if graphics device */
// PVOID pDesktopId;
PGRAPHICS_DEVICE pGraphicsDevice;
POINTL ptlOrigion;
PPDEVOBJ
NTAPI
-EngpGetPDEV(PUNICODE_STRING pustrDevice);
+EngpGetPDEV(
+ _In_opt_ PUNICODE_STRING pustrDevice);
VOID
NTAPI
-PDEVOBJ_vRelease(PPDEVOBJ ppdev);
+PDEVOBJ_vRelease(
+ _Inout_ PPDEVOBJ ppdev);
PSURFACE
NTAPI
PDEVOBJ_pSurface(
- PPDEVOBJ ppdev);
+ _In_ PPDEVOBJ ppdev);
VOID
NTAPI
PDEVOBJ_vGetDeviceCaps(
- PPDEVOBJ ppdev,
- PDEVCAPS pDevCaps);
+ _In_ PPDEVOBJ ppdev,
+ _Out_ PDEVCAPS pDevCaps);
INIT_FUNCTION
NTSTATUS
PSIZEL
FASTCALL
-PDEVOBJ_sizl(PPDEVOBJ, PSIZEL);
+PDEVOBJ_sizl(
+ _In_ PPDEVOBJ ppdev,
+ _Out_ PSIZEL psizl);
+
+BOOL
+NTAPI
+PDEVOBJ_bSwitchMode(
+ PPDEVOBJ ppdev,
+ PDEVMODEW pdm);
+
+PDEVMODEW
+NTAPI
+PDEVOBJ_pdmMatchDevMode(
+ PPDEVOBJ ppdev,
+ PDEVMODEW pdm);
+
+FORCEINLINE
+VOID
+PDEVOBJ_vReference(PPDEVOBJ ppdev)
+{
+ InterlockedIncrement(&ppdev->cPdevRefs);
+}
#endif /* !__WIN32K_PDEVOBJ_H */