Mit Sammlungen den Überblick behalten Sie können Inhalte basierend auf Ihren Einstellungen speichern und kategorisieren.

nl::Weave::Profile::BDX_Entwicklung

Dieser Namespace enthält alle Schnittstellen in Weave für das BDX-Profil (Bulk Data Transfer), die sich in der Entwicklung befinden und nicht für die Produktion verwendet werden sollten.

Fazit

Aufzählungen

@80 enum
@81 enum
@82 enum
@83 enum

Typdef.

BdxClient Typdef
BdxServer Typdef
ErrorHandler)(BDXTransfer *aXfer, WEAVE_ERROR anErrorCode) Typdef
void(*
Dieser Handler wird jedes Mal aufgerufen, wenn ein Weave-Fehler auftritt, der nicht direkt über Fehlercodes an den benutzerdefinierten, vom Nutzer definierten Kontrollfluss zurückgegeben werden kann.
GetBlockHandler)(BDXTransfer *aXfer, uint64_t *aLength, uint8_t **aDataBlock, bool *aLastBlock) Typdef
void(*
Get a block of data to be transmitted.
PutBlockHandler)(BDXTransfer *aXfer, uint64_t aLength, uint8_t *aDataBlock, bool aLastBlock) Typdef
void(*
Umgang mit dem Datenblock, auf den ein DataDataBlock der Länge A verweist.
ReceiveAcceptHandler)(BDXTransfer *aXfer, ReceiveAccept *aReceiveAcceptMsg) Typdef
Callback, das ausgelöst wird, wenn ein zuvor gesendeter ReceiveInit-Wert vom Ziel akzeptiert wird.
ReceiveInitHandler)(BDXTransfer *aXfer, ReceiveInit *aReceiveInitMsg) Typdef
uint16_t(*
Callback, das beim Empfang einer ReceiveInit-Nachricht aufgerufen wird.
RejectHandler)(BDXTransfer *aXfer, StatusReport *aReport) Typdef
void(*
Wird aufgerufen, wenn eine der vorherigen Init-Nachrichten vom Ziel abgelehnt wurde.
SendAcceptHandler)(BDXTransfer *aXfer, SendAccept *aSendAcceptMsg) Typdef
Callback, das ausgelöst wird, wenn ein zuvor gesendetes SendInit gesendet wurde, vom Ziel akzeptiert wird.
SendInitHandler)(BDXTransfer *aXfer, SendInit *aSendInitMsg) Typdef
uint16_t(*
Callback, das beim Empfang einer SendInit-Nachricht aufgerufen wird.
XferDoneHandler)(BDXTransfer *aXfer) Typdef
void(*
Für den Fall, dass die Übertragung abgeschlossen ist
XferErrorHandler)(BDXTransfer *aXfer, StatusReport *aXferError) Typdef
void(*
Verarbeiten Sie TransferError-Nachrichten, die von BDX empfangen oder gesendet wurden.

Funktionen

GetBDXAckFlag(ExchangeContext *anEc)
uint16_t
GetBDXAckFlag gibt das entsprechende Flag für das Feld „RequestAck“ zurück, je nach Verbindung des Exchange-Kontexts (keine Anfrage-ACK für TCP). Es basiert auf der Unterstützung der Kompilierungszeit für WRMP.

Klassen

nl::Weave::Profile::BDX_Entwicklung::BdxNode
nl::Weave::Profile::BDX_Entwicklung::BlockAck

Die Nachricht BlockAck wird verwendet, um einen Datenblock zu bestätigen.

nl::Weave::Profile::BDX_Entwicklung::BlockAckV1

Mit der Nachricht BlockAckV1 wird ein Datenblock bestätigt.

nl::Weave::Profile::BDX_Entwicklung::BlockEOF

Mit der BlockEOF-Nachricht wird der letzte Datenblock vom Absender zum Empfänger übertragen.

nl::Weave::Profile::BDX_Entwicklung::BlockEOFAck

Mit der Nachricht BlockEOFAck wird der letzte Datenblock bestätigt.

nl::Weave::Profile::BDX_Entwicklung::BlockEOFAckV1

Mit der Nachricht BlockEOFAckV1 wird der letzte Datenblock bestätigt.

nl::Weave::Profile::BDX_Entwicklung::BlockEOFV1

Mit der Nachricht BlockEOFV1 wird der letzte Datenblock vom Absender zum Empfänger übertragen.

nl::Weave::Profile::BDX_Entwicklung::BlockQuery

Die BlockQuery-Nachricht wird verwendet, um anzufordern, dass ein Datenblock vom Absender zum Empfänger übertragen wird.

nl::Weave::Profile::BDX_Entwicklung::BlockQueryV1

Mit der BlockQueryV1-Nachricht wird angefordert, dass ein Datenblock vom Absender an den Empfänger übertragen wird.

nl::Weave::Profile::BDX_Entwicklung::BlockSend

Die Nachricht BlockSend wird verwendet, um einen Datenblock vom Absender auf den Empfänger zu übertragen.

nl::Weave::Profile::BDX_Entwicklung::BlockSendV1

Mit der Nachricht BlockSendV1 wird ein Datenblock vom Absender an den Empfänger übertragen.

nl::Weave::Profile::BDX_Entwicklung::AcceptAccept

Die Nachricht ReceiveAccept wird angenommen, wenn der Empfänger ein Initiator ist.

nl::Weave::Profile::BDX_Entwicklung::ReceiveInit

Die Nachricht ReceiveInit wird verwendet, um einen Datenaustausch zu starten, wenn der Empfänger der Initiator ist.

nl::Weave::Profile::BDX_Entwicklung::Empfangen

Damit wird eine vorgeschlagene Anzeigenplattform abgelehnt, wenn der Absender Initiator ist.

nl::Weave::Profile::BDX_Entwicklung::SendAccept

Die Nachricht SendAccept wird verwendet, um eine vorgeschlagene Anzeigenplattform zu akzeptieren, wenn der Absender.

nl::Weave::Profile::BDX_Entwicklung::SendInit

Mit der Nachricht SendInit wird eine Anzeigenplattform gestartet, wenn der Absender initiiert wird.

nl::Weave::Profile::BDX_Entwicklung::SendDeny

Mit der Nachricht SendDeny wird die vorgeschlagene Anzeigenplattform abgelehnt, wenn der Absender.

nl::Weave::Profile::BDX_Entwicklung::TransferError

Die Fehlermeldung wird verwendet, um einen Fehler zu melden und einen Anzeigenplattform abzubrechen.

Strebenklemmen

nl::Weave::Profile::BDX_Entwicklung::BDXHandlers
nl::Weave::Profile::BDX_Entwicklung::BDXTransfer

Diese Struktur enthält Datenmitglieder, die eine aktive BDX-Übertragung darstellen.

Namespaces

nl::Weave::Profile::BDX_Entwicklung::BdxProtokoll

Aufzählungen

@80

 @80

@81

 @81

@82

 @82

@83

 @83

Typdef.

BdxClient

BdxNode BdxClient

BdxServer

BdxNode BdxServer

ErrorHandler

void(* ErrorHandler)(BDXTransfer *aXfer, WEAVE_ERROR anErrorCode)

Dieser Handler wird jedes Mal aufgerufen, wenn ein Weave-Fehler auftritt, der nicht direkt über Fehlercodes an den benutzerdefinierten, vom Nutzer definierten Kontrollfluss zurückgegeben werden kann.

Wenn also in einem anderen Handler ein Fehler auftritt, dessen Signatur vom Typ „void“ zurückgegeben wird (z. B. als Antwort auf eine eingehende Weave-Nachricht oder sogar dann, wenn er vom Protokoll ausgelöst wird), wird dieser Handler aufgerufen, damit der Nutzer erkennen kann, ob die Übertragung wiederhergestellt werden kann. Oder ob er Shutdown() aufrufen sollte. Beachten Sie, dass es zu einem Fehler kommen kann, bevor eine BDXTransfer initialisiert wird (z. B. bereits zu viele Übertragungsobjekte). In einem solchen Fall wird dieser Fehler von Weave protokolliert und das Protokoll kümmert sich um die Bereinigung aller erforderlichen Zustände.

Details
Parameter
[in] aXfer
Bewegen Sie den Mauszeiger auf den mit dieser Übertragung verknüpften BDXTransfer.
[in] anErrorCode
Der Fehlercode, den wir verarbeiten müssen

GetBlockHandler

void(* GetBlockHandler)(BDXTransfer *aXfer, uint64_t *aLength, uint8_t **aDataBlock, bool *aLastBlock)

Get a block of data to be transmitted.

Der Aufrufer stellt den Pufferraum bereit (Puffer und Länge des Puffers, der als Referenz weitergegeben wird). Der Aufrufer (Nutzeranwendung) SOLLTE den bereitgestellten Puffer verwenden, aus Gründen der Abwärtskompatibilität kann jedoch ein eigener Puffer zurückgegeben werden. Der Aufrufer darf nicht mehr als aLength Byte angeben. Bei der Rückgabe enthält aLength die tatsächliche Anzahl der in den Puffer gelesenen Byte.

Details
Parameter
[in] aXfer
Der mit dieser laufenden Übertragung verknüpfte BDXTransfer
[in,out] aLength
Die Länge der in diesem Block gelesenen und gespeicherten Daten. Beim Aufrufen der Funktion enthält die Länge des Zwischenspeichers, der in aDataBlock übergeben wird. Bei der Rückgabe enthält die Variable die Länge der tatsächlich gelesenen Daten.
[in,out] aDataBlock
Der Mauszeiger auf den Datenblock. Bei der Eingabe enthält er den vom Framework bereitgestellten Puffer. Der Aufrufer kann diesen Speicherplatz zum Füllen des Zwischenspeichers verwenden oder einen eigenen Pufferraum für Abwärtskompatibilitätsanwendungen bereitstellen. Anwendungen, die einen bereitgestellten Puffer verwenden, dürfen nicht von einer Ausrichtung abhängen.
[out] aLastBlock
True, wenn der Block als BlockEOF gesendet und die Übertragung abgeschlossen werden soll. False.

PutBlockHandler

void(* PutBlockHandler)(BDXTransfer *aXfer, uint64_t aLength, uint8_t *aDataBlock, bool aLastBlock)

Umgang mit dem Datenblock, auf den ein DataDataBlock der Länge A verweist.

Dazu gehört auch, sie in eine Datei zu schreiben und die Datei zu schließen, wenn isLastBlock wahr ist.

Details
Parameter
[in] aXfer
Der mit dieser laufenden Übertragung verknüpfte BDXTransfer
[in] aLength
Die Länge der im angegebenen Block gelesenen und gespeicherten Daten
[in] aDataBlock
Der eigentliche Datenblock
[in] aLastBlock
„true“, wenn die Sperre als BlockEOF empfangen wurde und die Übertragung abgeschlossen wurde, sonst „false“. Wenn „true“, sollte der Programmierer wahrscheinlich alle Datei-Handles abschließen, wobei der XferDoneHandler danach aufgerufen wird

ReceiveAcceptHandler

WEAVE_ERROR(* ReceiveAcceptHandler)(BDXTransfer *aXfer, ReceiveAccept *aReceiveAcceptMsg)

Callback, das ausgelöst wird, wenn ein zuvor gesendeter ReceiveInit-Wert vom Ziel akzeptiert wird.

Sie können diese Gelegenheit nutzen, um Dateien zu öffnen oder Ressourcen für die Übertragung zuzuweisen, falls Sie das nicht schon getan haben.

Details
Parameter
[in] aXfer
Bewegen Sie den Mauszeiger auf den mit dieser Übertragung verknüpften BDXTransfer.
[in] aReceiveAcceptMsg
Bewegen Sie den Mauszeiger auf die Nachricht ReceiveAccept (Empfangen).

ReceiveInitHandler

uint16_t(* ReceiveInitHandler)(BDXTransfer *aXfer, ReceiveInit *aReceiveInitMsg)

Callback, das beim Empfang einer ReceiveInit-Nachricht aufgerufen wird.

Er muss bestimmen, ob Sie den Empfang akzeptieren möchten, und gegebenenfalls den Befehl „AXfer->mIsAccept=true“ setzen, damit das Protokoll eine Annahmenachricht an den Initiator sendet. Das BDXTransfer-Objekt wird auf die Standardeinstellungen initiiert. Hier können Sie einen anwendungsspezifischen Status (z. B. offene Dateigriffe) an aXfer->mAppState anhängen. Hier müssen Sie auch die erforderlichen Handler für das Objekt BDXTransfer anhängen, z.B. für die Blockbearbeitung. Wird ein anderer Fehlercode als „kStatus_Success“ zurückgegeben, wird angenommen, dass die Übertragung abgelehnt wird. Das Protokoll sendet dann eine Ablehnungsnachricht mit dem Code.

Details
Parameter
[in] aXfer
Bewegen Sie den Mauszeiger auf den mit dieser Übertragung verknüpften BDXTransfer.
[in] aReceiveInitMsg
Bewegen Sie den Mauszeiger auf die Nachricht ReceiveInit, die wir verarbeiten.

DenyHandler

void(* RejectHandler)(BDXTransfer *aXfer, StatusReport *aReport)

Wird aufgerufen, wenn eine der vorherigen Init-Nachrichten vom Ziel abgelehnt wurde.

Details
Parameter
[in] aXfer
Bewegen Sie den Mauszeiger auf den mit dieser Übertragung verknüpften BDXTransfer.
[in] aReport
Zeige auf die Ablehnung der von uns verarbeiteten StatusReport-Nachricht

SendAcceptHandler

WEAVE_ERROR(* SendAcceptHandler)(BDXTransfer *aXfer, SendAccept *aSendAcceptMsg)

Callback, das ausgelöst wird, wenn ein zuvor gesendetes SendInit gesendet wurde, vom Ziel akzeptiert wird.

Sie können diese Gelegenheit nutzen, um Dateien zu öffnen oder Ressourcen für die Übertragung zuzuweisen, falls Sie das nicht schon getan haben.

Details
Parameter
[in] aXfer
Bewegen Sie den Mauszeiger auf den mit dieser Übertragung verknüpften BDXTransfer.
[in] aSendAcceptMsg
Bewegen Sie den Mauszeiger auf die Nachricht SendAccept, die wir verarbeiten.

SendInitHandler

uint16_t(* SendInitHandler)(BDXTransfer *aXfer, SendInit *aSendInitMsg)

Callback, das beim Empfang einer SendInit-Nachricht aufgerufen wird.

Dabei wird ermittelt, ob Sie SendInit akzeptieren und falls ja, mit „AXfer->mIsAccepted=true“ festlegen, dass vom Protokoll eine entsprechende Nachricht gesendet wird. Das BDXTransfer-Objekt wird auf die Standardeinstellungen initiiert. Hier können Sie einen anwendungsspezifischen Status (z. B. offene Dateigriffe) an aXfer->mAppState anhängen. Hier müssen Sie auch die erforderlichen Handler für das Objekt BDXTransfer anhängen, z.B. für die Blockbearbeitung. Wenn ein anderer Fehlercode als WEAVE_NO_ERROR zurückgegeben wird, wird angenommen, dass die Übertragung abgelehnt wird und das Protokoll für das Senden einer Ablehnungsnachricht mit dem Code zuständig ist.

Details
Parameter
[in] aXfer
Bewegen Sie den Mauszeiger auf den mit dieser Übertragung verknüpften BDXTransfer.
[in] aSendInitMsg
Bewegen Sie den Mauszeiger auf die Nachricht SendInit, die wir verarbeiten.

XferDoneHandler

void(* XferDoneHandler)(BDXTransfer *aXfer)

Für den Fall, dass die Übertragung abgeschlossen ist

Details
Parameter
[in] aXfer
Bewegen Sie den Mauszeiger auf den mit dieser Übertragung verknüpften BDXTransfer.

XferErrorHandler

void(* XferErrorHandler)(BDXTransfer *aXfer, StatusReport *aXferError)

Verarbeiten Sie TransferError-Nachrichten, die von BDX empfangen oder gesendet wurden.

Hinweis:Es wird davon ausgegangen, dass die BDX-Übertragung potenziell wiederhergestellt werden kann (z.B. vorübergehend aus den PacketBuffers), sodass die Anwendung und der Callback, den sie festlegen, aufgerufen werden können. TODO: Überprüfen Sie dies und gleichen Sie sie mit der Sprache im BDX-Dokument aus, das Folgendes lautet: "[A TransferError] kann von jeder Partei jederzeit gesendet werden, um die Bulk-Datenübertragung vorzeitig zu beenden."

Details
Parameter
[in] aXfer
Bewegen Sie den Mauszeiger auf den mit dieser Übertragung verknüpften BDXTransfer.
[in] aXferError
Zeige auf den Fehler „StatusReport-Nachricht“, der verarbeitet wird

Funktionen

GetBDXAckFlag

uint16_t GetBDXAckFlag(
  ExchangeContext *anEc
)

GetBDXAckFlag gibt das entsprechende Flag für das Feld „RequestAck“ zurück, je nach Verbindung des Exchange-Kontexts (keine Anfrage-ACK für TCP). Es basiert auf der Unterstützung der Kompilierungszeit für WRMP.

Details
Parameter
[in] anEc
Der Kontext der Anzeigenplattform, für die wir die Flagge erhalten möchten
Rückgabe
0 oder kSendFlag_RequestAck