ReactOS 0.4.16-dev-250-g3ecd236
vddsup.h File Reference
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Functions

VOID VDDCreateUserHook (USHORT DosPDB)
 
VOID VDDTerminateUserHook (USHORT DosPDB)
 
VOID VDDBlockUserHook (VOID)
 
VOID VDDResumeUserHook (VOID)
 
VOID VDDSupInitialize (VOID)
 

Function Documentation

◆ VDDBlockUserHook()

VOID VDDBlockUserHook ( VOID  )

Definition at line 479 of file vddsup.c.

480{
481 PLIST_ENTRY Pointer;
482 PVDD_USER_HANDLERS UserHook;
483
484 /* Call the hooks starting from the most recent ones */
485 for (Pointer = VddUserHooksList.Flink; Pointer != &VddUserHooksList; Pointer = Pointer->Flink)
486 {
487 UserHook = CONTAINING_RECORD(Pointer, VDD_USER_HANDLERS, Entry);
488 if (UserHook->Ublock_Handler) UserHook->Ublock_Handler();
489 }
490}
base of all file and directory entries
Definition: entries.h:83
Definition: typedefs.h:120
struct _LIST_ENTRY * Flink
Definition: typedefs.h:121
PFNVDD_UBLOCK Ublock_Handler
Definition: vddsup.c:40
#define CONTAINING_RECORD(address, type, field)
Definition: typedefs.h:260
static LIST_ENTRY VddUserHooksList
Definition: vddsup.c:56

Referenced by EmulatorPause().

◆ VDDCreateUserHook()

VOID VDDCreateUserHook ( USHORT  DosPDB)

Definition at line 453 of file vddsup.c.

454{
455 PLIST_ENTRY Pointer;
456 PVDD_USER_HANDLERS UserHook;
457
458 /* Call the hooks starting from the most recent ones */
459 for (Pointer = VddUserHooksList.Flink; Pointer != &VddUserHooksList; Pointer = Pointer->Flink)
460 {
461 UserHook = CONTAINING_RECORD(Pointer, VDD_USER_HANDLERS, Entry);
462 if (UserHook->Ucr_Handler) UserHook->Ucr_Handler(DosPDB);
463 }
464}
PFNVDD_UCREATE Ucr_Handler
Definition: vddsup.c:38

Referenced by DosLoadExecutableInternal().

◆ VDDResumeUserHook()

VOID VDDResumeUserHook ( VOID  )

Definition at line 492 of file vddsup.c.

493{
494 PLIST_ENTRY Pointer;
495 PVDD_USER_HANDLERS UserHook;
496
497 /* Call the hooks starting from the most recent ones */
498 for (Pointer = VddUserHooksList.Flink; Pointer != &VddUserHooksList; Pointer = Pointer->Flink)
499 {
500 UserHook = CONTAINING_RECORD(Pointer, VDD_USER_HANDLERS, Entry);
501 if (UserHook->Uresume_Handler) UserHook->Uresume_Handler();
502 }
503}
PFNVDD_URESUME Uresume_Handler
Definition: vddsup.c:41

Referenced by EmulatorResume().

◆ VDDSupInitialize()

VOID VDDSupInitialize ( VOID  )

Definition at line 506 of file vddsup.c.

507{
508 /* Register the 3rd-party VDD BOP Handler */
510
511 /* Load the installable VDDs from the registry */
513}
VOID RegisterBop(BYTE BopCode, EMULATOR_BOP_PROC BopHandler)
Definition: bop.c:29
#define BOP_3RDPARTY
Definition: isvbop.h:30
static BOOL LoadInstallableVDD(VOID)
Definition: vddsup.c:253
static VOID WINAPI ThirdPartyVDDBop(LPWORD Stack)
Definition: vddsup.c:70

Referenced by EmulatorInitialize().

◆ VDDTerminateUserHook()

VOID VDDTerminateUserHook ( USHORT  DosPDB)

Definition at line 466 of file vddsup.c.

467{
468 PLIST_ENTRY Pointer;
469 PVDD_USER_HANDLERS UserHook;
470
471 /* Call the hooks starting from the most recent ones */
472 for (Pointer = VddUserHooksList.Flink; Pointer != &VddUserHooksList; Pointer = Pointer->Flink)
473 {
474 UserHook = CONTAINING_RECORD(Pointer, VDD_USER_HANDLERS, Entry);
475 if (UserHook->Uterm_Handler) UserHook->Uterm_Handler(DosPDB);
476 }
477}
PFNVDD_UTERMINATE Uterm_Handler
Definition: vddsup.c:39

Referenced by DosTerminateProcess().