nl::Weave::TLV::Utilities

Questo spazio dei nomi include tipi e interfacce di utilità per la gestione e l'utilizzo di Weave TLV.

Riepilogo

Typedef

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

Funzioni

Count(const TLVReader & aReader, size_t & aCount)
Conta il numero di elementi TLV all'interno del lettore TLV specificato, decrescente in array o strutture.
Count(const TLVReader & aReader, size_t & aCount, const bool aRecurse)
Conta il numero di elementi TLV all'interno del lettore TLV specificato, facoltativamente discendendo in array o strutture.
CountHandler(const TLVReader & aReader, size_t aDepth, void *aContext)
Incrementa il contatore durante l'iterazione tramite i dati TLV.
Find(const TLVReader & aReader, const uint64_t & aTag, TLVReader & aResult)
Cerca il tag specificato nel lettore TLV fornito.
Find(const TLVReader & aReader, const uint64_t & aTag, TLVReader & aResult, const bool aRecurse)
Cerca il tag specificato all'interno del lettore TLV fornito, facoltativamente discendendo in array o strutture.
Find(const TLVReader & aReader, IterateHandler aPredicate, void *aContext, TLVReader & aResult)
Cerca il primo elemento che corrisponde al predicato all'interno del lettore TLV, discendendo in array o strutture.
Find(const TLVReader & aReader, IterateHandler aPredicate, void *aContext, TLVReader & aResult, const bool aRecurse)
Cerca il primo elemento corrispondente al predicato all'interno del lettore TLV, facoltativamente, discendendo in array o strutture.
FindHandler(const TLVReader & aReader, size_t aDepth, void *aContext)
Cerca il tag specificato nel lettore TLV fornito.
FindPredicateHandler(const TLVReader & aReader, size_t aDepth, void *aContext)
Iterate(TLVReader & aReader, size_t aDepth, IterateHandler aHandler, void *aContext, bool aRecurse)
Esegui l'iterazione dei dati TLV a cui fa riferimento aReader e richiama aHandler per ogni elemento TLV visitato nel contesto di aContext.
Iterate(const TLVReader & aReader, IterateHandler aHandler, void *aContext)
Esegui l'iterazione dei dati TLV a cui fa riferimento aReader e richiama aHandler per ogni elemento TLV visitato nel contesto di aContext.
Iterate(const TLVReader & aReader, IterateHandler aHandler, void *aContext, const bool aRecurse)
Esegui l'iterazione dei dati TLV a cui fa riferimento aReader e richiama aHandler per ogni elemento TLV visitato nel contesto di aContext.

Strutture

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

Typedef

IterateHandler

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

Funzioni

Conteggio

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

Conta il numero di elementi TLV all'interno del lettore TLV specificato, decrescente in array o strutture.

Dettagli
Parametri
[in] aReader
Un riferimento di sola lettura al lettore TLV per il quale conteggiare il numero di elementi TLV.
[in,out] aCount
Un riferimento allo spazio di archiviazione per il conteggio restituito. Questo valore viene inizializzato su zero (0) prima del conteggio ed è impostato sul numero di elementi conteggiati ai fini del conteggio.
Valori restituiti
WEAVE_NO_ERROR
In caso di successo.

Conteggio

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

Conta il numero di elementi TLV all'interno del lettore TLV specificato, facoltativamente discendendo in array o strutture.

Dettagli
Parametri
[in] aReader
Un riferimento di sola lettura al lettore TLV per il quale conteggiare il numero di elementi TLV.
[in,out] aCount
Un riferimento allo spazio di archiviazione per il conteggio restituito. Questo valore viene inizializzato su zero (0) prima del conteggio ed è impostato sul numero di elementi conteggiati ai fini del conteggio.
[in] aRecurse
Un valore booleano che indica se (true) o meno (false) le matrici o le strutture incontrate devono essere distribuite.
Valori restituiti
WEAVE_NO_ERROR
In caso di successo.

CountHandler

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

Incrementa il contatore durante l'iterazione tramite i dati TLV.

Dettagli
Parametri
[in] aReader
Un riferimento al lettore TLV contenente i dati TLV per conteggiare il numero di elementi TLV.
[in] aDepth
La profondità corrente dei dati TLV.
[in,out] aContext
Un puntatore al contesto specifico del gestore che è un puntatore all'archiviazione per il valore di conteggio.
Valori restituiti
WEAVE_NO_ERROR
In caso di successo.
WEAVE_ERROR_INVALID_ARGUMENT
Se aContext è NULL.

Trova

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

Cerca il tag specificato nel lettore TLV fornito.

Dettagli
Parametri
[in] aReader
Un riferimento di sola lettura al lettore TLV in cui trovare il tag specificato.
[in] aTag
Un riferimento di sola lettura al tag TLV da trovare.
[out] aResult
Un riferimento allo spazio di archiviazione a un lettore TLV che verrà posizionato in corrispondenza del tag specificato in caso di esito positivo.
Valori restituiti
WEAVE_NO_ERROR
In caso di successo.
WEAVE_ERROR_TLV_TAG_NOT_FOUND
Se il tag specificato aTag non è stato trovato.

Trova

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

Cerca il tag specificato all'interno del lettore TLV fornito, facoltativamente discendendo in array o strutture.

Dettagli
Parametri
[in] aReader
Un riferimento di sola lettura al lettore TLV in cui trovare il tag specificato.
[in] aTag
Un riferimento di sola lettura al tag TLV da trovare.
[out] aResult
Un riferimento allo spazio di archiviazione a un lettore TLV che verrà posizionato in corrispondenza del tag specificato in caso di esito positivo.
[in] aRecurse
Un valore booleano che indica se (true) o meno (false) le matrici o le strutture incontrate devono essere distribuite.
Valori restituiti
WEAVE_NO_ERROR
In caso di successo.
WEAVE_ERROR_TLV_TAG_NOT_FOUND
Se il tag specificato aTag non è stato trovato.

Trova

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

Cerca il primo elemento che corrisponde al predicato all'interno del lettore TLV, discendendo in array o strutture.

aPredicate viene applicato a ogni elemento TLV visitato; aPredicate restituisce WEAVE_ERROR_MAX per gli elementi corrispondenti, WEAVE_NO_ERROR per gli elementi non corrispondenti e qualsiasi altro valore per terminare la ricerca.

Dettagli
Parametri
[in] aReader
Un riferimento di sola lettura al lettore TLV in cui trovare l'elemento corrispondente al predicato.
[in] aPredicate
Un predicato da applicare a ogni elemento TLV. Per supportare il riutilizzo del codice, aPredicate è di tipo IterateHandler. Il valore restituito da aPredicate controlla la ricerca: WEAVE_ERROR_MAX indica che l'elemento desiderato è stato trovato, WEAVE_NO_ERROR indica che l'elemento desiderato non è stato trovato e tutti gli altri valori indicano che il saerch deve essere terminato.
[in] aContext
Un puntatore facoltativo ai dati di contesto forniti dal chiamante.
[out] aResult
Un riferimento allo spazio di archiviazione a un lettore TLV che verrà posizionato in corrispondenza del tag specificato in caso di esito positivo.
Valori restituiti
WEAVE_NO_ERROR
In caso di successo.
WEAVE_ERROR_TLV_TAG_NOT_FOUND
Se l'elemento aPredicate specificato non ha trovato l'elemento specificato

Trova

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

Cerca il primo elemento corrispondente al predicato all'interno del lettore TLV, facoltativamente, discendendo in array o strutture.

aPredicate viene applicato a ogni elemento TLV visitato; aPredicate restituisce WEAVE_ERROR_MAX per gli elementi corrispondenti, WEAVE_NO_ERROR per gli elementi non corrispondenti e qualsiasi altro valore per terminare la ricerca.

Dettagli
Parametri
[in] aReader
Un riferimento di sola lettura al lettore TLV in cui trovare l'elemento corrispondente al predicato.
[in] aPredicate
Un predicato da applicare a ogni elemento TLV. Per supportare il riutilizzo del codice, aPredicate è di tipo IterateHandler. Il valore restituito da aPredicate controlla la ricerca: WEAVE_ERROR_MAX indica che l'elemento desiderato è stato trovato, WEAVE_NO_ERROR indica che l'elemento desiderato non è stato trovato e tutti gli altri valori indicano che il saerch deve essere terminato.
[in] aContext
Un puntatore facoltativo ai dati di contesto forniti dal chiamante.
[out] aResult
Un riferimento allo spazio di archiviazione a un lettore TLV che verrà posizionato in corrispondenza del tag specificato in caso di esito positivo.
[in] aRecurse
Un valore booleano che indica se (true) o meno (false) gli array o le strutture incontrati devono essere suddivisi.
Valori restituiti
WEAVE_NO_ERROR
In caso di successo.
WEAVE_ERROR_TLV_TAG_NOT_FOUND
Se l'elemento aPredicate specificato non ha trovato l'elemento specificato

FindHandler

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

Cerca il tag specificato nel lettore TLV fornito.

Dettagli
Parametri
[in] aReader
Un riferimento di sola lettura al lettore TLV in cui trovare il tag specificato.
[in] aDepth
La profondità corrente dei dati TLV.
[in,out] aContext
Un puntatore al contesto specifico del gestore.
Valori restituiti
WEAVE_NO_ERROR
In caso di successo.
WEAVE_ERROR_INVALID_ARGUMENT
Se aContext è NULL.
WEAVE_ERROR_MAX
Se viene trovato il tag specificato.

FindPredicateHandler

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

Iterazione

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

Esegui l'iterazione dei dati TLV a cui fa riferimento aReader e richiama aHandler per ogni elemento TLV visitato nel contesto di aContext.

L'iterazione viene interrotta se aHandler restituisce qualcosa di diverso da WEAVE_NO_ERROR

Dettagli
Parametri
[in] aReader
Un riferimento al lettore TLV contenente i dati TLV da ripetere.
[in] aDepth
La profondità corrente dei dati TLV.
[in] aHandler
Un callback da richiamare per l'elemento TLV attualmente visitato.
[in,out] aContext
Un puntatore facoltativo ai dati di contesto forniti dal chiamante.
[in] aRecurse
Un valore booleano che indica se (true) o meno (false) le matrici o le strutture incontrate devono essere distribuite.
Valori restituiti
WEAVE_END_OF_TLV
In un'iterazione riuscita fino alla fine di una codifica TLV o alla fine di un container TLV.
The
ultimo valore restituito da aHandler, se diverso da WEAVE_NO_ERROR

Iterazione

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

Esegui l'iterazione dei dati TLV a cui fa riferimento aReader e richiama aHandler per ogni elemento TLV visitato nel contesto di aContext.

L'iterazione viene interrotta se aHandler restituisce qualcosa di diverso da WEAVE_NO_ERROR

Dettagli
Parametri
[in] aReader
Un riferimento al lettore TLV contenente i dati TLV da ripetere.
[in] aHandler
Un callback da richiamare per l'elemento TLV attualmente visitato.
[in,out] aContext
Un puntatore facoltativo ai dati di contesto forniti dal chiamante.
Valori restituiti
WEAVE_END_OF_TLV
In un'iterazione riuscita fino alla fine di una codifica TLV o alla fine di un container TLV.
WEAVE_ERROR_INVALID_ARGUMENT
Se aHandler è NULL.
The
ultimo valore restituito da aHandler, se diverso da WEAVE_NO_ERROR

Iterazione

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

Esegui l'iterazione dei dati TLV a cui fa riferimento aReader e richiama aHandler per ogni elemento TLV visitato nel contesto di aContext.

L'iterazione viene interrotta se aHandler restituisce qualcosa di diverso da WEAVE_NO_ERROR

Dettagli
Parametri
[in] aReader
Un riferimento al lettore TLV contenente i dati TLV da ripetere.
[in] aHandler
Un callback da richiamare per l'elemento TLV attualmente visitato.
[in,out] aContext
Un puntatore facoltativo ai dati di contesto forniti dal chiamante.
[in] aRecurse
Un valore booleano che indica se (true) o meno (false) le matrici o le strutture incontrate devono essere distribuite.
Valori restituiti
WEAVE_END_OF_TLV
In un'iterazione riuscita fino alla fine di una codifica TLV o alla fine di un container TLV.
WEAVE_ERROR_INVALID_ARGUMENT
Se aHandler è NULL.
The
ultimo valore restituito da aHandler, se diverso da WEAVE_NO_ERROR