nl::Weave::Binding

#include <src/lib/core/WeaveBinding.h>

לוכד את היעד המיועד של תקשורת Weave ומידע על הגדרות אישיות.

סיכום

אובייקט Binding מזהה את היעד של תקשורת Weave (שנקרא גם "peer"), ביחד עם קבוצה של פרמטרים של הגדרות המתארים כיצד תתרחש התקשורת עם הרשת השכנה. הקישורים אינם תלויים בפרוטוקול האפליקציה המדובר בין שני הצדדים. לכן, הם מתעדים את ה "מי" וה "איך" של התקשורת, אבל לא את ה "מה".

הגדרה

אפליקציות צריכות להגדיר קישור עם פרמטרים שספציפיים לסוג של ערוץ התקשורת הרצוי. Binding מספק תמיכה למגוון העברות רשת, כולל TCP, UDP, UDP עם Weave Trusted Messaging ו-Weave over BLE (WoBLE). האפליקציות יכולות גם לבקש שימוש במנגנוני אבטחה ספציפיים כדי להגן על הודעות שנשלחות בין הצדדים. המפתחות האלה כוללים סשנים מסוג CASE ו-PASE, ומפתחות של קבוצות אפליקציות. הממשק להגדרת קישור משתמש בסגנון API מוצהר שמאפשר לאפליקציות לציין את הדרישות שלהן לתקשורת בשפה פשוטה.

אפשר לקרוא פרטים נוספים במסמכי התיעוד בנושא Binding::Configuration.

הכנה

לפני האינטראקציה, הקישור צריך להיות "מוכן". הכנת קישור כוללת קביעת המצב הנדרש כדי שתתקיים תקשורת. למשל: זיהוי כתובת הרשת של הצד השני, יצירת חיבור לרשת וניהול משא ומתן על מפתחות אבטחה. לאחר ההגדרה באפליקציה, הקישור מבצע את כל השלבים הנדרשים כדי להתכונן לתקשורת, וכשהתהליך יושלם, הוא יחזור לאפליקציה. באופן הזה, Bindings מסתירים את המכניקה של התקשורת ומאפשרים לאפליקציות להתמקד באינטראקציות ברמות הגבוהות.

תקשורת

אחרי הכנת קישור הוא יהיה מוכן לשימוש. במצב הזה, אפליקציות (או בדרך כלל קוד של שכבת פרוטוקול שפועל מטעם אפליקציה) מבקשות את הקישור כדי להקצות הקשר ל-Weave Exchange. הקשר החילופין שמתקבל מוגדר מראש לתקשורת, ומאפשר לאפליקציה ליזום באופן מיידי חילופי Weave עם העמית. האפליקציה יכולה להמשיך לבקש הקשרים של החלפה מהקישור עד לסגירת הקישור, או עד שערוץ כלשהו יסיים את ערוץ התקשורת המקורי, למשל כשל ברשת.

שינויים במצב מחייב

במהלך השימוש, קישור יספק לאפליקציה אירועי API כדי ליידע אותה על שינויים במצב הקישור. לדוגמה, כשההכנה תסתיים בהצלחה, האפליקציה תקבל אירוע שמודיע לה שהקישור מוכן לשימוש. באופן דומה, אם ערוץ התקשורת הבסיסי נכשל, יישלח לאפליקציה אירוע עם הודעה על כך שהקישור כבר לא במצב מוכן.

אירועי API מועברים לאפליקציה באמצעות פונקציית קריאה חוזרת של אירועים, שמסופקת כאשר מוקצית ה-Binding.

קישור לכל החיים

קישור נספרים כדי לאפשר שימוש משותף בין רכיבי תוכנה מרובים. כשמקצה קישור, נוצרת הפניה אחת לקישור. האפליקציה אחראית להפיץ את ההפניה הזו בשלב כלשהו בעתיד, כך שהקישור יהיה בחינם לשימוש חוזר בעתיד.

כשאפליקציה מסיימת את פונקציית Binding היא עשויה להפעיל את Close() בקישור. הפעולה הזו מבטלת את ההפניה של האפליקציה לקישור וחוסמת כל שליחה נוספת של אירועי API. כשמתפרסמים ההפניה האחרונה של קישור, הוא נסגר באופן אוטומטי.

סוגים ציבוריים

@23{
  kGetPeerDescription_MaxLength = nl::Weave::kWeavePeerDescription_MaxLength
}
טיפוסים בני מנייה (enum)
EventCallback)(void *apAppState, EventType aEvent, const InEventParam &aInParam, OutEventParam &aOutParam) typedef
void(*
EventType{
  kEvent_ConnectionEstablished = 1,
  kEvent_BindingReady = 2,
  kEvent_PrepareFailed = 3,
  kEvent_BindingFailed = 4,
  kEvent_PrepareRequested = 5,
  kEvent_PASEParametersRequested = 6,
  kEvent_TAKEParametersRequested = 7,
  kEvent_DefaultCheck = 100
}
טיפוסים בני מנייה (enum)
State טיפוסים בני מנייה (enum)

מאפיינים ציבוריים

AppState
void *

תפקידים ציבוריים

AddRef(void)
void
שמור הפניה לאובייקט המקשר.
AdjustResponseTimeout(ExchangeContext *apExchangeContext) const
כדי לשנות את הזמן הקצוב לתגובה, יש להגדיר מחדש הקשר קיים ב-Exchange.
AllocateRightSizedBuffer(PacketBuffer *& buf, const uint32_t desiredSize, const uint32_t minSize, uint32_t & outMaxPayloadSize)
BeginConfiguration()
הוא תהליך ההגדרה של הקישור.
CanBePrepared(void) const
bool
Close(void)
void
סוגרים את אובייקט הקישור ומשחררים הפניה.
GetConnection() const
מקבלים את אובייקט החיבור של Weave שמשויך לקישור.
GetDefaultResponseTimeout() const
uint32_t
הגדרת ברירת המחדל של הזמן הקצוב לתפוגה של תגובת Exchange בתקשורת עם העמית.
GetDefaultWRMPConfig(void) const
const WRMPConfig &
קבלת הגדרת ברירת המחדל של WRMP לשימוש בתקשורת עם אפליקציה להשוואה.
GetEncryptionType(void) const
uint8_t
אחזור הסוג של הצפנת ההודעות שישמש להצפנת הודעות מהשותף השכן או ממנו.
GetEventCallback() const
EventCallback
מקבלים את הפונקציה שתתבצע קריאה כשמתרחש אירוע API עבור ה-Binding.
GetExchangeManager() const
GetKeyId(void) const
uint32_t
אחזור המזהה של המפתח להצפנת הודעות, שבו ייעשה שימוש להצפנת הודעות מהשותף השכן או ממנו.
GetLogId(void) const
uint16_t
צריך לקבל מזהה ייחודי לקישור.
GetMaxWeavePayloadSize(const System::PacketBuffer *msgBuf)
uint32_t
משיגים את גודל המטען הייעודי (payload) המקסימלי ב-Weave, שיכול להכיל את ה-PacketBuffer שסופק.
GetPeerDescription(char *buf, uint32_t bufSize) const
void
הפונקציה יוצרת מחרוזת שמתארת את הצומת של העמיתים ואת פרטי הכתובת / החיבור שמשויכים אליו.
GetPeerIPAddress(nl::Inet::IPAddress & address, uint16_t & port, InterfaceId & interfaceId) const
void
אחזור פרטי כתובת ה-IP של העמית, אם ניתן.
GetPeerNodeId(void) const
uint64_t
אחזור מזהה הצומת של העמית המקשר.
GetProtocolLayerCallback(EventCallback & callback, void *& state) const
void
GetState(void) const
State
אחזור המצב הנוכחי של הקישור.
IsAuthenticMessageFromPeer(const WeaveMessageInfo *msgInfo)
bool
קבע אם הודעה נכנסת מסוימת היא מהעמית שהוגדר והיא מאומתת כהלכה.
IsConnectionTransport() const
bool
IsPreparing(void) const
bool
IsReady(void) const
bool
IsUDPTransport() const
bool
IsUnreliableUDPTransport() const
bool
IsWRMTransport() const
bool
NewExchangeContext(ExchangeContext *& appExchangeContext)
הקצאת הקשר Exchange חדש לתקשורת עם העמית שהוא היעד של הקישור.
Release(void)
void
משחררים הפניה לאובייקט הקישור.
RequestPrepare()
צריך לבקש מהאפליקציה להגדיר ולהכין את הקישור.
Reset(void)
void
איפוס הקישור למצב שלא הוגדר.
SetDefaultResponseTimeout(uint32_t msec)
void
הגדרת הזמן הקצוב לתפוגה של תגובת Exchange כברירת מחדל לשימוש במהלך תקשורת עם העמית.
SetDefaultWRMPConfig(const WRMPConfig & wrmpConfig)
void
הגדרת ברירת המחדל של WRMP לשימוש בתקשורת עם אפליקציה להשוואה.
SetEventCallback(EventCallback aEventCallback)
void
מגדירים קריאה לפונקציה המוגדרת באפליקציה כאשר מתרחש אירוע API עבור ה-Binding.
SetProtocolLayerCallback(EventCallback callback, void *state)
void
מגדירים פונקציית קריאה חוזרת של אירוע לקוד של שכבת הפרוטוקול באמצעות הפונקציה Binding מטעם אפליקציה.

פונקציות סטטיות ציבוריות

DefaultEventHandler(void *apAppState, EventType aEvent, const InEventParam & aInParam, OutEventParam & aOutParam)
void
handler שמוגדר כברירת מחדל לאירועי API מקשרים.

מחלקות

nl::Weave::Binding::Configuration

הממשק הזה מספק ממשק בסגנון ההצהרה להגדרה והכנה של אובייקט Binding.

מבנים

nl::Weave::Binding::InEventParam

מזינים פרמטרים לאירוע API Binding.

nl::Weave::Binding::OutEventParam

פרמטרים של פלט לאירוע API Binding.

סוגים ציבוריים

@23

 @23
תכונות
kGetPeerDescription_MaxLength

אורך מחרוזת מקסימלי (כולל תו NUL) המוחזר על ידי GetPeerDescription().

EventCallback

void(* EventCallback)(void *apAppState, EventType aEvent, const InEventParam &aInParam, OutEventParam &aOutParam)

EventType

 EventType
תכונות
kEvent_BindingFailed

הקישור נכשל ולא ניתן להשתמש בו יותר כדי לתקשר עם אפליקציה להשוואה.

kEvent_BindingReady

פעולת ההכנה לקישור הצליחה ועכשיו אפשר להשתמש בקישור כדי לתקשר עם האפליקציה להשוואה.

kEvent_ConnectionEstablished

החיבור ל-Weave המבוקש נוצר.

kEvent_DefaultCheck

משמש לאימות ברירת המחדל של טיפול באירועים באפליקציה.

kEvent_PASEParametersRequested

האפליקציה צריכה לספק פרמטרים לשימוש במהלך ביסוס של פעילות PASE.

kEvent_PrepareFailed

פעולת ההכנה לקישור נכשלה.

kEvent_PrepareRequested

האפליקציה מתבקשת להגדיר ולהכין את הקישור לשימוש בסטאק הרשת.

kEvent_TAKEParametersRequested

האפליקציה צריכה לספק פרמטרים לשימוש במהלך יצירת הסשן של Takeout.

ארץ

 State

מאפיינים ציבוריים

AppState

void * AppState

תפקידים ציבוריים

AddRef

void AddRef(
  void
)

שמור הפניה לאובייקט המקשר.

AdjustResponseTimeout

WEAVE_ERROR AdjustResponseTimeout(
  ExchangeContext *apExchangeContext
) const 

כדי לשנות את הזמן הקצוב לתגובה, יש להגדיר מחדש הקשר קיים ב-Exchange.

פרטים
פרמטרים
[in] apExchangeContext
מצביע לאובייקט Exchange Context שיוגדר מחדש

AllocateRightSizedBuffer

WEAVE_ERROR AllocateRightSizedBuffer(
  PacketBuffer *& buf,
  const uint32_t desiredSize,
  const uint32_t minSize,
  uint32_t & outMaxPayloadSize
)

BeginConfiguration

Configuration BeginConfiguration()

הוא תהליך ההגדרה של הקישור.

אפליקציות צריכות לקרוא ל-BeginConfiguration() כדי להגדיר את ה-Binding לפני שמכינים אותו לתקשורת עם אפליקציה להשוואה.

פרטים
החזרות
אובייקט Binding::Configuration שיכול לשמש להגדרת הקישור.

CanBePrepared

bool CanBePrepared(
  void
) const 

סגירה

void Close(
  void
)

סוגרים את אובייקט הקישור ומשחררים הפניה.

כשמתבצעת קריאה, השיטה הזו גורמת לקישור להיכנס למצב 'סגור'. כל פעולות הכנה בתהליך הקישור יבוטלו וכל משאבי התקשורת החיצוניים ששמורים בקישור ישוחררו.

הקריאה ל-Close() מקטינה את מספר ההפניות המשויכות לקישור, ומשחררת את האובייקט אם מספר קובצי העזר הופך לאפס.

GetConnection

WeaveConnection * GetConnection() const 

מקבלים את אובייקט החיבור של Weave שמשויך לקישור.

פרטים
החזרות
מצביע לאובייקט WeaveConnection, או NULL אם אין חיבור שמשויך לקישור.

GetDefaultResponseTimeout

uint32_t GetDefaultResponseTimeout() const 

הגדרת ברירת המחדל של הזמן הקצוב לתפוגה של תגובת Exchange בתקשורת עם העמית.

פרטים
החזרות
הזמן הקצוב לתגובה באלפיות השנייה

GetDefaultWRMPConfig

const WRMPConfig & GetDefaultWRMPConfig(
  void
) const 

קבלת הגדרת ברירת המחדל של WRMP לשימוש בתקשורת עם אפליקציה להשוואה.

פרטים
החזרות
הפניה למבנה WRMPConfig שמכיל את ערכי ברירת המחדל של ההגדרות.

GetEncryptionType

uint8_t GetEncryptionType(
  void
) const 

אחזור הסוג של הצפנת ההודעות שישמש להצפנת הודעות מהשותף השכן או ממנו.

GetEventCallback

EventCallback GetEventCallback() const 

מקבלים את הפונקציה שתתבצע קריאה כשמתרחש אירוע API עבור ה-Binding.

פרטים
החזרות
מצביע על פונקציית הקריאה החוזרת.

GetExchangeManager

WeaveExchangeManager * GetExchangeManager() const 

GetKeyId

uint32_t GetKeyId(
  void
) const 

אחזור המזהה של המפתח להצפנת הודעות, שבו ייעשה שימוש להצפנת הודעות מהשותף השכן או ממנו.

GetLogId

uint16_t GetLogId(
  void
) const 

צריך לקבל מזהה ייחודי לקישור.

GetMaxWeavePayloadSize

uint32_t GetMaxWeavePayloadSize(
  const System::PacketBuffer *msgBuf
)

משיגים את גודל המטען הייעודי (payload) המקסימלי ב-Weave, שיכול להכיל את ה-PacketBuffer שסופק.

עבור UDP, כולל UDP עם WRM, גודל המטען הייעודי המקסימלי שמוחזר יבטיח שההודעה שמתקבלת ב-Weave לא תעבור את ה-UDP MTU שהוגדר.

בנוסף, השיטה הזו תבטיח שהמטען הייעודי (payload) של Weave לא ימלא את ה-PacketBuffer שסופק.

פרטים
פרמטרים
[in] msgBuf
מצביע אל ה-PacketBuffer שאליו ייכתב המטען הייעודי (payload) של ההודעה.
החזרות
גודל המטען הייעודי (payload) המקסימלי ב-Weave.

GetPeerDescription

void GetPeerDescription(
  char *buf,
  uint32_t bufSize
) const 

הפונקציה יוצרת מחרוזת שמתארת את הצומת של העמיתים ואת פרטי הכתובת / החיבור שמשויכים אליו.

פרטים
פרמטרים
[in] buf
מצביע למאגר נתונים זמני שבו יש לכתוב את המחרוזת. המאגר הזמני צריך להיות גדול לפחות מ-kGetPeerDescription_MaxLength. אם מוקצה מאגר נתונים זמני קטן יותר, המחרוזת תיחתך להתאמה. הפלט יכלול תו סיום NUL בכל המקרים.
[in] bufSize
גודל מאגר הנתונים הזמני שאליו מפנה מאגר הנתונים הזמני.

GetPeerIPAddress

void GetPeerIPAddress(
  nl::Inet::IPAddress & address,
  uint16_t & port,
  InterfaceId & interfaceId
) const 

אחזור פרטי כתובת ה-IP של העמית, אם ניתן.

הזמינות של פרטי כתובת ה-IP של הקישור תלויה במצב ובהגדרה של הקישור. פרטי כתובת ה-IP זמינים רק בעת שימוש בהעברה מבוססת IP (TCP , UDP או UDP עם WRMP). לפני תחילת ההכנה, פרטי הכתובת זמינים רק אם הם הוגדרו במפורש על ידי האפליקציה במהלך ההגדרה. בשלב ההכנה, פרטי הכתובת זמינים בסיום הכנת הכתובת (לדוגמה, לאחר סיום פענוח ה-DNS). אחרי שפעולת הקישור מוכנה, פרטי הכתובת יהיו זמינים עד שהקישור יאופס.

פרטים
פרמטרים
[out] address
הפניה לאובייקט IPAddress שיקבל את כתובת ה-IP של העמית. אם פרטי כתובת ה-IP של העמית לא זמינים, הערך הזה יוגדר כ-IPAddress::Any.
[out] port
הפניה למספר שלם שיקבל את מספר היציאה של העמית. אם פרטי כתובת ה-IP של האפליקציה להשוואה לא זמינים, הערך הזה לא מוגדר.
[out] interfaceId
הפניה למספר שלם שיקבל את המזהה של ממשק הרשת שדרכו ניתן להגיע לעמית. אם פרטי כתובת ה-IP של האפליקציה להשוואה לא זמינים, הערך הזה לא מוגדר.

GetPeerNodeId

uint64_t GetPeerNodeId(
  void
) const 

אחזור מזהה הצומת של העמית המקשר.

חוקי רק לאחר הכנת אובייקט הקישור.

פרטים
החזרות
מזהה צומת Weave של העמית

GetProtocolLayerCallback

void GetProtocolLayerCallback(
  EventCallback & callback,
  void *& state
) const 

GetState

State GetState(
  void
) const 

אחזור המצב הנוכחי של הקישור.

פרטים
החזרות
מצב הקישור.

IsAuthenticMessageFromPeer

bool IsAuthenticMessageFromPeer(
  const WeaveMessageInfo *msgInfo
)

קבע אם הודעה נכנסת מסוימת היא מהעמית שהוגדר והיא מאומתת כהלכה.

השיטה הזו מאשרת את הפרטים הבאים לגבי ההודעה הנתונה:

  • ההודעה הגיעה מצומת העמית של הקישור
  • ההודעה התקבלה באמצעות אותו סוג העברה כמו הקישור. אם ההודעה התקבלה בחיבור, השיטה גם מאשרת שההודעה התקבלה בחיבור המדויק המשויך לקישור.
  • מפתח ההצפנה והסוג המשמשים להצפנת ההודעה תואמים לאלו שהוגדרו בקישור. בקישורים שהוגדרו ללא שימוש באבטחה, השיטה מאשרת שההודעה הנכנסת לא מוצפנת.

אפשר להשתמש בשיטה הזו בפרוטוקולים כמו WDM, שבהם רשתות שכנות יכולות ליזום באופן ספונטני חילופים חזרה לצומת המקומי אחרי החלפה ראשונית מהצומת לעמית. במקרים כאלה, השיטה מאפשרת לצומת המקומי לאשר שההודעה הנכנסת הלא רצויה נשלחה על ידי העמית המשויך. (כמובן שבקישורים שהוגדרו ללא שימוש בהצפנת הודעות, הטענה הזו לא מספקת ערך מבחינת האבטחה. הוא רק מוודא שמזהה הצומת של השולח וסוגי ההעברה תואמים).

שימו לב שאם הקישור לא במצב 'מוכן', השיטה הזו תמיד תחזיר FALSE.

פרטים
פרמטרים
[in] msgInfo
פרטי הודעת Weave עבור ההודעה הנכנסת.
החזרות
הערך הוא True אם ההודעה היא אותנטית מהעמיתים.

IsConnectionTransport

bool IsConnectionTransport() const 

IsPreparing

bool IsPreparing(
  void
) const 

פרטים
החזרות
True אם מתבצעת הכנה של הקישור.

IsReady

bool IsReady(
  void
) const 

פרטים
החזרות
True אם הקישור במצב 'מוכן'.

IsUDPTransport

bool IsUDPTransport() const 

IsUnreliableUDPTransport

bool IsUnreliableUDPTransport() const 

IsWRMTransport

bool IsWRMTransport() const 

NewExchangeContext

WEAVE_ERROR NewExchangeContext(
  ExchangeContext *& appExchangeContext
)

הקצאת הקשר Exchange חדש לתקשורת עם העמית שהוא היעד של הקישור.

פרטים
פרמטרים
[out] appExchangeContext
הפניה למצביע שיקבל את האובייקט החדש של Exchange Context. במקרה שהשיטה תיכשל, הסמן יוגדר כ-NULL.
ערכים מוחזרים
WEAVE_NO_ERROR
ההקשר של חילופי ההודעות הוקצה בהצלחה.
WEAVE_ERROR_NO_MEMORY
אם לא היה זיכרון זמין כדי להקצות את ההקשר של חילופי ההודעות.
WEAVE_ERROR_INCORRECT_STATE
אם הקישור לא במצב 'מוכן'.
other
שגיאות אחרות שקשורות להגדרת ההקשר של Exchange על סמך הגדרת הקישור.

פריט תוכן

void Release(
  void
)

משחררים הפניה לאובייקט הקישור.

אם אין יותר הפניות לאובייקט הקישור, הקישור נסגר ומשתחרר.

RequestPrepare

WEAVE_ERROR RequestPrepare()

צריך לבקש מהאפליקציה להגדיר ולהכין את הקישור.

קוד של שכבת פרוטוקול יכול להשתמש בשיטה הזו בקישור שלא הוגדר או נכשל, כדי להפעיל אירוע לאפליקציה (kEvent_PrepareRequested) ולבקש ממנה להגדיר ולהכין את הקישור לשימוש.

אפשר להפעיל את השיטה הזו רק בקישורים שנמצאים במצב 'לא מוגדר' או 'נכשל'.

אם האפליקציה לא תומכת בהגדרה/הכנה של קישורים על פי דרישה, השיטה תיכשל לאחר WEAVE_ERROR_NOT_IMPLEMENTED.

איפוס

void Reset(
  void
)

איפוס הקישור למצב שלא הוגדר.

לאחר הקריאה ל-Reset(), כל פעולות ההכנה שמתבצעות בתהליך הקישור מתבטלות וכל משאבי התקשורת החיצוניים ששמורים בקישור משוחררים. Reset() מעביר את הקישור למצב 'לא מוגדר'. אחרי זה אפשר להגדיר אותו ולהכין אותו מחדש.

Reset() לא משנה את מספר קובצי העזר של הקישור.

SetDefaultResponseTimeout

void SetDefaultResponseTimeout(
  uint32_t msec
)

הגדרת הזמן הקצוב לתפוגה של תגובת Exchange כברירת מחדל לשימוש במהלך תקשורת עם העמית.

פרטים
פרמטרים
[in] timeout
הזמן הקצוב לתגובה החדשה באלפיות השנייה

SetDefaultWRMPConfig

void SetDefaultWRMPConfig(
  const WRMPConfig & wrmpConfig
)

הגדרת ברירת המחדל של WRMP לשימוש בתקשורת עם אפליקציה להשוואה.

פרטים
פרמטרים
[in] aWRMPConfig
הפניה למבנה WRMPConfig שמכיל את הגדרות ברירת המחדל החדשות.

SetEventCallback

void SetEventCallback(
  EventCallback aEventCallback
)

מגדירים קריאה לפונקציה המוגדרת באפליקציה כאשר מתרחש אירוע API עבור ה-Binding.

פרטים
פרמטרים
[in] aEventCallback
מצביע על פונקציית הקריאה החוזרת.

SetProtocolLayerCallback

void SetProtocolLayerCallback(
  EventCallback callback,
  void *state
)

מגדירים פונקציית קריאה חוזרת של אירוע לקוד של שכבת הפרוטוקול באמצעות הפונקציה Binding מטעם אפליקציה.

הקריאה לפונקציה הזו תתבצע בנוסף לפונקציית הקריאה החוזרת (callback) שהוגדרה על ידי האפליקציה כשמתרחשים אירועי API עבור הקישור.

פרטים
פרמטרים
[in] callback
מצביע על פונקציית הקריאה החוזרת.
[in] state
מצביע לאובייקט מצב שיסופק לקוד של שכבת הפרוטוקול כשמתרחשת קריאה חוזרת (callback) של שכבת פרוטוקול.

פונקציות סטטיות ציבוריות

DefaultEventHandler

void DefaultEventHandler(
  void *apAppState,
  EventType aEvent,
  const InEventParam & aInParam,
  OutEventParam & aOutParam
)

handler שמוגדר כברירת מחדל לאירועי API מקשרים.

אפליקציות נדרשות לקרוא לשיטה הזו עבור כל אירועי API שהם לא מזהים או לא מטפלים בה. הפרמטרים המסופקים חייבים להיות זהים לפרמטרים שמועברים באמצעות הקישור לפונקציית הגורם המטפל באירועים של האפליקציה.

פרטים
פרמטרים
[in] apAppState
מצביע לפרטי מצב שהוגדרו על ידי האפליקציה המשויכים לקישור.
[in] aEvent
מזהה האירוע שהועבר על ידי הקריאה החוזרת של האירוע
[in] aInParam
הפניה לפרמטרים של אירועי הקלט שהועברו מהקריאה החוזרת של האירוע
[in] aOutParam
הפניה לפרמטרים של אירועי פלט שהועברו על ידי הקריאה החוזרת לאירוע