VirtualBox

Changeset 33167 in vbox for trunk/include


Ignore:
Timestamp:
Oct 15, 2010 6:16:59 PM (14 years ago)
Author:
vboxsync
Message:

SUPDrv,SUPLib: Expose the high resolution event semaphore APIs.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/include/VBox/sup.h

    r32358 r33167  
    385385SUPDECL(int) SUPSemEventWaitNoResume(PSUPDRVSESSION pSession, SUPSEMEVENT hEvent, uint32_t cMillies);
    386386
     387/**
     388 * Waits on a single release event semaphore, interruptible.
     389 *
     390 * @returns VBox status code.
     391 * @param   pSession            The session handle of the caller.
     392 * @param   hEvent              The semaphore handle.
     393 * @param   uNsTimeout          The deadline given on the RTTimeNanoTS() clock.
     394 */
     395SUPDECL(int) SUPSemEventWaitNsAbsIntr(PSUPDRVSESSION pSession, SUPSEMEVENT hEvent, uint64_t uNsTimeout);
     396
     397/**
     398 * Waits on a single release event semaphore, interruptible.
     399 *
     400 * @returns VBox status code.
     401 * @param   pSession            The session handle of the caller.
     402 * @param   hEvent              The semaphore handle.
     403 * @param   cNsTimeout          The number of nanoseconds to wait.
     404 */
     405SUPDECL(int) SUPSemEventWaitNsRelIntr(PSUPDRVSESSION pSession, SUPSEMEVENT hEvent, uint64_t cNsTimeout);
     406
     407/**
     408 * Gets the best timeout resolution that SUPSemEventWaitNsAbsIntr and
     409 * SUPSemEventWaitNsAbsIntr can do.
     410 *
     411 * @returns The resolution in nanoseconds.
     412 * @param   pSession            The session handle of the caller.
     413 */
     414SUPDECL(uint32_t) SUPSemEventGetResolution(PSUPDRVSESSION pSession);
     415
    387416
    388417/** Multiple release event semaphore handle. Ring-0 / ring-3. */
     
    455484 */
    456485SUPDECL(int) SUPSemEventMultiWaitNoResume(PSUPDRVSESSION pSession, SUPSEMEVENTMULTI hEventMulti, uint32_t cMillies);
     486
     487/**
     488 * Waits on a multiple release event semaphore, interruptible.
     489 *
     490 * @returns VBox status code.
     491 * @param   pSession            The session handle of the caller.
     492 * @param   hEventMulti         The semaphore handle.
     493 * @param   uNsTimeout          The deadline given on the RTTimeNanoTS() clock.
     494 */
     495SUPDECL(int) SUPSemEventMultiWaitNsAbsIntr(PSUPDRVSESSION pSession, SUPSEMEVENTMULTI hEventMulti, uint64_t uNsTimeout);
     496
     497/**
     498 * Waits on a multiple release event semaphore, interruptible.
     499 *
     500 * @returns VBox status code.
     501 * @param   pSession            The session handle of the caller.
     502 * @param   hEventMulti         The semaphore handle.
     503 * @param   cNsTimeout          The number of nanoseconds to wait.
     504 */
     505SUPDECL(int) SUPSemEventMultiWaitNsRelIntr(PSUPDRVSESSION pSession, SUPSEMEVENTMULTI hEventMulti, uint64_t cNsTimeout);
     506
     507/**
     508 * Gets the best timeout resolution that SUPSemEventMultiWaitNsAbsIntr and
     509 * SUPSemEventMultiWaitNsRelIntr can do.
     510 *
     511 * @returns The resolution in nanoseconds.
     512 * @param   pSession            The session handle of the caller.
     513 */
     514SUPDECL(uint32_t) SUPSemEventMultiGetResolution(PSUPDRVSESSION pSession);
    457515
    458516
Note: See TracChangeset for help on using the changeset viewer.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette