Files
2025-03-13 16:17:53 +01:00

92 lines
2.0 KiB
Python

import recipe_idphooks
import recipe_idbhooks
import recipe_dbghooks
import recipe_uihooks
import recipe_viewhooks
import recipe_hexrays
class hooks_info_t(object):
def __init__(
self,
class_name,
toplevel_xml_fname,
enum_name,
discard_prefixes,
discard_doc,
strip_prefixes,
recipe_module):
self.class_name = class_name
self.toplevel_xml_fname = toplevel_xml_fname
self.enum_name = enum_name
self.discard_prefixes = discard_prefixes or ()
self.discard_doc = discard_doc
self.strip_prefixes = strip_prefixes or []
self.recipe_module = recipe_module
hooks = {
"ida_idp" : [
hooks_info_t(
"IDP_Hooks",
"structprocessor__t.xml",
"event_t",
None,
None,
None,
recipe_idphooks
),
hooks_info_t(
"IDB_Hooks",
"namespaceidb__event.xml",
"event_code_t",
None,
None,
None,
recipe_idbhooks
),
],
"ida_dbg" : [
hooks_info_t(
"DBG_Hooks",
"dbg_8hpp.xml",
"dbg_notification_t",
None,
None,
None,
recipe_dbghooks
),
],
"ida_kernwin" : [
hooks_info_t(
"UI_Hooks",
"kernwin_8hpp.xml",
"ui_notification_t",
("ui_dbg_", "ui_obsolete"),
"ui:",
["ui_"],
recipe_uihooks
),
hooks_info_t(
"View_Hooks",
"kernwin_8hpp.xml",
"view_notification_t",
None,
None,
None,
recipe_viewhooks
),
],
"ida_hexrays" : [
hooks_info_t(
"Hexrays_Hooks",
"hexrays_8hpp.xml",
"hexrays_event_t",
None,
None,
["hxe_", "lxe_"],
recipe_hexrays
)
],
}