4#include "libxr_def.hpp"
5#include "lockfree_list.hpp"
50 void Active(uint32_t event);
81 void Bind(
Event &sources, uint32_t source_event, uint32_t target_event);
事件管理系统,允许基于事件 ID 注册和触发回调函数。 Event management system that allows registration and triggering of callba...
Event()
构造函数,初始化用于存储事件的红黑树。 Constructs an Event object with an empty red-black tree for event storage.
void Bind(Event &sources, uint32_t source_event, uint32_t target_event)
将源事件绑定到当前事件实例中的目标事件。 Binds an event from a source Event instance to a target event in the current ins...
void Active(uint32_t event)
触发与特定事件关联的所有回调函数(非中断上下文)。 Triggers all callbacks associated with a specific event (non-interrupt cont...
void Register(uint32_t event, const Callback &cb)
为特定事件注册回调函数。 Registers a callback function for a specific event.
void ActiveFromCallback(CallbackList list, uint32_t event)
从回调函数中触发与特定事件关联的所有回调函数。 Triggers all callbacks associated with a specific event (interrupt context).
CallbackList GetList(uint32_t event)
获取指定事件的回调链表指针(必须在非中断上下文中调用)。 Returns the callback list pointer for the given event (must be called ou...
链表实现,用于存储和管理数据节点。 A linked list implementation for storing and managing data nodes.
红黑树实现,支持泛型键和值,并提供线程安全操作 (Red-Black Tree implementation supporting generic keys and values with thread...
用于存储事件回调的数据结构。 Data structure for storing event callbacks.
Callback cb
关联该事件的回调函数。 Callback function associated with this event.
uint32_t event
与该回调关联的事件 ID。 Event ID associated with this callback.