nl::Weave::HostPortList

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

Zum Verwalten und Bearbeiten einer Hostportliste, einer kompakten, binärcodierten Sammlung von Tupeln mit Host- und Portkennungen, die mit dem Weave Service Directory verknüpft sind.

Zusammenfassung

Konstruktoren und Zerstörer

HostPortList(void)
Standardkonstruktor (void) der Klasse.
HostPortList(const uint8_t *hostPortList, uint8_t hostPortCount, const uint8_t *suffixList, const uint8_t suffixCount)

Öffentliche Funktionen

Clear(void)
void
Setze die Liste zurück.
Get(uint8_t index, char *hostBuf, uint32_t hostBufSize, uint16_t & port) const
Rufen Sie den Hostnamen und den Port beim angegebenen Index aus der Liste ab.
IsEmpty(void) const
bool
Pop(char *hostBuf, uint32_t hostBufSize, uint16_t & port)
Rufen Sie den ersten Hostnamen und den ersten Port ab und entfernen Sie ihn aus der Liste.

Öffentliche Funktionen

Klar

void Clear(
  void
)

Setze die Liste zurück.

Get

WEAVE_ERROR Get(
  uint8_t index,
  char *hostBuf,
  uint32_t hostBufSize,
  uint16_t & port
) const 

Rufen Sie den Hostnamen und den Port beim angegebenen Index aus der Liste ab.

Details
Parameter
[in] index
Die Position in der Liste, die den Hostnamen und den Port zurückgibt.
[in,out] hostBuf
Ein Zeiger auf den Speicher, in den der Hostname kopiert werden soll.
[in] hostBufSize
Der in hostBuf verfügbare Speicherplatz.
[out] port
Die Portnummer.
Rückgabewerte
WEAVE_ERROR_INVALID_ARGUMENT
Der angeforderte Index überschreitet die Größe der Liste.
WEAVE_ERROR_UNSUPPORTED_HOST_PORT_ELEMENT
Der Typ des angeforderten Hostport-Elements wird nicht unterstützt.
WEAVE_ERROR_BUFFER_TOO_SMALL
Der Hostname des Hostports ist länger als der bereitgestellte Puffer.
WEAVE_NO_ERROR
Bei Erfolg.

HostPortList

 HostPortList(
  void
)

Standardkonstruktor (void) der Klasse.

HostPortList

 HostPortList(
  const uint8_t *hostPortList,
  uint8_t hostPortCount,
  const uint8_t *suffixList,
  const uint8_t suffixCount
)

IsEmpty

bool IsEmpty(
  void
) const 

Pop

WEAVE_ERROR Pop(
  char *hostBuf,
  uint32_t hostBufSize,
  uint16_t & port
)

Rufen Sie den ersten Hostnamen und den ersten Port ab und entfernen Sie ihn aus der Liste.

Details
Parameter
[in,out] hostBuf
Ein Zeiger auf den Speicher, in den der Hostname kopiert werden soll.
[in] hostBufSize
Der in hostBuf verfügbare Speicherplatz.
[out] port
Die Portnummer.
Rückgabewerte
WEAVE_ERROR_HOST_PORT_LIST_EMPTY
Die Liste enthält keine Einträge.
WEAVE_ERROR_UNSUPPORTED_HOST_PORT_ELEMENT
Der Typ des gefundenen Hostport-Elements wird nicht unterstützt.
WEAVE_ERROR_BUFFER_TOO_SMALL
Der Hostname des Hostports ist länger als der bereitgestellte Puffer.
WEAVE_NO_ERROR
Bei Erfolg.