mirror of
https://github.com/reactos/reactos.git
synced 2025-08-03 17:45:41 +00:00
Implemented : DxEngLockHdev, DxEngUnlockHdev
Thanks jimtabor for the help with these two. svn path=/trunk/; revision=32564
This commit is contained in:
parent
bf6e811015
commit
93f970da42
2 changed files with 64 additions and 18 deletions
|
@ -87,14 +87,15 @@ BOOLEAN DxEngCleanDC(HDC hdc);
|
||||||
DWORD DxEngGetHdevData(HDEV, DXEGSHDEVDATA);
|
DWORD DxEngGetHdevData(HDEV, DXEGSHDEVDATA);
|
||||||
BOOLEAN DxEngSetHdevData(HDEV, DXEGSHDEVDATA, DWORD);
|
BOOLEAN DxEngSetHdevData(HDEV, DXEGSHDEVDATA, DWORD);
|
||||||
BOOLEAN DxEngIncDispUniq();
|
BOOLEAN DxEngIncDispUniq();
|
||||||
|
BOOLEAN DxEngLockHdev(HDEV hdev);
|
||||||
|
BOOLEAN DxEngUnlockHdev(HDEV hdev);
|
||||||
|
|
||||||
/* prototypes are not done yet, I need gather all my notes
|
/* prototypes are not done yet, I need gather all my notes
|
||||||
* to make them correct
|
* to make them correct
|
||||||
*/
|
*/
|
||||||
DWORD DxEngCreateMemoryDC(DWORD x1);
|
DWORD DxEngCreateMemoryDC(DWORD x1);
|
||||||
DWORD DxEngScreenAccessCheck();
|
DWORD DxEngScreenAccessCheck();
|
||||||
DWORD DxEngLockHdev(DWORD x1);
|
|
||||||
DWORD DxEngUnlockHdev(DWORD x1);
|
|
||||||
DWORD DxEngReferenceHdev(DWORD x1);
|
DWORD DxEngReferenceHdev(DWORD x1);
|
||||||
DWORD DxEngIsHdevLockedByCurrentThread(DWORD x1);
|
DWORD DxEngIsHdevLockedByCurrentThread(DWORD x1);
|
||||||
DWORD DxEngUnreferenceHdev(DWORD x1);
|
DWORD DxEngUnreferenceHdev(DWORD x1);
|
||||||
|
|
|
@ -465,6 +465,67 @@ DxEngIncDispUniq()
|
||||||
return TRUE;
|
return TRUE;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*++
|
||||||
|
* @name DxEngLockHdev
|
||||||
|
* @implemented
|
||||||
|
*
|
||||||
|
* The function DxEngLockHdev lock the internal PDEV
|
||||||
|
*
|
||||||
|
* @param HDEV type
|
||||||
|
* it is a pointer to win32k internal pdev struct known as PGDIDEVICE
|
||||||
|
|
||||||
|
* @return
|
||||||
|
* This function returns TRUE no matter what.
|
||||||
|
*
|
||||||
|
* @remarks.
|
||||||
|
* none
|
||||||
|
*
|
||||||
|
*--*/
|
||||||
|
BOOLEAN
|
||||||
|
DxEngLockHdev(HDEV hDev)
|
||||||
|
{
|
||||||
|
PGDIDEVICE pPDev = (PGDIDEVICE)hDev;
|
||||||
|
PERESOURCE Resource = pPDev->hsemDevLock;
|
||||||
|
|
||||||
|
if (Resource)
|
||||||
|
{
|
||||||
|
KeEnterCriticalRegion();
|
||||||
|
ExAcquireResourceExclusiveLite( Resource , TRUE); // Lock monitor.
|
||||||
|
}
|
||||||
|
return TRUE;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*++
|
||||||
|
* @name DxEngUnlockHdev
|
||||||
|
* @implemented
|
||||||
|
*
|
||||||
|
* The function DxEngUnlockHdev unlock the internal PDEV
|
||||||
|
*
|
||||||
|
* @param HDEV type
|
||||||
|
* it is a pointer to win32k internal pdev struct known as PGDIDEVICE
|
||||||
|
|
||||||
|
* @return
|
||||||
|
* This function returns TRUE no matter what.
|
||||||
|
*
|
||||||
|
* @remarks.
|
||||||
|
* none
|
||||||
|
*
|
||||||
|
*--*/
|
||||||
|
BOOLEAN
|
||||||
|
DxEngUnlockHdev(HDEV hDev)
|
||||||
|
{
|
||||||
|
PGDIDEVICE pPDev = (PGDIDEVICE)hDev;
|
||||||
|
PERESOURCE Resource = pPDev->hsemDevLock;
|
||||||
|
|
||||||
|
if (Resource)
|
||||||
|
{
|
||||||
|
ExReleaseResourceLite( Resource );
|
||||||
|
KeLeaveCriticalRegion();
|
||||||
|
}
|
||||||
|
return TRUE;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
/************************************************************************/
|
/************************************************************************/
|
||||||
/* DxEngNUIsTermSrv */
|
/* DxEngNUIsTermSrv */
|
||||||
/************************************************************************/
|
/************************************************************************/
|
||||||
|
@ -532,23 +593,7 @@ DWORD DxEngScreenAccessCheck()
|
||||||
return FALSE;
|
return FALSE;
|
||||||
}
|
}
|
||||||
|
|
||||||
/************************************************************************/
|
|
||||||
/* DxEngLockHdev */
|
|
||||||
/************************************************************************/
|
|
||||||
DWORD DxEngLockHdev(DWORD x1)
|
|
||||||
{
|
|
||||||
UNIMPLEMENTED;
|
|
||||||
return FALSE;
|
|
||||||
}
|
|
||||||
|
|
||||||
/************************************************************************/
|
|
||||||
/* DxEngUnlockHdev */
|
|
||||||
/************************************************************************/
|
|
||||||
DWORD DxEngUnlockHdev(DWORD x1)
|
|
||||||
{
|
|
||||||
UNIMPLEMENTED;
|
|
||||||
return FALSE;
|
|
||||||
}
|
|
||||||
|
|
||||||
/************************************************************************/
|
/************************************************************************/
|
||||||
/* DxEngReferenceHdev */
|
/* DxEngReferenceHdev */
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue