Открыть главное меню

LdrInitEventHandlersTbl: различия между версиями

(См. также: добавил линк на ldrFindEventHandlerTbl)
(параметры)
Строка 1:Строка 1:
<tt>UINT32 ldrInitEventHandlersTbl( EVENT_HANDLER_ENTRY_T * tbl, UINT32 base );</tt>
+
== Объявление ==
 +
'''<tt>UINT32 ldrInitEventHandlersTbl( EVENT_HANDLER_ENTRY_T * tbl, UINT32 base );</tt>
  
 
== Описание ==
 
== Описание ==
Строка 6:Строка 7:
 
#Подмена STATE_HANDLERS_RESERVED на ивент из выделенной базы (см. [[ldrRequestEventBase]])
 
#Подмена STATE_HANDLERS_RESERVED на ивент из выделенной базы (см. [[ldrRequestEventBase]])
 
#Подмена ID констант на их значения из библиотеки констант (см. [[ldrGetConstVal]])
 
#Подмена ID констант на их значения из библиотеки констант (см. [[ldrGetConstVal]])
 +
 +
== Парамтры ==
 +
#'''const EVENT_HANDLER_ENTRY_T * tbl
 +
#:Указатель на таблицу хандлеров, в которой производится поиск.
 +
#'''UINT32 base
 +
#:Ивент, с которого начнется заполнение таблицы.
  
 
== Результат ==
 
== Результат ==

Версия 15:15, 3 ноября 2009

Объявление

UINT32 ldrInitEventHandlersTbl( EVENT_HANDLER_ENTRY_T * tbl, UINT32 base );

Описание

Функция ElfPack2 для инициализации таблицы обработчиков ивентов (хендлеров). Выполняет две функции:

  1. Подмена STATE_HANDLERS_RESERVED на ивент из выделенной базы (см. ldrRequestEventBase)
  2. Подмена ID констант на их значения из библиотеки констант (см. ldrGetConstVal)

Парамтры

  1. const EVENT_HANDLER_ENTRY_T * tbl
    Указатель на таблицу хандлеров, в которой производится поиск.
  2. UINT32 base
    Ивент, с которого начнется заполнение таблицы.

Результат

  1. UINT32
    Значение следующего свободного ивентов (base + count(STATE_HANDLERS_RESERVED)).

Пример

// получаем базу ивентов
UINT32 ev_base = ldrRequestEventBase();
// используем для заполнения таблицы хендлеров
reserve = ldrInitEventHandlersTbl( any_state_handlers, ev_base );

См. также

ldrRequestEventBase, ldrGetConstVal, ldrFindEventHandlerTbl