/* Create refresh hook event for form which has refresh event or interval. */
VOID CreateRefreshEventForForm(IN FORM_BROWSER_FORM *Form)
/* Create refresh hook event for form which has refresh event or interval. */
VOID CreateRefreshEventForForm(IN FORM_BROWSER_FORM *Form)
{
  EFI_STATUS                       Status;
  EFI_EVENT                        RefreshEvent;
  FORM_BROWSER_REFRESH_EVENT_NODE  *EventNode;
  Status = gBS->CreateEventEx (
                  EVT_NOTIFY_SIGNAL,
                  TPL_CALLBACK,
                  RefreshEventNotifyForForm,
                  Form,
                  &Form->RefreshGuid,
                  &RefreshEvent
                  );
  ASSERT_EFI_ERROR (Status);
  EventNode = AllocateZeroPool (sizeof (FORM_BROWSER_REFRESH_EVENT_NODE));
  ASSERT (EventNode != NULL);
  EventNode->RefreshEvent = RefreshEvent;
  InsertTailList (&mRefreshEventList, &EventNode->Link);
}