Desplazamiento lateral

En este módulo, se incluye la abstracción de plataforma para la compatibilidad con multipanel.

Resumen

remotas

otPlatMultipanGetActiveInstance(otInstance **aInstance)
Obtén una instancia que actualmente controla la radio.
otPlatMultipanIidToInstance(uint8_t aIid)
Obtén el puntero de instancia correspondiente al IID determinado.
otPlatMultipanInstanceToIid(otInstance *aInstance)
uint8_t
Obtén el IID correspondiente al puntero de instancia de OpenThread determinado.
otPlatMultipanSetActiveInstance(otInstance *aInstance, bool aCompletePending)
Establece aInstance como la instancia activa actual que controla la radio.
otPlatMultipanSwitchoverDone(otInstance *aInstance, bool aSuccess)
void
La plataforma completó el procedimiento de cambio de interfaz.

remotas

otPlatMultipanGetActiveInstance

otError otPlatMultipanGetActiveInstance(
  otInstance **aInstance
)

Obtén una instancia que actualmente controla la radio.

Si la radio no funciona en paralelo en todas las interfaces, esta función muestra un objeto de instancia al que se le otorgó acceso de radio.

Detalles
Parámetros
[out] aInstance
Es el puntero a la variable para almacenar el puntero de instancia activa.
Valores que se muestran
OT_ERROR_NONE
La propiedad se recuperó correctamente.
OT_ERROR_NOT_IMPLEMENTED
Falló debido a la falta de compatibilidad en la radio.
OT_ERROR_INVALID_COMMAND
La plataforma admite todas las interfaces de forma simultánea.

otPlatMultipanIidToInstance

otInstance * otPlatMultipanIidToInstance(
  uint8_t aIid
)

Obtén el puntero de instancia correspondiente al IID determinado.

Detalles
Parámetros
[in] aIid
Es el IID de la interfaz.
Valores que se muestran
Instance
puntero si aIid tiene una instancia asignada, de lo contrario, nullptr.

otPlatMultipanInstanceToIid

uint8_t otPlatMultipanInstanceToIid(
  otInstance *aInstance
)

Obtén el IID correspondiente al puntero de instancia de OpenThread determinado.

Detalles
Parámetros
[in] aInstance
Estructura de instancias de OpenThread
Valores que se muestran
IID
de la instancia determinada. De lo contrario, se transmitirá el IID.

otPlatMultipanSetActiveInstance

otError otPlatMultipanSetActiveInstance(
  otInstance *aInstance,
  bool aCompletePending
)

Establece aInstance como la instancia activa actual que controla la radio.

Esta función permite seleccionar la instancia actualmente activa en plataformas que no admiten la comunicación paralela en varias interfaces. En otras palabras, si más de una instancia se encuentra en estado de recepción, la llamada a otPlatMultipanSetActiveInstance garantiza que esa instancia especificada será la que la reciba. Esta función se muestra si la solicitud se recibió correctamente. Una vez que se completa el cambio de interfaz, la plataforma debe llamar a otPlatMultipanSwitchoverDone. El cambio de interfaz puede tardar más tiempo si aCompletePending se establece como verdadero.

Detalles
Parámetros
[in] aInstance
Estructura de instancias de OpenThread
[in] aCompletePending
Es verdadero si la operación de radio en curso debe completarse antes del cambio de interfaz (interruptor suave) y falso para forzar el cambio.
Valores que se muestran
OT_ERROR_NONE
Se configuró correctamente la propiedad.
OT_ERROR_BUSY
No se pudo completar la operación debido a otra operación en curso.
OT_ERROR_NOT_IMPLEMENTED
Falló debido a una instancia desconocida o a más instancias que las interfaces disponibles.
OT_ERROR_INVALID_COMMAND
La plataforma admite todas las interfaces de forma simultánea.
OT_ERROR_ALREADY
La interfaz determinada ya está activa.

otPlatMultipanSwitchoverDone

void otPlatMultipanSwitchoverDone(
  otInstance *aInstance,
  bool aSuccess
)

La plataforma completó el procedimiento de cambio de interfaz.

Debe invocarse inmediatamente después de procesar otPlatMultipanSetActiveInstance si no se necesita ningún retraso, o si algunas operaciones de radio más largas deben completarse primero, una vez que se complete por completo el cambio en las interfaces.

Detalles
Parámetros
[in] aInstance
Estructura de instancias de OpenThread
[in] aSuccess
Es verdadero si se cambiaron las interfaces de forma correcta y falso si falla el cambio.

Recursos

Los temas de referencia de la API de OpenThread se originan a partir del código fuente, disponible en GitHub. Para obtener más información o contribuir a nuestra documentación, consulta Recursos.