nl::Weave::Profiles::DataManagement_Current::SubscriptionEngine

#include <src/lib/profiles/data-management/Current/SubscriptionEngine.h>

这是一个单例,用于托管客户端和发布商的所有 WDM Next 订阅。

摘要

构造函数和析构函数

SubscriptionEngine(void)

公共类型

EventCallback)(void *const aAppState, EventID aEvent, const InEventParam &aInParam, OutEventParam &aOutParam) typedef
void(*
SubscriptionEngine 专用回调设置事件返回函数和指向关联状态对象的指针。
EventID 枚举
直接从此组件生成的事件。

公共静态函数

DefaultEventHandler(EventID aEvent, const InEventParam & aInParam, OutEventParam & aOutParam)
void
这是默认事件处理脚本,应用层会针对任何已忽略或无法识别的事件调用它。
GetInstance(void)
检索单例 Subscription Engine。

公共函数

GetExchangeManager(void) const
GetMinEventLogPosition(size_t & outLogPosition) const
从所有有效订阅处理程序中检索事件分流点的最小相对位置。
Init(nl::Weave::WeaveExchangeManager *const apExchangeMgr, void *const aAppState, const EventCallback aEventCallback)
SetEventCallback(void *const aAppState, const EventCallback aEventCallback)
void
SubscriptionEngine 专用回调设置事件返回函数和指向关联状态对象的指针。

联合体

nl::Weave::Profiles::DataManagement_Current::SubscriptionEngine::InEventParam

与直接从此组件生成的事件一起发送的传入参数。

nl::Weave::Profiles::DataManagement_Current::SubscriptionEngine::OutEventParam

随直接从此组件生成的事件一起发送的外发参数。

公共类型

EventCallback

void(* EventCallback)(void *const aAppState, EventID aEvent, const InEventParam &aInParam, OutEventParam &aOutParam)

SubscriptionEngine 专用回调设置事件返回函数和指向关联状态对象的指针。

具体说明
参数
[in] aAppState
指向应用层提供的状态对象的指针
[in] aEvent
事件回调的函数指针
[in] aInParam
对此事件的输入参数的常量引用
[out] aOutParam
对此事件的输出参数的引用

EventID

 EventID

直接从此组件生成的事件。

公共静态函数

DefaultEventHandler

void DefaultEventHandler(
  EventID aEvent,
  const InEventParam & aInParam,
  OutEventParam & aOutParam
)

这是默认事件处理脚本,应用层会针对任何已忽略或无法识别的事件调用它。

具体说明
参数
[in] aEvent
事件回调的函数指针
[in] aInParam
对此事件的输入参数的常量引用
[out] aOutParam
对此事件的输出参数的引用

GetInstance

SubscriptionEngine * GetInstance(
  void
)

检索单例 Subscription Engine。

请注意,此函数应由采用层实现。

具体说明
返回值
指向共享订阅引擎的指针

公共函数

GetExchangeManager

nl::Weave::WeaveExchangeManager * GetExchangeManager(
  void
) const 

GetMinEventLogPosition

WEAVE_ERROR GetMinEventLogPosition(
  size_t & outLogPosition
) const 

从所有有效订阅处理程序中检索事件分流点的最小相对位置。

从所有处于活动状态的订阅处理程序中检索事件分流点的(相对于启动时间)的最小位置。

具体说明
参数
[in,out] outLogPosition
所有活跃订阅处理程序的最小日志分流点。如果没有处于活动状态的订阅处理程序,则该值将保持不变。在初始化订阅处理程序时,日志位置会设置为 0。
返回值
WEAVE_NO_ERROR
无条件

Init

WEAVE_ERROR Init(
  nl::Weave::WeaveExchangeManager *const apExchangeMgr,
  void *const aAppState,
  const EventCallback aEventCallback
)

SetEventCallback

void SetEventCallback(
  void *const aAppState,
  const EventCallback aEventCallback
)

SubscriptionEngine 专用回调设置事件返回函数和指向关联状态对象的指针。

具体说明
参数
[in] aAppState
指向应用层提供的状态对象的指针
[in] aEventCallback
事件回调的函数指针

SubscriptionEngine

 SubscriptionEngine(
  void
)