46 DWORD returnedDataLength;
62 if (EngDeviceIoControl(ppdev->
hDriver,
74 DISPDBG((1,
"DISP vMoveHardwarePointer failed IOCTL_VIDEO_DISABLE_POINTER\n"));
86 if (EngDeviceIoControl(ppdev->
hDriver,
98 DISPDBG((1,
"DISP vMoveHardwarePointer failed IOCTL_VIDEO_SET_POINTER_POSITION\n"));
125 DWORD returnedDataLength;
143 if (EngDeviceIoControl(ppdev->
hDriver,
149 &returnedDataLength))
156 DISPDBG((1,
"DISP bSetHardwarePointerShape failed IOCTL_VIDEO_DISABLE_POINTER\n"));
170 if (EngDeviceIoControl(ppdev->
hDriver,
176 &returnedDataLength)) {
178 DISPDBG((1,
"DISP bSetHardwarePointerShape failed IOCTL_VIDEO_DISABLE_POINTER\n"));
216 DWORD returnedDataLength;
243 pPointerAttributes->Enable = 1;
249 pPointerAttributes->Column = (
SHORT)(
x);
250 pPointerAttributes->Row = (
SHORT)(
y);
252 if ((
x != -1) || (
y != -1)) {
271 if (EngDeviceIoControl(ppdev->
hDriver,
277 &returnedDataLength)) {
279 DISPDBG((1,
"DISP:Failed IOCTL_VIDEO_SET_POINTER_ATTR call\n"));
301 PBYTE pjSrcAnd, pjSrcXor;
302 LONG lDeltaSrc, lDeltaDst;
303 LONG lSrcWidthInBytes;
330 cxSrcBytes = (cxSrc + 7) / 8;
332 if ((lDeltaSrc =
pso->lDelta) < 0)
334 lSrcWidthInBytes = -lDeltaSrc;
336 lSrcWidthInBytes = lDeltaSrc;
346 pjSrcAnd += lSrcWidthInBytes * (cySrc - 1);
353 pjSrcXor = pjSrcAnd + (cySrc * lDeltaSrc);
358 for (
cy = 0;
cy < cySrc; ++
cy)
364 pjSrcAnd += lDeltaSrc;
365 pjSrcXor += lDeltaSrc;
366 pjDstAnd += lDeltaDst;
367 pjDstXor += lDeltaDst;
402 DWORD returnedDataLength;
411 if (EngDeviceIoControl(ppdev->
hDriver,
417 &returnedDataLength))
VIDEO_POINTER_CAPABILITIES PointerCapabilities
#define IOCTL_VIDEO_SET_POINTER_ATTR
#define VIDEO_MODE_COLOR_POINTER
#define IOCTL_VIDEO_QUERY_POINTER_CAPABILITIES
#define UNREFERENCED_PARAMETER(P)
GLint GLint GLint GLint GLint x
#define IOCTL_VIDEO_DISABLE_POINTER
#define SPS_ACCEPT_NOEXCLUDE
#define VIDEO_MODE_MONO_POINTER
NTSTATUS(* NTAPI)(IN PFILE_FULL_EA_INFORMATION EaBuffer, IN ULONG EaLength, OUT PULONG ErrorOffset)
VOID APIENTRY DrvMovePointer(IN SURFOBJ *pso, IN LONG x, IN LONG y, IN RECTL *prcl)
BOOL NTAPI bSetHardwarePointerShape(SURFOBJ *pso, SURFOBJ *psoMask, SURFOBJ *psoColor, XLATEOBJ *pxlo, LONG x, LONG y, FLONG fl)
_In_opt_ SURFOBJ _In_opt_ SURFOBJ _In_ XLATEOBJ _In_ LONG _In_ LONG yHot
BOOL NTAPI bInitPointer(PPDEV ppdev, DEVINFO *pdevinfo)
DWORD cjPointerAttributes
_Out_opt_ int _Out_opt_ int * cy
#define SPS_ANIMATEUPDATE
_In_ HANDLE _In_ SURFOBJ * pso
BOOL NTAPI bCopyMonoPointer(PPDEV ppdev, SURFOBJ *psoMask)
#define RtlFillMemory(Dest, Length, Fill)
_In_opt_ SURFOBJ _In_opt_ SURFOBJ _In_ XLATEOBJ _In_ LONG xHot
BOOL NTAPI bCopyColorPointer(PPDEV ppdev, SURFOBJ *psoMask, SURFOBJ *psoColor, XLATEOBJ *pxlo)
_In_opt_ SURFOBJ _In_opt_ SURFOBJ * psoColor
PVIDEO_POINTER_ATTRIBUTES pPointerAttributes
_In_opt_ SURFOBJ _In_opt_ SURFOBJ * psoMask
GLint GLint GLint GLint GLint GLint y
_In_ ULONG _In_ CLIPOBJ _In_ RECTL * prcl
#define VIDEO_MODE_ASYNC_POINTER
ULONG APIENTRY DrvSetPointerShape(IN SURFOBJ *pso, IN SURFOBJ *psoMask, IN SURFOBJ *psoColor, IN XLATEOBJ *pxlo, IN LONG xHot, IN LONG yHot, IN LONG x, IN LONG y, IN RECTL *prcl, IN FLONG fl)
#define VIDEO_MODE_ANIMATE_UPDATE
#define RtlZeroMemory(Destination, Length)
#define RtlCopyMemory(Destination, Source, Length)
#define VIDEO_MODE_ANIMATE_START
#define IOCTL_VIDEO_SET_POINTER_POSITION
_In_ SURFOBJ _In_ CLIPOBJ _In_opt_ XLATEOBJ * pxlo