ESP-IDF
ot::Mle::DeviceProperties
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::Mle::DeviceProperties
ot::Mle::DeviceProperties class
Represents device properties. The device properties are used for calculating the local leader weight on the device.
Syntax
Show:
Summary
Declaration
from
mle_types.hpp:305
class
DeviceProperties
:
public
otDeviceProperties
,
public
Clearable
<
DeviceProperties
>
{
public
:
enum
PowerSupply
:
uint8_t
{
kPowerSupplyBattery
=
OT_POWER_SUPPLY_BATTERY
,
kPowerSupplyExternal
=
OT_POWER_SUPPLY_EXTERNAL
,
kPowerSupplyExternalStable
=
OT_POWER_SUPPLY_EXTERNAL_STABLE
,
kPowerSupplyExternalUnstable
=
OT_POWER_SUPPLY_EXTERNAL_UNSTABLE
,
}
;
DeviceProperties
(
void
)
;
void
ClampWeightAdjustment
(
void
)
;
uint8_t
CalculateLeaderWeight
(
void
)
const
;
private
:
static
constexpr
int8_t
kDefaultAdjustment
=
OPENTHREAD_CONFIG_MLE_DEFAULT_LEADER_WEIGHT_ADJUSTMENT
;
static
constexpr
uint8_t
kBaseWeight
=
64
;
static
constexpr
int8_t
kBorderRouterInc
=
+
1
;
static
constexpr
int8_t
kCcmBorderRouterInc
=
+
8
;
static
constexpr
int8_t
kIsUnstableInc
=
-
4
;
static
constexpr
int8_t
kPowerBatteryInc
=
-
8
;
static
constexpr
int8_t
kPowerExternalInc
=
0
;
static
constexpr
int8_t
kPowerExternalStableInc
=
+
4
;
static
constexpr
int8_t
kPowerExternalUnstableInc
=
-
4
;
static
constexpr
int8_t
kMinAdjustment
=
-
16
;
static
constexpr
int8_t
kMaxAdjustment
=
+
16
;
static_assert
(
kDefaultAdjustment
>=
kMinAdjustment
,
"Invalid default weight adjustment"
)
;
static_assert
(
kDefaultAdjustment
<=
kMaxAdjustment
,
"Invalid default weight adjustment"
)
;
}
;
Fields
Field
ot::Mle::DeviceProperties::kDefaultAdjustment
ot::Mle::DeviceProperties::kBaseWeight
ot::Mle::DeviceProperties::kBorderRouterInc
ot::Mle::DeviceProperties::kCcmBorderRouterInc
ot::Mle::DeviceProperties::kIsUnstableInc
ot::Mle::DeviceProperties::kPowerBatteryInc
ot::Mle::DeviceProperties::kPowerExternalInc
ot::Mle::DeviceProperties::kPowerExternalStableInc
ot::Mle::DeviceProperties::kPowerExternalUnstableInc
ot::Mle::DeviceProperties::kMinAdjustment
ot::Mle::DeviceProperties::kMaxAdjustment
Methods
ClampWeightAdjustment()
Clamps the `mLeaderWeightAdjustment` value to the valid range.
CalculateLeaderWeight() const
Calculates the leader weight based on the device properties.
Examples
References
from
examples
Code
Location
Scope
Referrer
class
DeviceProperties
:
public
otDeviceProperties
,
public
Clearable
<
DeviceProperties
>
mle_types.hpp:305
DefineCoreType
(
otCacheEntryIterator
,
AddressResolver
::
Iterator
)
;
address_resolver.hpp:400
DefineCoreType
(
otCacheEntryInfo
,
AddressResolver
::
EntryInfo
)
;
address_resolver.hpp:401
DefineCoreType
(
otBorderAgentId
,
MeshCoP
::
BorderAgent
::
Id
)
;
border_agent.hpp:353
DefineCoreType
(
otChildInfo
,
Child
::
Info
)
;
child.hpp:399
DefineCoreType
(
otCoapTxParameters
,
Coap
::
TxParameters
)
;
coap.hpp:941
DefineCoreType
(
otCoapResource
,
Coap
::
Resource
)
;
coap.hpp:942
DefineCoreType
(
otCoapOption
,
Coap
::
Option
)
;
coap_message.hpp:1175
DefineCoreType
(
otCoapOptionIterator
,
Coap
::
Option
::
Iterator
)
;
coap_message.hpp:1176
DefineCoreType
(
otOperationalDatasetComponents
,
MeshCoP
::
Dataset
::
Components
)
;
dataset.hpp:783
DefineCoreType
(
otOperationalDataset
,
MeshCoP
::
Dataset
::
Info
)
;
dataset.hpp:784
DefineCoreType
(
otDnsQueryConfig
,
Dns
::
Client
::
QueryConfig
)
;
dns_client.hpp:892
DefineCoreType
(
otDnsAddressResponse
,
Dns
::
Client
::
AddressResponse
)
;
dns_client.hpp:893
DefineCoreType
(
otDnsBrowseResponse
,
Dns
::
Client
::
BrowseResponse
)
;
dns_client.hpp:895
DefineCoreType
(
otDnsServiceResponse
,
Dns
::
Client
::
ServiceResponse
)
;
dns_client.hpp:896
DefineCoreType
(
otDnsServiceInfo
,
Dns
::
Client
::
ServiceInfo
)
;
dns_client.hpp:897
DefineCoreType
(
otDnsTxtEntry
,
Dns
::
TxtEntry
)
;
dns_types.hpp:2734
DefineCoreType
(
otDnsTxtEntryIterator
,
Dns
::
TxtEntry
::
Iterator
)
;
dns_types.hpp:2735
DefineCoreType
(
otPlatCryptoEcdsaSignature
,
Crypto
::
Ecdsa
::
P256
::
Signature
)
;
ecdsa.hpp:340
DefineCoreType
(
otPlatCryptoEcdsaKeyPair
,
Crypto
::
Ecdsa
::
P256
::
KeyPair
)
;
ecdsa.hpp:341
DefineCoreType
(
otPlatCryptoEcdsaPublicKey
,
Crypto
::
Ecdsa
::
P256
::
PublicKey
)
;
ecdsa.hpp:342
DefineCoreType
(
otExtendedPanId
,
MeshCoP
::
ExtendedPanId
)
;
extended_panid.hpp:106
DefineCoreType
(
otIcmp6Header
,
Ip6
::
Icmp
::
Header
)
;
icmp6.hpp:337
DefineCoreType
(
otIcmp6Handler
,
Ip6
::
Icmp
::
Handler
)
;
icmp6.hpp:338
DefineCoreType
(
otInstance
,
Instance
)
;
instance.hpp:741
DefineCoreType
(
otBufferInfo
,
Instance
::
BufferInfo
)
;
instance.hpp:742
DefineCoreType
(
otIp4Address
,
Ip4
::
Address
)
;
ip4_types.hpp:661
DefineCoreType
(
otIp4Cidr
,
Ip4
::
Cidr
)
;
ip4_types.hpp:662
DefineCoreType
(
otIp6NetworkPrefix
,
Ip6
::
NetworkPrefix
)
;
ip6_address.hpp:986
DefineCoreType
(
otIp6Prefix
,
Ip6
::
Prefix
)
;
ip6_address.hpp:987
DefineCoreType
(
otIp6InterfaceIdentifier
,
Ip6
::
InterfaceIdentifier
)
;
ip6_address.hpp:988
DefineCoreType
(
otIp6Address
,
Ip6
::
Address
)
;
ip6_address.hpp:989
DefineCoreType
(
otSecurityPolicy
,
SecurityPolicy
)
;
key_manager.hpp:646
DefineCoreType
(
otNetworkKey
,
NetworkKey
)
;
key_manager.hpp:647
DefineCoreType
(
otPskc
,
Pskc
)
;
key_manager.hpp:648
DefineCoreType
(
otExtAddress
,
Mac
::
ExtAddress
)
;
mac_types.hpp:923
DefineCoreType
(
otMacKey
,
Mac
::
Key
)
;
mac_types.hpp:924
DefineCoreType
(
otMeshDiagIp6AddrIterator
,
Utils
::
MeshDiag
::
Ip6AddrIterator
)
;
mesh_diag.hpp:314
DefineCoreType
(
otMeshDiagRouterInfo
,
Utils
::
MeshDiag
::
RouterInfo
)
;
mesh_diag.hpp:315
DefineCoreType
(
otMeshDiagChildInfo
,
Utils
::
MeshDiag
::
ChildInfo
)
;
mesh_diag.hpp:316
DefineCoreType
(
otMeshDiagChildIterator
,
Utils
::
MeshDiag
::
ChildIterator
)
;
mesh_diag.hpp:317
DefineCoreType
(
otThreadLinkInfo
,
ThreadLinkInfo
)
;
mesh_forwarder.hpp:662
DefineCoreType
(
otJoinerPskd
,
MeshCoP
::
JoinerPskd
)
;
meshcop.hpp:515
DefineCoreType
(
otJoinerDiscerner
,
MeshCoP
::
JoinerDiscerner
)
;
meshcop.hpp:516
DefineCoreType
(
otSteeringData
,
MeshCoP
::
SteeringData
)
;
meshcop.hpp:517
DefineCoreType
(
otCommissioningDataset
,
MeshCoP
::
CommissioningDataset
)
;
meshcop.hpp:518
DefineCoreType
(
otMessageBuffer
,
Buffer
)
;
message.hpp:1901
DefineCoreType
(
otMessageSettings
,
Message
::
Settings
)
;
message.hpp:1902
DefineCoreType
(
otMessage
,
Message
)
;
message.hpp:1903
DefineCoreType
(
otMessageQueue
,
MessageQueue
)
;
message.hpp:1904
DefineCoreType
(
otLeaderData
,
Mle
::
LeaderData
)
;
mle_types.hpp:699
DefineCoreType
(
otDeviceProperties
,
Mle
::
DeviceProperties
)
;
mle_types.hpp:702
DefineCoreType
(
otNeighborInfo
,
Neighbor
::
Info
)
;
neighbor.hpp:773
DefineCoreType
(
otNetifAddress
,
Ip6
::
Netif
::
UnicastAddress
)
;
netif.hpp:652
DefineCoreType
(
otNetifMulticastAddress
,
Ip6
::
Netif
::
MulticastAddress
)
;
netif.hpp:653
DefineCoreType
(
otBorderRouterConfig
,
NetworkData
::
OnMeshPrefixConfig
)
;
network_data_types.hpp:400
DefineCoreType
(
otExternalRouteConfig
,
NetworkData
::
ExternalRouteConfig
)
;
network_data_types.hpp:401
DefineCoreType
(
otLowpanContextInfo
,
NetworkData
::
LowpanContextInfo
)
;
network_data_types.hpp:402
DefineCoreType
(
otServiceConfig
,
NetworkData
::
ServiceConfig
)
;
network_data_types.hpp:403
DefineCoreType
(
otServerConfig
,
NetworkData
::
ServiceConfig
::
ServerConfig
)
;
network_data_types.hpp:404
DefineCoreType
(
otNetworkName
,
MeshCoP
::
NetworkName
)
;
network_name.hpp:262
DefineCoreType
(
otPingSenderReply
,
Utils
::
PingSender
::
Reply
)
;
ping_sender.hpp:179
DefineCoreType
(
otPingSenderConfig
,
Utils
::
PingSender
::
Config
)
;
ping_sender.hpp:180
DefineCoreType
(
otPingSenderStatistics
,
Utils
::
PingSender
::
Statistics
)
;
ping_sender.hpp:181
DefineCoreType
(
otRouterInfo
,
Router
::
Info
)
;
router.hpp:215
DefineCoreType
(
otCryptoSha256Hash
,
Crypto
::
Sha256
::
Hash
)
;
sha256.hpp:148
DefineCoreType
(
otMessageInfo
,
Ip6
::
MessageInfo
)
;
socket.hpp:326
DefineCoreType
(
otSockAddr
,
Ip6
::
SockAddr
)
;
socket.hpp:327
DefineCoreType
(
otSrpClientHostInfo
,
Srp
::
Client
::
HostInfo
)
;
srp_client.hpp:1116
DefineCoreType
(
otSrpClientService
,
Srp
::
Client
::
Service
)
;
srp_client.hpp:1117
DefineCoreType
(
otSrpClientBuffersServiceEntry
,
Utils
::
SrpClientBuffers
::
ServiceEntry
)
;
srp_client_buffers.hpp:248
DefineCoreType
(
otSrpServerTtlConfig
,
Srp
::
Server
::
TtlConfig
)
;
srp_server.hpp:1019
DefineCoreType
(
otSrpServerLeaseConfig
,
Srp
::
Server
::
LeaseConfig
)
;
srp_server.hpp:1020
DefineCoreType
(
otSrpServerHost
,
Srp
::
Server
::
Host
)
;
srp_server.hpp:1021
DefineCoreType
(
otSrpServerService
,
Srp
::
Server
::
Service
)
;
srp_server.hpp:1022
DefineCoreType
(
otCryptoKey
,
Crypto
::
Key
)
;
storage.hpp:323
DefineCoreType
(
otTcpEndpoint
,
Ip6
::
Tcp
::
Endpoint
)
;
tcp6.hpp:670
DefineCoreType
(
otTcpListener
,
Ip6
::
Tcp
::
Listener
)
;
tcp6.hpp:671
DefineCoreType
(
otTcpCircularSendBuffer
,
Ip6
::
TcpCircularSendBuffer
)
;
tcp6_ext.hpp:129
DefineCoreType
(
otUdpSocket
,
Ip6
::
Udp
::
SocketHandle
)
;
udp6.hpp:669
DefineCoreType
(
otUdpReceiver
,
Ip6
::
Udp
::
Receiver
)
;
udp6.hpp:670
void
MleRouter
::
SetDeviceProperties
(
const
DeviceProperties
&
aDeviceProperties
)
mle_router.cpp:203
ot::Mle::MleRouter::SetDeviceProperties()
ot::Mle::MleRouter::SetDeviceProperties()::aDeviceProperties
const
DeviceProperties
&
GetDeviceProperties
(
void
)
const
{
return
mDeviceProperties
;
}
mle_router.hpp:154
ot::Mle::MleRouter
ot::Mle::MleRouter::GetDeviceProperties() const
void
SetDeviceProperties
(
const
DeviceProperties
&
aDeviceProperties
)
;
mle_router.hpp:161
ot::Mle::MleRouter::SetDeviceProperties()
ot::Mle::MleRouter::SetDeviceProperties()::aDeviceProperties
DeviceProperties
mDeviceProperties
;
mle_router.hpp:701
ot::Mle::MleRouter
ot::Mle::MleRouter::mDeviceProperties
DeviceProperties
::
DeviceProperties
(
void
)
mle_types.cpp:78
ot::Mle::DeviceProperties::DeviceProperties()
void
DeviceProperties
::
ClampWeightAdjustment
(
void
)
mle_types.cpp:89
ot::Mle::DeviceProperties::ClampWeightAdjustment()
uint8_t
DeviceProperties
::
CalculateLeaderWeight
(
void
)
const
mle_types.cpp:94
ot::Mle::DeviceProperties::CalculateLeaderWeight() const
DefineCoreType
(
otDeviceProperties
,
Mle
::
DeviceProperties
)
;
mle_types.hpp:702
ot::CoreType::Type
DefineMapEnum
(
otPowerSupply
,
Mle
::
DeviceProperties
::
PowerSupply
)
;
mle_types.hpp:703
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::Mle::DeviceProperties
is inherited by 1 classes:
All items filtered out
ot::Mle::DeviceProperties
otDeviceProperties
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::CoreType::Type
mle_types.hpp:702
return
ot::Mle::MleRouter::GetDeviceProperties() const
mle_router.hpp:154
ot::Mle::MleRouter::SetDeviceProperties()::aDeviceProperties
ot::Mle::MleRouter::SetDeviceProperties()
mle_router.hpp:161
ot::Mle::MleRouter::mDeviceProperties
ot::Mle::MleRouter
mle_router.hpp:701
ot::Mle::MleRouter::SetDeviceProperties()::aDeviceProperties
ot::Mle::MleRouter::SetDeviceProperties()
mle_router.cpp:203
Lifecycle
from
examples
All items filtered out
All items filtered out