nl::Weave::TLV::Utilities

Dieser Namespace enthält Typen und Dienstprogrammschnittstellen für die Verwaltung und Arbeit mit Weave TLV.

Zusammenfassung

Typedefs

IterateHandler)(const TLVReader &aReader, size_t aDepth, void *aContext) typedef

Funktionen

Count(const TLVReader & aReader, size_t & aCount)
Zählen Sie die Anzahl der TLV-Elemente innerhalb des angegebenen TLV-Readers absteigend in Arrays oder Strukturen.
Count(const TLVReader & aReader, size_t & aCount, const bool aRecurse)
Zählen Sie die Anzahl der TLV-Elemente innerhalb des angegebenen TLV-Readers und optional absteigend in Arrays oder Strukturen.
CountHandler(const TLVReader & aReader, size_t aDepth, void *aContext)
Erhöhen Sie den Zähler bei der Iteration über die TLV-Daten.
Find(const TLVReader & aReader, const uint64_t & aTag, TLVReader & aResult)
Suchen Sie im bereitgestellten TLV-Reader nach dem angegebenen Tag.
Find(const TLVReader & aReader, const uint64_t & aTag, TLVReader & aResult, const bool aRecurse)
Sucht mithilfe des bereitgestellten TLV-Readers nach dem angegebenen Tag, optional absteigend in Arrays oder Strukturen.
Find(const TLVReader & aReader, IterateHandler aPredicate, void *aContext, TLVReader & aResult)
Sucht in absteigender Reihenfolge in Arrays oder Strukturen nach dem ersten Element, das mit dem Prädikat innerhalb des TLV-Readers übereinstimmt.
Find(const TLVReader & aReader, IterateHandler aPredicate, void *aContext, TLVReader & aResult, const bool aRecurse)
Sucht im TLV-Reader nach dem ersten Element, das mit dem Prädikat übereinstimmt, optional absteigend in Arrays oder Strukturen.
FindHandler(const TLVReader & aReader, size_t aDepth, void *aContext)
Suchen Sie im bereitgestellten TLV-Reader nach dem angegebenen Tag.
FindPredicateHandler(const TLVReader & aReader, size_t aDepth, void *aContext)
Iterate(TLVReader & aReader, size_t aDepth, IterateHandler aHandler, void *aContext, bool aRecurse)
Durchläuft die TLV-Daten, auf die von aReader verwiesen wird, und rufen Sie aHandler für jedes besuchte TLV-Element im Kontext von aContext auf.
Iterate(const TLVReader & aReader, IterateHandler aHandler, void *aContext)
Durchläuft die TLV-Daten, auf die von aReader verwiesen wird, und rufen Sie aHandler für jedes besuchte TLV-Element im Kontext von aContext auf.
Iterate(const TLVReader & aReader, IterateHandler aHandler, void *aContext, const bool aRecurse)
Durchläuft die TLV-Daten, auf die von aReader verwiesen wird, und rufen Sie aHandler für jedes besuchte TLV-Element im Kontext von aContext auf.

Strukturen

nl::Weave::TLV::Utilities::FindContext
nl::Weave::TLV::Utilities::FindPredicateContext

Typedefs

IterateHandler

WEAVE_ERROR(* IterateHandler)(const TLVReader &aReader, size_t aDepth, void *aContext)

Funktionen

Anzahl

WEAVE_ERROR Count(
  const TLVReader & aReader,
  size_t & aCount
)

Zählen Sie die Anzahl der TLV-Elemente innerhalb des angegebenen TLV-Readers absteigend in Arrays oder Strukturen.

Details
Parameter
[in] aReader
Eine schreibgeschützte Referenz zum TLV-Lesegerät, für das die Anzahl der TLV-Elemente gezählt werden soll.
[in,out] aCount
Ein Verweis auf den Speicher für die zurückgegebene Anzahl. Diese wird vor der Zählung auf null (0) initialisiert und auf die Anzahl der bei Erfolg gezählten Elemente festgelegt.
Rückgabewerte
WEAVE_NO_ERROR
Bei Erfolg.

Anzahl

WEAVE_ERROR Count(
  const TLVReader & aReader,
  size_t & aCount,
  const bool aRecurse
)

Zählen Sie die Anzahl der TLV-Elemente innerhalb des angegebenen TLV-Readers und optional absteigend in Arrays oder Strukturen.

Details
Parameter
[in] aReader
Eine schreibgeschützte Referenz zum TLV-Lesegerät, für das die Anzahl der TLV-Elemente gezählt werden soll.
[in,out] aCount
Ein Verweis auf den Speicher für die zurückgegebene Anzahl. Diese wird vor der Zählung auf null (0) initialisiert und auf die Anzahl der bei Erfolg gezählten Elemente festgelegt.
[in] aRecurse
Boolescher Wert, der angibt, ob mit (true) oder nicht (false) erkannte Arrays oder Strukturen herabgestuft werden sollen.
Rückgabewerte
WEAVE_NO_ERROR
Bei Erfolg.

CountHandler

WEAVE_ERROR CountHandler(
  const TLVReader & aReader,
  size_t aDepth,
  void *aContext
)

Erhöhen Sie den Zähler bei der Iteration über die TLV-Daten.

Details
Parameter
[in] aReader
Ein Verweis auf das TLV-Lesegerät, das TLV-Daten enthält, um die Anzahl der TLV-Elemente zu zählen.
[in] aDepth
Die aktuelle Tiefe der TLV-Daten.
[in,out] aContext
Ein Zeiger auf den Handler-spezifischen Kontext, der ein Zeiger auf den Speicher für den Zählwert ist.
Rückgabewerte
WEAVE_NO_ERROR
Bei Erfolg.
WEAVE_ERROR_INVALID_ARGUMENT
Wenn aContext NULL ist.

Suchen

WEAVE_ERROR Find(
  const TLVReader & aReader,
  const uint64_t & aTag,
  TLVReader & aResult
)

Suchen Sie im bereitgestellten TLV-Reader nach dem angegebenen Tag.

Details
Parameter
[in] aReader
Ein schreibgeschützter Verweis auf den TLV-Reader, in dem das angegebene Tag gefunden wird.
[in] aTag
Ein schreibgeschützter Verweis auf das zu suchende TLV-Tag.
[out] aResult
Ein Verweis auf die Speicherung eines TLV-Lesegeräts, das bei Erfolg am angegebenen Tag platziert wird.
Rückgabewerte
WEAVE_NO_ERROR
Bei Erfolg.
WEAVE_ERROR_TLV_TAG_NOT_FOUND
Wenn das angegebene Tag aTag nicht gefunden wurde.

Suchen

WEAVE_ERROR Find(
  const TLVReader & aReader,
  const uint64_t & aTag,
  TLVReader & aResult,
  const bool aRecurse
)

Sucht mithilfe des bereitgestellten TLV-Readers nach dem angegebenen Tag, optional absteigend in Arrays oder Strukturen.

Details
Parameter
[in] aReader
Ein schreibgeschützter Verweis auf den TLV-Reader, in dem das angegebene Tag gefunden wird.
[in] aTag
Ein schreibgeschützter Verweis auf das zu suchende TLV-Tag.
[out] aResult
Ein Verweis auf die Speicherung eines TLV-Lesegeräts, das bei Erfolg am angegebenen Tag platziert wird.
[in] aRecurse
Boolescher Wert, der angibt, ob mit (true) oder nicht (false) erkannte Arrays oder Strukturen herabgestuft werden sollen.
Rückgabewerte
WEAVE_NO_ERROR
Bei Erfolg.
WEAVE_ERROR_TLV_TAG_NOT_FOUND
Wenn das angegebene Tag aTag nicht gefunden wurde.

Suchen

WEAVE_ERROR Find(
  const TLVReader & aReader,
  IterateHandler aPredicate,
  void *aContext,
  TLVReader & aResult
)

Sucht in absteigender Reihenfolge in Arrays oder Strukturen nach dem ersten Element, das mit dem Prädikat innerhalb des TLV-Readers übereinstimmt.

aPredicate wird auf jedes besuchte TLV-Element angewendet. aPredicate gibt WEAVE_ERROR_MAX für die übereinstimmenden Elemente, WEAVE_NO_ERROR für nicht übereinstimmende Elemente und jeden anderen Wert zum Beenden der Suche zurück.

Details
Parameter
[in] aReader
Ein schreibgeschützter Verweis auf den TLV-Reader, in dem das mit dem Prädikat übereinstimmende Element gefunden wird.
[in] aPredicate
Ein Prädikat, das auf jedes TLV-Element angewendet werden soll. Um die Wiederverwendung von Code zu unterstützen, hat aPredicate den Typ IterateHandler. Der Rückgabewert von aPredicate steuert die Suche: WEAVE_ERROR_MAX signalisiert, dass das gewünschte Element gefunden wurde, WEAVE_NO_ERROR, dass das gewünschte Element nicht gefunden wurde. Alle anderen Werte signalisieren, dass die Suche beendet werden sollte.
[in] aContext
Ein optionaler Zeiger auf vom Aufrufer bereitgestellte Kontextdaten.
[out] aResult
Ein Verweis auf die Speicherung eines TLV-Lesegeräts, das bei Erfolg am angegebenen Tag platziert wird.
Rückgabewerte
WEAVE_NO_ERROR
Bei Erfolg.
WEAVE_ERROR_TLV_TAG_NOT_FOUND
Wenn das angegebene Element vom Typ aPredicate nicht gefunden wurde

Suchen

WEAVE_ERROR Find(
  const TLVReader & aReader,
  IterateHandler aPredicate,
  void *aContext,
  TLVReader & aResult,
  const bool aRecurse
)

Sucht im TLV-Reader nach dem ersten Element, das mit dem Prädikat übereinstimmt, optional absteigend in Arrays oder Strukturen.

aPredicate wird auf jedes besuchte TLV-Element angewendet. aPredicate gibt WEAVE_ERROR_MAX für die übereinstimmenden Elemente, WEAVE_NO_ERROR für nicht übereinstimmende Elemente und jeden anderen Wert zum Beenden der Suche zurück.

Details
Parameter
[in] aReader
Ein schreibgeschützter Verweis auf den TLV-Reader, in dem das mit dem Prädikat übereinstimmende Element gefunden wird.
[in] aPredicate
Ein Prädikat, das auf jedes TLV-Element angewendet werden soll. Um die Wiederverwendung von Code zu unterstützen, hat aPredicate den Typ IterateHandler. Der Rückgabewert von aPredicate steuert die Suche: WEAVE_ERROR_MAX signalisiert, dass das gewünschte Element gefunden wurde, WEAVE_NO_ERROR, dass das gewünschte Element nicht gefunden wurde. Alle anderen Werte signalisieren, dass die Suche beendet werden sollte.
[in] aContext
Ein optionaler Zeiger auf vom Aufrufer bereitgestellte Kontextdaten.
[out] aResult
Ein Verweis auf die Speicherung eines TLV-Lesegeräts, das bei Erfolg am angegebenen Tag platziert wird.
[in] aRecurse
Boolescher Wert, der angibt, ob mit (true) oder nicht (false) erkannte Arrays oder Strukturen herabgestuft werden sollen.
Rückgabewerte
WEAVE_NO_ERROR
Bei Erfolg.
WEAVE_ERROR_TLV_TAG_NOT_FOUND
Wenn das angegebene Element vom Typ aPredicate nicht gefunden wurde

FindHandler

WEAVE_ERROR FindHandler(
  const TLVReader & aReader,
  size_t aDepth,
  void *aContext
)

Suchen Sie im bereitgestellten TLV-Reader nach dem angegebenen Tag.

Details
Parameter
[in] aReader
Ein schreibgeschützter Verweis auf den TLV-Reader, in dem das angegebene Tag gefunden wird.
[in] aDepth
Die aktuelle Tiefe der TLV-Daten.
[in,out] aContext
Ein Zeiger auf den Handler-spezifischen Kontext.
Rückgabewerte
WEAVE_NO_ERROR
Bei Erfolg.
WEAVE_ERROR_INVALID_ARGUMENT
Wenn aContext NULL ist.
WEAVE_ERROR_MAX
Wenn das angegebene Tag gefunden wird.

FindPredicateHandler

WEAVE_ERROR FindPredicateHandler(
  const TLVReader & aReader,
  size_t aDepth,
  void *aContext
)

Verbessern und wieder testen

WEAVE_ERROR Iterate(
  TLVReader & aReader,
  size_t aDepth,
  IterateHandler aHandler,
  void *aContext,
  bool aRecurse
)

Durchläuft die TLV-Daten, auf die von aReader verwiesen wird, und rufen Sie aHandler für jedes besuchte TLV-Element im Kontext von aContext auf.

Die Iteration wird abgebrochen, wenn aHandler einen anderen Wert als WEAVE_NO_ERROR zurückgibt.

Details
Parameter
[in] aReader
Ein Verweis auf den TLV-Reader, der die zu iterierenden TLV-Daten enthält.
[in] aDepth
Die aktuelle Tiefe der TLV-Daten.
[in] aHandler
Ein Callback, der für das aktuell besuchte TLV-Element aufgerufen werden soll.
[in,out] aContext
Ein optionaler Zeiger auf vom Aufrufer bereitgestellte Kontextdaten.
[in] aRecurse
Boolescher Wert, der angibt, ob mit (true) oder nicht (false) erkannte Arrays oder Strukturen herabgestuft werden sollen.
Rückgabewerte
WEAVE_END_OF_TLV
Bei einer erfolgreichen Iteration bis zum Ende einer TLV-Codierung oder an das Ende eines TLV-Containers.
The
Letzter von aHandler zurückgegebener Wert, falls abweichend von WEAVE_NO_ERROR

Verbessern und wieder testen

WEAVE_ERROR Iterate(
  const TLVReader & aReader,
  IterateHandler aHandler,
  void *aContext
)

Durchläuft die TLV-Daten, auf die von aReader verwiesen wird, und rufen Sie aHandler für jedes besuchte TLV-Element im Kontext von aContext auf.

Die Iteration wird abgebrochen, wenn aHandler einen anderen Wert als WEAVE_NO_ERROR zurückgibt.

Details
Parameter
[in] aReader
Ein Verweis auf den TLV-Reader, der die zu iterierenden TLV-Daten enthält.
[in] aHandler
Ein Callback, der für das aktuell besuchte TLV-Element aufgerufen werden soll.
[in,out] aContext
Ein optionaler Zeiger auf vom Aufrufer bereitgestellte Kontextdaten.
Rückgabewerte
WEAVE_END_OF_TLV
Bei einer erfolgreichen Iteration bis zum Ende einer TLV-Codierung oder an das Ende eines TLV-Containers.
WEAVE_ERROR_INVALID_ARGUMENT
Wenn aHandler NULL ist.
The
Letzter von aHandler zurückgegebener Wert, falls abweichend von WEAVE_NO_ERROR

Verbessern und wieder testen

WEAVE_ERROR Iterate(
  const TLVReader & aReader,
  IterateHandler aHandler,
  void *aContext,
  const bool aRecurse
)

Durchläuft die TLV-Daten, auf die von aReader verwiesen wird, und rufen Sie aHandler für jedes besuchte TLV-Element im Kontext von aContext auf.

Die Iteration wird abgebrochen, wenn aHandler einen anderen Wert als WEAVE_NO_ERROR zurückgibt.

Details
Parameter
[in] aReader
Ein Verweis auf den TLV-Reader, der die zu iterierenden TLV-Daten enthält.
[in] aHandler
Ein Callback, der für das aktuell besuchte TLV-Element aufgerufen werden soll.
[in,out] aContext
Ein optionaler Zeiger auf vom Aufrufer bereitgestellte Kontextdaten.
[in] aRecurse
Boolescher Wert, der angibt, ob mit (true) oder nicht (false) erkannte Arrays oder Strukturen herabgestuft werden sollen.
Rückgabewerte
WEAVE_END_OF_TLV
Bei einer erfolgreichen Iteration bis zum Ende einer TLV-Codierung oder an das Ende eines TLV-Containers.
WEAVE_ERROR_INVALID_ARGUMENT
Wenn aHandler NULL ist.
The
Letzter von aHandler zurückgegebener Wert, falls abweichend von WEAVE_NO_ERROR