nl::Weave::Binding

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

Przechwytuje zamierzony cel komunikacji Weave i powiązane informacje o konfiguracji.

Podsumowanie

Obiekt Binding określa zamierzone miejsce docelowe komunikacji Weave (zwanej też „peerem”), wraz z zbiorem parametrów konfiguracji opisujących, jak powinna następować komunikacja z elementem równorzędnym. Powiązania są niezależne od protokołu aplikacji wymienianego między stronami. Dzięki temu zbierają dane na temat tego, oraz instrukcji komunikacji, ale nie „co”.

Konfiguracja

Aplikacje muszą skonfigurować Wiązanie z parametrami specyficznymi dla wybranego typu kanału komunikacji. Powiązania zapewniają obsługę różnych rodzajów transportu sieciowego, w tym TCP, UDP, UDP z weave Reliable Messaging i Weave over BLE (WoBLE). Aplikacje mogą również prosić o zastosowanie określonych mechanizmów zabezpieczeń do ochrony wiadomości przesyłanych między stronami. Obejmują one sesje CASE i PASE oraz klucze grup aplikacji. Interfejs do konfigurowania Wiązania używa deklaratywnego stylu interfejsu API, który umożliwia aplikacjom określanie wymagań dotyczących komunikacji w prosty sposób.

Więcej informacji znajdziesz w dokumentacji raportu Binding::Configuration (Wiązanie::Konfiguracja).

Przygotowanie

Przed rozpoczęciem komunikacji Wiązanie należy przygotować. Czynności związane z przygotowaniem Wiązania obejmują ustalenie stanu niezbędnego do przeprowadzenia komunikacji. Może to obejmować na przykład rozpoznawanie adresu sieciowego peera, nawiązanie połączenia sieciowego i negocjowanie kluczy bezpieczeństwa. Po skonfigurowaniu go przez aplikację funkcja Wiązanie wykonuje wszystkie czynności niezbędne do przygotowania komunikacji, a po jej zakończeniu wywołuje aplikację. W ten sposób powiązania ukrywają mechanikę komunikacji, dzięki czemu aplikacje mogą skoncentrować się na interakcjach wysokiego poziomu.

Komunikacja

Po przygotowaniu wiązania jest ono gotowe do użycia. W takim stanie aplikacje (lub częściej kod warstwy protokołu działający w imieniu aplikacji) żądają ustawienia Wiązanie, aby przydzielić kontekst giełdy Weave. Wynikowy kontekst wymiany jest wstępnie skonfigurowany pod kątem komunikacji, dzięki czemu aplikacja może natychmiast zainicjować wymianę Weave z peerem. Aplikacja może nadal żądać kontekstów wymiany z poziomu Wiązania do momentu zamknięcia Wiązania lub do chwili zamknięcia podstawowego kanału komunikacyjnego, np. awarii sieci.

Zmiany stanu wiązania

W trakcie użytkowania Wiązanie będzie dostarczać do aplikacji zdarzenia interfejsu API informujące ją o zmianach stanu Wiązania. Jeśli na przykład przygotowanie się powiedzie, aplikacja otrzyma zdarzenie informujące, że Wiązanie jest gotowe do użycia. I podobnie, jeśli podstawowy kanał komunikacji ulegnie awarii, do aplikacji zostanie przesłane zdarzenie z informacją, że Wiązanie nie jest już w stanie gotowości.

Zdarzenia interfejsu API są dostarczane do aplikacji za pomocą funkcji wywołania zwrotnego zdarzenia, która jest dostarczana po przydzieleniu wartości Wiązanie.

Czas trwania wiązania

Wiązania są liczone jako pliki referencyjne, co umożliwia wspólne korzystanie z wielu komponentów oprogramowania. Po przydzieleniu powiązania Wiązanie jest tworzone pojedyncze odwołanie do powiązania. Aplikacja będzie zobowiązana do opublikowania tego pliku referencyjnego w przyszłości, tak aby Wiązanie było bezpłatne do późniejszego wykorzystania.

Gdy aplikacja obsługuje Wiązanie, może wywołać metodę Close() w przypadku powiązania. Spowoduje to zwolnienie odniesienia aplikacji do wartości Wiązanie i zablokowanie dalszego przesyłania zdarzeń interfejsu API. Zamknięcie ostatniego odwołania do Wiązania powoduje jego automatyczne zamknięcie.

Typy publiczne

@23{
  kGetPeerDescription_MaxLength = nl::Weave::kWeavePeerDescription_MaxLength
}
enum | typ wyliczeniowy
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 | typ wyliczeniowy
State enum | typ wyliczeniowy

Atrybuty publiczne

AppState
void *

Funkcje publiczne

AddRef(void)
void
Zarezerwuj odwołanie do obiektu powiązania.
AdjustResponseTimeout(ExchangeContext *apExchangeContext) const
Skonfiguruj ponownie istniejący kontekst Exchange, aby dostosować czas oczekiwania odpowiedzi.
AllocateRightSizedBuffer(PacketBuffer *& buf, const uint32_t desiredSize, const uint32_t minSize, uint32_t & outMaxPayloadSize)
BeginConfiguration()
Proces konfigurowania powiązania.
CanBePrepared(void) const
bool
Close(void)
void
Zamknij obiekt powiązania i zwolnij odwołanie.
GetConnection() const
Pobierz obiekt połączenia Weave powiązany z powiązaniem.
GetDefaultResponseTimeout() const
uint32_t
Pobierz domyślny czas oczekiwania na odpowiedź giełdy, który będzie używany podczas komunikacji z peerem.
GetDefaultWRMPConfig(void) const
const WRMPConfig &
Pobierz domyślną konfigurację WRMP, która będzie używana do komunikacji z peerem.
GetEncryptionType(void) const
uint8_t
Pobierz typ szyfrowania wiadomości, który ma być używany podczas szyfrowania wiadomości do/z peera.
GetEventCallback() const
EventCallback
Pobierz funkcję, która będzie wywoływana, gdy wystąpi zdarzenie interfejsu API dotyczące wiązania.
GetExchangeManager() const
GetKeyId(void) const
uint32_t
Pobierz identyfikator klucza szyfrowania wiadomości, który ma być używany podczas szyfrowania wiadomości do/z peera.
GetLogId(void) const
uint16_t
Uzyskaj unikalny identyfikator powiązania.
GetMaxWeavePayloadSize(const System::PacketBuffer *msgBuf)
uint32_t
Uzyskaj maksymalny rozmiar ładunku Weave, który mieści się w dostarczonym buforze PacketBuffer.
GetPeerDescription(char *buf, uint32_t bufSize) const
void
Konstruuje ciąg znaków opisujący węzeł równorzędny i powiązany z nim adres / informacje o połączeniu.
GetPeerIPAddress(nl::Inet::IPAddress & address, uint16_t & port, InterfaceId & interfaceId) const
void
Pobieranie informacji o adresie IP peera, jeśli są dostępne.
GetPeerNodeId(void) const
uint64_t
Pobieranie identyfikatora węzła peera powiązania.
GetProtocolLayerCallback(EventCallback & callback, void *& state) const
void
GetState(void) const
State
Pobierz bieżący stan powiązania.
IsAuthenticMessageFromPeer(const WeaveMessageInfo *msgInfo)
bool
Określ, czy dana wiadomość przychodząca pochodzi od skonfigurowanego połączenia równorzędnego i jest odpowiednio uwierzytelniona.
IsConnectionTransport() const
bool
IsPreparing(void) const
bool
IsReady(void) const
bool
IsUDPTransport() const
bool
IsUnreliableUDPTransport() const
bool
IsWRMTransport() const
bool
NewExchangeContext(ExchangeContext *& appExchangeContext)
Przydziel nowy kontekst Exchange do komunikacji z peerem, który jest celem powiązania.
Release(void)
void
Zwolnij odwołanie do obiektu powiązania.
RequestPrepare()
Poproś aplikację o skonfigurowanie i przygotowanie Wiązania.
Reset(void)
void
Zresetuj powiązanie z powrotem do stanu nieskonfigurowanego.
SetDefaultResponseTimeout(uint32_t msec)
void
Ustaw domyślny czas oczekiwania na odpowiedź giełdy, który ma być używany podczas komunikacji z peerem.
SetDefaultWRMPConfig(const WRMPConfig & wrmpConfig)
void
Ustaw domyślną konfigurację WRMP, która będzie używana do komunikacji z peerem.
SetEventCallback(EventCallback aEventCallback)
void
Ustaw funkcję zdefiniowaną przez aplikację tak, aby była wywoływana, gdy wystąpi zdarzenie interfejsu API dotyczące wiązania.
SetProtocolLayerCallback(EventCallback callback, void *state)
void
Ustaw funkcję wywołania zwrotnego zdarzenia dla kodu warstwy protokołu, używając opcji Wiązanie w imieniu aplikacji.

Publiczne funkcje statyczne

DefaultEventHandler(void *apAppState, EventType aEvent, const InEventParam & aInParam, OutEventParam & aOutParam)
void
Domyślny moduł obsługi wiązań zdarzeń interfejsu API.

Zajęcia

nl::Weave::Binding::Configuration

Udostępnia interfejs w stylu deklaratywnym do konfigurowania i przygotowywania obiektu Binding (Wiązanie).

Struktura

nl::Weave::Binding::InEventParam

Dane wejściowe zdarzenia interfejsu API Binding.

nl::Weave::Binding::OutEventParam

Parametry wyjściowe dla zdarzenia interfejsu API Binding.

Typy publiczne

@23

 @23
Właściwości
kGetPeerDescription_MaxLength

Maksymalna długość ciągu znaków (łącznie ze znakiem NUL) zwracanym przez funkcję GetPeerDescription().

EventCallback

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

EventType

 EventType
Właściwości
kEvent_BindingFailed

Powiązanie nie powiodło się i nie można go już używać do komunikowania się z peerem.

kEvent_BindingReady

Działanie przygotowujące do powiązania zostało zakończone i można go teraz używać do komunikacji z peerem.

kEvent_ConnectionEstablished

Żądane połączenie Weave zostało nawiązane.

kEvent_DefaultCheck

Służy do weryfikacji prawidłowej domyślnej obsługi zdarzeń w aplikacji.

kEvent_PASEParametersRequested

Aplikacja ma podać parametry do wykorzystania podczas inicjowania sesji PASE.

kEvent_PrepareFailed

Nie udało się wykonać działania związanego z przygotowaniem powiązania.

kEvent_PrepareRequested

Żądana jest aplikacja, aby skonfigurować i przygotować powiązanie do użycia przez stos sieciowy.

kEvent_TAKEParametersRequested

Aplikacja została zażądana, by podać parametry do wykorzystania podczas tworzenia sesji take.

Stan

 State

Atrybuty publiczne

AppState

void * AppState

Funkcje publiczne

AddRef

void AddRef(
  void
)

Zarezerwuj odwołanie do obiektu powiązania.

AdjustResponseTimeout

WEAVE_ERROR AdjustResponseTimeout(
  ExchangeContext *apExchangeContext
) const 

Skonfiguruj ponownie istniejący kontekst Exchange, aby dostosować czas oczekiwania odpowiedzi.

Szczegóły
Parametry
[in] apExchangeContext
wskaźnik do obiektu kontekstu Exchange do ponownego skonfigurowania;

AllocateRightSizedBuffer

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

BeginConfiguration

Configuration BeginConfiguration()

Proces konfigurowania powiązania.

Aplikacje muszą wywołać metodę BeginConfiguration(), aby skonfigurować Wiązanie przed przygotowaniem jej do komunikacji z peerem.

Szczegóły
Zwroty
Obiekt Binding::Configuration, którego można używać do konfigurowania powiązania.

CanBePrepared

bool CanBePrepared(
  void
) const 

Zamknij

void Close(
  void
)

Zamknij obiekt powiązania i zwolnij odwołanie.

Po wywołaniu ta metoda powoduje, że powiązanie przechodzi w stan Zamknięty. Wszystkie trwające działania przygotowujące do powiązania zostaną anulowane, a wszystkie zewnętrzne zasoby komunikacyjne przechowywane przez to powiązanie zostaną zwolnione.

Wywołanie Close() zmniejsza liczbę odwołań powiązanych z powiązaniem, co powoduje zwolnienie obiektu, gdy liczba odwołań spadnie do 0.

GetConnection

WeaveConnection * GetConnection() const 

Pobierz obiekt połączenia Weave powiązany z powiązaniem.

Szczegóły
Zwroty
wskaźnik do obiektu WeaveConnection lub wartość NULL, jeśli nie ma żadnego połączenia z powiązaniem.

GetDefaultResponseTimeout

uint32_t GetDefaultResponseTimeout() const 

Pobierz domyślny czas oczekiwania na odpowiedź giełdy, który będzie używany podczas komunikacji z peerem.

Szczegóły
Zwroty
Czas oczekiwania na odpowiedź w ms.

GetDefaultWRMPConfig

const WRMPConfig & GetDefaultWRMPConfig(
  void
) const 

Pobierz domyślną konfigurację WRMP, która będzie używana do komunikacji z peerem.

Szczegóły
Zwroty
Odwołanie do struktury WRMPConfig zawierającej domyślne wartości konfiguracji.

GetEncryptionType

uint8_t GetEncryptionType(
  void
) const 

Pobierz typ szyfrowania wiadomości, który ma być używany podczas szyfrowania wiadomości do/z peera.

GetEventCallback

EventCallback GetEventCallback() const 

Pobierz funkcję, która będzie wywoływana, gdy wystąpi zdarzenie interfejsu API dotyczące wiązania.

Szczegóły
Zwroty
Wskaźnik do funkcji wywołania zwrotnego.

GetExchangeManager

WeaveExchangeManager * GetExchangeManager() const 

GetKeyId

uint32_t GetKeyId(
  void
) const 

Pobierz identyfikator klucza szyfrowania wiadomości, który ma być używany podczas szyfrowania wiadomości do/z peera.

GetLogId

uint16_t GetLogId(
  void
) const 

Uzyskaj unikalny identyfikator powiązania.

GetMaxWeavePayloadSize

uint32_t GetMaxWeavePayloadSize(
  const System::PacketBuffer *msgBuf
)

Uzyskaj maksymalny rozmiar ładunku Weave, który mieści się w dostarczonym buforze PacketBuffer.

W przypadku UDP, w tym UDP z WRM, maksymalny rozmiar zwróconych ładunków zagwarantuje, że wynikowa wiadomość Weave nie przekroczy skonfigurowanego limitu MTU.

Dodatkowo dzięki tej metodzie ładunek Weave nie przekroczy podanego obiektu PacketBuffer.

Szczegóły
Parametry
[in] msgBuf
Wskaźnik do obiektu PacketBuffer, w którym zostanie zapisany ładunek wiadomości.
Zwroty
Maksymalny rozmiar ładunku Weave.

GetPeerDescription

void GetPeerDescription(
  char *buf,
  uint32_t bufSize
) const 

Konstruuje ciąg znaków opisujący węzeł równorzędny i powiązany z nim adres / informacje o połączeniu.

Szczegóły
Parametry
[in] buf
Wskaźnik do bufora, w którym ma zostać zapisany ciąg. Podany bufor powinien być co najmniej tak duży, jak kGetPeerDescription_MaxLength. Jeśli podasz mniejszy bufor, ciąg znaków zostanie skrócony w celu dopasowania. We wszystkich przypadkach wynik będzie zawierał znak zakończenia NUL.
[in] bufSize
Rozmiar bufora wskazywanego przez buf.

GetPeerIPAddress

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

Pobieranie informacji o adresie IP peera, jeśli są dostępne.

Dostępność informacji o adresie IP peera zależy od stanu i konfiguracji powiązania. Informacje o adresach IP są dostępne tylko wtedy, gdy korzystasz z transportu opartego na IP (TCP, UDP lub UDP z WRMP). Przed rozpoczęciem przygotowań informacje adresowe są dostępne tylko wtedy, gdy zostały wyraźnie określone przez aplikację podczas konfiguracji. W fazie przygotowań informacje adresowe są dostępne po zakończeniu przygotowania adresu (np. po zakończeniu rozpoznawania nazw DNS). Gdy Wiązanie będzie gotowe, informacje adresowe pozostaną dostępne do czasu zresetowania opcji Wiązanie.

Szczegóły
Parametry
[out] address
Odwołanie do obiektu IPAddress, który otrzyma adres IP peera. Jeśli informacje o adresie IP peera są niedostępne, ta wartość zostanie ustawiona na IPAddress::Any.
[out] port
Odwołanie do liczby całkowitej, która otrzyma numer portu połączenia równorzędnego. Jeśli informacje o adresie IP peera są niedostępne, ta wartość jest niezdefiniowana.
[out] interfaceId
Odwołanie do liczby całkowitej, które otrzyma identyfikator interfejsu sieci, przez który można nawiązać połączenie z peerem. Jeśli informacje o adresie IP peera są niedostępne, ta wartość jest niezdefiniowana.

GetPeerNodeId

uint64_t GetPeerNodeId(
  void
) const 

Pobieranie identyfikatora węzła peera powiązania.

Obowiązuje tylko po przygotowaniu obiektu powiązania.

Szczegóły
Zwroty
Identyfikator węzła Weave węzła równorzędnego

GetProtocolLayerCallback

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

GetState

State GetState(
  void
) const 

Pobierz bieżący stan powiązania.

Szczegóły
Zwroty
Stan powiązania.

IsAuthenticMessageFromPeer

bool IsAuthenticMessageFromPeer(
  const WeaveMessageInfo *msgInfo
)

Określ, czy dana wiadomość przychodząca pochodzi od skonfigurowanego połączenia równorzędnego i jest odpowiednio uwierzytelniona.

Ta metoda potwierdza następujące informacje na temat danej wiadomości:

  • Wiadomość pochodzi z węzła równorzędnego powiązania
  • Wiadomość została odebrana za pomocą tego samego typu transportu co powiązanie. Jeśli wiadomość została odebrana przez połączenie, metoda sprawdza też, czy wiadomość została odebrana przez dokładne połączenie powiązane z powiązaniem.
  • Klucz szyfrowania i typ użyte do zaszyfrowania wiadomości są zgodne z kluczami skonfigurowanymi w powiązaniu. W przypadku powiązań skonfigurowanych bez użycia zabezpieczeń metoda potwierdza, że wiadomość przychodząca NIE jest zaszyfrowana.

Ta metoda jest przeznaczona do stosowania w protokołach takich jak WDM, w których połączenia równorzędne mogą spontanicznie inicjować wymiany z powrotem do węzła lokalnego po początkowej wymianie węzła z peerem. W takich przypadkach metoda pozwala węzłowi lokalnym potwierdzić, że przychodząca niezamawiana wiadomość została wysłana przez powiązanego peera. Oczywiście w przypadku powiązań skonfigurowanych bez użycia szyfrowania wiadomości to potwierdzenie nie zapewnia żadnej wartości z perspektywy bezpieczeństwa. Jest to jedynie potwierdzenie, że identyfikator węzła nadawcy i typy transportu są zgodne.

Pamiętaj, że jeśli powiązanie nie jest w stanie gotowości, ta metoda zawsze zwraca wartość fałsz.

Szczegóły
Parametry
[in] msgInfo
Informacje o wiadomości Weave dla wiadomości przychodzącej.
Zwroty
Prawda, jeśli wiadomość jest autentyczna z grupy porównawczej.

IsConnectionTransport

bool IsConnectionTransport() const 

IsPreparing

bool IsPreparing(
  void
) const 

Szczegóły
Zwroty
Prawda, jeśli trwa przygotowywanie Wiązania.

IsReady

bool IsReady(
  void
) const 

Szczegóły
Zwroty
Prawda, jeśli Wiązanie jest w stanie gotowości.

IsUDPTransport

bool IsUDPTransport() const 

IsUnreliableUDPTransport

bool IsUnreliableUDPTransport() const 

IsWRMTransport

bool IsWRMTransport() const 

NewExchangeContext

WEAVE_ERROR NewExchangeContext(
  ExchangeContext *& appExchangeContext
)

Przydziel nowy kontekst Exchange do komunikacji z peerem, który jest celem powiązania.

Szczegóły
Parametry
[out] appExchangeContext
Odwołanie do wskaźnika, który otrzyma nowo przydzielony obiekt kontekstu Exchange. Jeśli metoda się nie powiedzie, wskaźnik zostanie ustawiony na NULL.
Zwracane wartości
WEAVE_NO_ERROR
Czy kontekst giełdy został przydzielony.
WEAVE_ERROR_NO_MEMORY
Jeśli nie było dostępnej pamięci, która mogłaby przydzielić kontekst wymiany.
WEAVE_ERROR_INCORRECT_STATE
Jeśli powiązanie nie jest w stanie gotowości.
other
Inne błędy związane z konfigurowaniem kontekstu giełdy na podstawie konfiguracji powiązania.

Wersja

void Release(
  void
)

Zwolnij odwołanie do obiektu powiązania.

Jeśli nie ma więcej odwołań do obiektu powiązania, powiązanie zostanie zamknięte i zwolnione.

RequestPrepare

WEAVE_ERROR RequestPrepare()

Poproś aplikację o skonfigurowanie i przygotowanie Wiązania.

Kod warstwy protokołu może używać tej metody w połączeniu z Wiązaniem, który nie został skonfigurowany lub w przypadku którego nie udało się aktywować zdarzenia, aby wyzwolić zdarzenie w aplikacji (kEvent_Prepare requested) w celu skonfigurowania powiązania i przygotowania go do użycia.

Tę metodę można wywoływać tylko w przypadku powiązań w stanie Nieskonfigurowana lub Niepowodzenie.

Jeśli aplikacja nie obsługuje konfiguracji/przygotowania powiązań na żądanie, metoda zakończy się niepowodzeniem i wystąpi błąd WEAVE_ERROR_NOT_IMPLEMENTED.

Resetuj

void Reset(
  void
)

Zresetuj powiązanie z powrotem do stanu nieskonfigurowanego.

Po wywołaniu funkcji Reset() wszystkie trwające działania przygotowujące do powiązania zostają anulowane, a wszystkie zewnętrzne zasoby komunikacyjne przechowywane przez to powiązanie zostają zwolnione. Funkcja Reset() umieszcza powiązanie w stanie Nieskonfigurowane. Po tym czasie można je ponownie skonfigurować i przygotować.

Funkcja Reset() nie zmienia liczby odwołań w powiązaniu.

SetDefaultResponseTimeout

void SetDefaultResponseTimeout(
  uint32_t msec
)

Ustaw domyślny czas oczekiwania na odpowiedź giełdy, który ma być używany podczas komunikacji z peerem.

Szczegóły
Parametry
[in] timeout
Nowy czas oczekiwania na odpowiedź w ms.

SetDefaultWRMPConfig

void SetDefaultWRMPConfig(
  const WRMPConfig & wrmpConfig
)

Ustaw domyślną konfigurację WRMP, która będzie używana do komunikacji z peerem.

Szczegóły
Parametry
[in] aWRMPConfig
Odwołanie do struktury WRMPConfig zawierającej nową konfigurację domyślną.

SetEventCallback

void SetEventCallback(
  EventCallback aEventCallback
)

Ustaw funkcję zdefiniowaną przez aplikację tak, aby była wywoływana, gdy wystąpi zdarzenie interfejsu API dotyczące wiązania.

Szczegóły
Parametry
[in] aEventCallback
Wskaźnik do funkcji wywołania zwrotnego.

SetProtocolLayerCallback

void SetProtocolLayerCallback(
  EventCallback callback,
  void *state
)

Ustaw funkcję wywołania zwrotnego zdarzenia dla kodu warstwy protokołu, używając opcji Wiązanie w imieniu aplikacji.

Ta funkcja jest wywoływana razem ze zdefiniowaną przez aplikację funkcją wywołania zwrotnego, gdy wystąpi zdarzenie interfejsu API dotyczące wiązania.

Szczegóły
Parametry
[in] callback
Wskaźnik do funkcji wywołania zwrotnego.
[in] state
Wskaźnik do obiektu stanu, który zostanie dostarczony do kodu warstwy protokołu po wystąpieniu wywołania zwrotnego warstwy protokołu.

Publiczne funkcje statyczne

DefaultEventHandler

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

Domyślny moduł obsługi wiązań zdarzeń interfejsu API.

Aplikacje muszą wywoływać tę metodę w przypadku wszystkich zdarzeń interfejsu API, których nie rozpoznają ani nie obsługują. Podane parametry muszą być takie same jak te przekazywane przez powiązanie z funkcją obsługi zdarzeń w aplikacji.

Szczegóły
Parametry
[in] apAppState
Wskaźnik do określonych przez aplikację informacji o stanie powiązanych z powiązaniem.
[in] aEvent
Identyfikator zdarzenia przekazany przez wywołanie zwrotne zdarzenia
[in] aInParam
Odniesienie do parametrów wejściowych zdarzeń przekazywanych przez wywołanie zwrotne zdarzenia
[in] aOutParam
Odniesienie do parametrów zdarzenia wyjściowego przekazywanych przez wywołanie zwrotne zdarzenia