ESP-IDF
ot::BorderRouter::RoutingManager::RioAdvertiser
is only used within ESP-IDF.
Symbol previews are coming soon...
Symbols
loading...
Files
loading...
Summary
Syntax
Methods
Examples
References
Call Tree
Data Use
Class Tree
Override Tree
Implementations
Instances
Lifecycle
SourceVu
ESP-IDF Framework and Examples
ESP-IDF
ot::BorderRouter::RoutingManager::RioAdvertiser
ot::BorderRouter::RoutingManager::RioAdvertiser class
Syntax
Show:
Summary
Declaration
from
routing_manager.hpp:1220
class
RioAdvertiser
:
public
InstanceLocator
{
public
:
explicit
RioAdvertiser
(
Instance
&
aInstance
)
;
RoutePreference
GetPreference
(
void
)
const
{
return
mPreference
;
}
void
SetPreference
(
RoutePreference
aPreference
)
;
void
ClearPreference
(
void
)
;
void
HandleRoleChanged
(
void
)
;
Error
AppendRios
(
RouterAdvert
::
TxMessage
&
aRaMessage
)
;
Error
InvalidatPrevRios
(
RouterAdvert
::
TxMessage
&
aRaMessage
)
;
bool
HasAdvertised
(
const
Ip6
::
Prefix
&
aPrefix
)
const
{
return
mPrefixes
.
ContainsMatching
(
aPrefix
)
;
}
uint16_t
GetAdvertisedRioCount
(
void
)
const
{
return
mPrefixes
.
GetLength
(
)
;
}
void
HandleTimer
(
void
)
;
private
:
static
constexpr
uint32_t
kDeprecationTime
=
TimeMilli
::
SecToMsec
(
300
)
;
struct
RioPrefix
:
public
Clearable
<
RioPrefix
>
{
bool
Matches
(
const
Ip6
::
Prefix
&
aPrefix
)
const
{
return
(
mPrefix
==
aPrefix
)
;
}
Ip6
::
Prefix
mPrefix
;
bool
mIsDeprecating
;
TimeMilli
mExpirationTime
;
}
;
struct
RioPrefixArray
:
#if
OPENTHREAD_CONFIG_BORDER_ROUTING_USE_HEAP_ENABLE
public
Heap
::
Array
<
RioPrefix
>
#else
public
Array
<
RioPrefix
,
2
*
kMaxOnMeshPrefixes
>
#endif
{
void
Add
(
const
Ip6
::
Prefix
&
aPrefix
)
;
}
;
void
SetPreferenceBasedOnRole
(
void
)
;
void
UpdatePreference
(
RoutePreference
aPreference
)
;
Error
AppendRio
(
const
Ip6
::
Prefix
&
aPrefix
,
uint32_t
aRouteLifetime
,
RoutePreference
aPreference
,
RouterAdvert
::
TxMessage
&
aRaMessage
)
;
using
RioTimer
=
TimerMilliIn
<
RoutingManager
,
&
RoutingManager
::
HandleRioAdvertiserimer
>
;
RioPrefixArray
mPrefixes
;
RioTimer
mTimer
;
RoutePreference
mPreference
;
bool
mUserSetPreference
;
}
;
Fields
Field
Declared as
ot::BorderRouter::RoutingManager::RioAdvertiser::kDeprecationTime
ot::BorderRouter::RoutingManager::RioAdvertiser::mPrefixes
RioPrefixArray
ot::BorderRouter::RoutingManager::RioAdvertiser::mTimer
RioTimer
ot::BorderRouter::RoutingManager::RioAdvertiser::mPreference
RoutePreference
ot::BorderRouter::RoutingManager::RioAdvertiser::mUserSetPreference
bool
Methods
GetPreference() const
SetPreference()
ClearPreference()
HandleRoleChanged()
AppendRios()
InvalidatPrevRios()
HasAdvertised() const
GetAdvertisedRioCount() const
HandleTimer()
SetPreferenceBasedOnRole()
UpdatePreference()
AppendRio()
Examples
References
from
examples
Code
Location
Scope
Referrer
class
RioAdvertiser
:
public
InstanceLocator
routing_manager.hpp:1220
RoutingManager
::
RioAdvertiser
::
RioAdvertiser
(
Instance
&
aInstance
)
routing_manager.cpp:3032
ot::BorderRouter::RoutingManager::RioAdvertiser::RioAdvertiser()
void
RoutingManager
::
RioAdvertiser
::
SetPreference
(
RoutePreference
aPreference
)
routing_manager.cpp:3040
ot::BorderRouter::RoutingManager::RioAdvertiser::SetPreference()
void
RoutingManager
::
RioAdvertiser
::
ClearPreference
(
void
)
routing_manager.cpp:3047
ot::BorderRouter::RoutingManager::RioAdvertiser::ClearPreference()
void
RoutingManager
::
RioAdvertiser
::
HandleRoleChanged
(
void
)
routing_manager.cpp:3059
ot::BorderRouter::RoutingManager::RioAdvertiser::HandleRoleChanged()
void
RoutingManager
::
RioAdvertiser
::
SetPreferenceBasedOnRole
(
void
)
routing_manager.cpp:3067
ot::BorderRouter::RoutingManager::RioAdvertiser::SetPreferenceBasedOnRole()
void
RoutingManager
::
RioAdvertiser
::
UpdatePreference
(
RoutePreference
aPreference
)
routing_manager.cpp:3073
ot::BorderRouter::RoutingManager::RioAdvertiser::UpdatePreference()
Error
RoutingManager
::
RioAdvertiser
::
InvalidatPrevRios
(
RouterAdvert
::
TxMessage
&
aRaMessage
)
routing_manager.cpp:3087
ot::BorderRouter::RoutingManager::RioAdvertiser::InvalidatPrevRios()
Error
RoutingManager
::
RioAdvertiser
::
AppendRios
(
RouterAdvert
::
TxMessage
&
aRaMessage
)
routing_manager.cpp:3109
ot::BorderRouter::RoutingManager::RioAdvertiser::AppendRios()
Error
RoutingManager
::
RioAdvertiser
::
AppendRio
(
const
Ip6
::
Prefix
&
aPrefix
,
routing_manager.cpp:3240
ot::BorderRouter::RoutingManager::RioAdvertiser::AppendRio()
void
RoutingManager
::
RioAdvertiser
::
HandleTimer
(
void
)
routing_manager.cpp:3254
ot::BorderRouter::RoutingManager::RioAdvertiser::HandleTimer()
void
RoutingManager
::
RioAdvertiser
::
RioPrefixArray
::
Add
(
const
Ip6
::
Prefix
&
aPrefix
)
routing_manager.cpp:3259
ot::BorderRouter::RoutingManager::RioAdvertiser::RioPrefixArray::Add()
RioAdvertiser
mRioAdvertiser
;
routing_manager.hpp:1578
ot::BorderRouter::RoutingManager
ot::BorderRouter::RoutingManager::mRioAdvertiser
Call Tree
from
examples
All items filtered out
All items filtered out
Data Use
from
examples
All items filtered out
All items filtered out
Class Tree
from
examples
ot::BorderRouter::RoutingManager::RioAdvertiser
is inherited by 1 classes:
All items filtered out
ot::BorderRouter::RoutingManager::RioAdvertiser
ot::InstanceLocator
All items filtered out
Override Tree
from
examples
All items filtered out
All items filtered out
Implementations
from
examples
All items filtered out
All items filtered out
Instances
from
examples
Instance
Scope
Location
Project
ot::BorderRouter::RoutingManager::mRioAdvertiser
ot::BorderRouter::RoutingManager
routing_manager.hpp:1578
Lifecycle
from
examples
All items filtered out
All items filtered out