Multipan

Questo modulo include l'astrazione della piattaforma per il supporto multipan.

Riepilogo

Funzioni

otPlatMultipanGetActiveInstance(otInstance **aInstance)
Fai in modo che l'istanza abbia attualmente il controllo della radio.
otPlatMultipanIidToInstance(uint8_t aIid)
Ottieni il puntatore all'istanza corrispondente all'IID specificato.
otPlatMultipanInstanceToIid(otInstance *aInstance)
uint8_t
Ottieni l'IID corrispondente al puntatore di istanza OpenThread specificato.
otPlatMultipanSetActiveInstance(otInstance *aInstance, bool aCompletePending)
Imposta aInstance come istanza attiva corrente che controlla la radio.
otPlatMultipanSwitchoverDone(otInstance *aInstance, bool aSuccess)
void
La piattaforma ha completato la procedura di passaggio dell'interfaccia.

Funzioni

otPlatMultipanGetActiveInstance

otError otPlatMultipanGetActiveInstance(
  otInstance **aInstance
)

Fai in modo che l'istanza abbia attualmente il controllo della radio.

Se il segnale radio non funziona in parallelo su tutte le interfacce, questa funzione restituisce un oggetto istanza con accesso radio concesso.

Dettagli
Parametri
[out] aInstance
Puntatore alla variabile per archiviare il puntatore all'istanza attivo.
Valori restituiti
OT_ERROR_NONE
Proprietà recuperata correttamente.
OT_ERROR_NOT_IMPLEMENTED
Operazione non riuscita a causa della mancanza di supporto nella radio.
OT_ERROR_INVALID_COMMAND
La piattaforma supporta tutte le interfacce contemporaneamente.

otPlatMultipanIidToInstance

otInstance * otPlatMultipanIidToInstance(
  uint8_t aIid
)

Ottieni il puntatore all'istanza corrispondente all'IID specificato.

Dettagli
Parametri
[in] aIid
L'IID dell'interfaccia.
Valori restituiti
Instance
se aIid è assegnata un'istanza, altrimenti nullptr.

otPlatMultipanInstanceToIid

uint8_t otPlatMultipanInstanceToIid(
  otInstance *aInstance
)

Ottieni l'IID corrispondente al puntatore di istanza OpenThread specificato.

Dettagli
Parametri
[in] aInstance
La struttura dell'istanza OpenThread.
Valori restituiti
IID
dell'istanza specificata, altrimenti l'IID di trasmissione.

otPlatMultipanSetActiveInstance

otError otPlatMultipanSetActiveInstance(
  otInstance *aInstance,
  bool aCompletePending
)

Imposta aInstance come istanza attiva corrente che controlla la radio.

Questa funzione consente di selezionare l'istanza attualmente attiva sulle piattaforme che non supportano la comunicazione parallela su più interfacce. In altre parole, se più di un'istanza è in stato di ricezione, la chiamata a otPlatMultipanSetActiveInstance garantisce che quella che riceve sarà l'istanza specificata. Questa funzione restituisce se la richiesta è stata ricevuta correttamente. Una volta completato il cambio di interfaccia, la piattaforma dovrebbe chiamare otPlatMultipanSwitchoverDone. Il passaggio da un'interfaccia all'altra può richiedere più tempo se il criterio aCompletePending viene impostato su true.

Dettagli
Parametri
[in] aInstance
La struttura dell'istanza OpenThread.
[in] aCompletePending
True se l'operazione radio in corso deve essere completata prima del passaggio dell'interfaccia (interruttore flessibile), false per l'opzione forzata.
Valori restituiti
OT_ERROR_NONE
Proprietà impostata.
OT_ERROR_BUSY
Operazione non riuscita a causa di un'altra operazione in corso.
OT_ERROR_NOT_IMPLEMENTED
Operazione non riuscita a causa di un'istanza sconosciuta o più istanze rispetto alle interfacce disponibili.
OT_ERROR_INVALID_COMMAND
La piattaforma supporta tutte le interfacce contemporaneamente.
OT_ERROR_ALREADY
L'interfaccia specificata è già attiva.

otPlatMultipanSwitchoverDone

void otPlatMultipanSwitchoverDone(
  otInstance *aInstance,
  bool aSuccess
)

La piattaforma ha completato la procedura di passaggio dell'interfaccia.

Deve essere richiamato immediatamente dopo l'elaborazione di otPlatMultipanSetActiveInstance se non è necessario alcun ritardo o se è necessario completare prima operazioni radio più lunghe, una volta completato il passaggio nelle interfacce.

Dettagli
Parametri
[in] aInstance
La struttura dell'istanza OpenThread.
[in] aSuccess
True se il cambio di interfaccia è riuscito, false se il passaggio non è riuscito.

Risorse

Gli argomenti di riferimento dell'API OpenThread provengono dal codice sorgente, disponibile su GitHub. Per saperne di più o per contribuire alla nostra documentazione, consulta la sezione Risorse.