OpenThread  1.05.03.02
Data Structures | Public Member Functions | Static Public Attributes | Protected Types | Protected Member Functions | Private Member Functions | Static Private Member Functions | Private Attributes | Friends
NetworkData Class Reference

#include <network_data.hpp>

+ Inheritance diagram for NetworkData:
+ Collaboration diagram for NetworkData:

Data Structures

struct  Config
 
class  NetworkDataIterator
 

Public Member Functions

bool ContainsBorderRouterWithRloc (uint16_t aRloc16) const
 
bool ContainsEntriesFrom (const NetworkData &aCompare, uint16_t aRloc16) const
 
bool ContainsExternalRoute (const ExternalRouteConfig &aRoute) const
 
bool ContainsOnMeshPrefix (const OnMeshPrefixConfig &aPrefix) const
 
bool ContainsService (const ServiceConfig &aService) const
 
Error CopyNetworkData (Type aType, uint8_t *aData, uint8_t &aDataLength) const
 
Error CopyNetworkData (Type aType, MutableNetworkData &aNetworkData) const
 
uint8_t CountBorderRouters (RoleFilter aRoleFilter) const
 
Error FindBorderRouters (RoleFilter aRoleFilter, uint16_t aRlocs[], uint8_t &aRlocsLength) const
 
const uint8_t * GetBytes (void) const
 
uint8_t GetLength (void) const
 
Error GetNextExternalRoute (Iterator &aIterator, ExternalRouteConfig &aConfig) const
 
Error GetNextExternalRoute (Iterator &aIterator, uint16_t aRloc16, ExternalRouteConfig &aConfig) const
 
Error GetNextOnMeshPrefix (Iterator &aIterator, OnMeshPrefixConfig &aConfig) const
 
Error GetNextOnMeshPrefix (Iterator &aIterator, uint16_t aRloc16, OnMeshPrefixConfig &aConfig) const
 
Error GetNextServer (Iterator &aIterator, uint16_t &aRloc16) const
 
Error GetNextService (Iterator &aIterator, ServiceConfig &aConfig) const
 
Error GetNextService (Iterator &aIterator, uint16_t aRloc16, ServiceConfig &aConfig) const
 
 NetworkData (Instance &aInstance, const uint8_t *aTlvs=nullptr, uint8_t aLength=0)
 
 NetworkData (Instance &aInstance, const NetworkDataTlv *aStartTlv, const NetworkDataTlv *aEndTlv)
 
- Public Member Functions inherited from InstanceLocator
InstanceGetInstance (void) const
 
- Public Member Functions inherited from GetProvider< InstanceLocator >
Type & Get (void) const
 

Static Public Attributes

static constexpr uint8_t kMaxSize = 254
 Maximum size of Thread Network Data in bytes. More...
 

Protected Types

enum  ServiceMatchMode : uint8_t { kServicePrefixMatch, kServiceExactMatch }
 

Protected Member Functions

const ServiceTlvFindNextService (const ServiceTlv *aPrevServiceTlv, uint32_t aEnterpriseNumber, const ServiceData &aServiceData, ServiceMatchMode aServiceMatchMode) const
 
const ServiceTlvFindNextThreadService (const ServiceTlv *aPrevServiceTlv, const ServiceData &aServiceData, ServiceMatchMode aServiceMatchMode) const
 
const PrefixTlvFindPrefix (const uint8_t *aPrefix, uint8_t aPrefixLength) const
 
const PrefixTlvFindPrefix (const Ip6::Prefix &aPrefix) const
 
const ServiceTlvFindService (uint32_t aEnterpriseNumber, const ServiceData &aServiceData, ServiceMatchMode aServiceMatchMode) const
 
const NetworkDataTlvGetTlvsEnd (void) const
 
const NetworkDataTlvGetTlvsStart (void) const
 
Error SendServerDataNotification (uint16_t aRloc16, bool aAppendNetDataTlv, Coap::ResponseHandler aHandler, void *aContext) const
 
- Protected Member Functions inherited from InstanceLocator
 InstanceLocator (Instance &aInstance)
 
- Protected Member Functions inherited from GetProvider< InstanceLocator >
 GetProvider (void)=default
 

Private Member Functions

Error Iterate (Iterator &aIterator, uint16_t aRloc16, Config &aConfig) const
 

Static Private Member Functions

static bool MatchService (const ServiceTlv &aServiceTlv, uint32_t aEnterpriseNumber, const ServiceData &aServiceData, ServiceMatchMode aServiceMatchMode)
 

Private Attributes

uint8_t mLength
 
const uint8_t * mTlvs
 

Friends

class Leader
 
class MutableNetworkData
 
class Publisher
 
class Service::Manager
 

Detailed Description

This class represents an immutable Network Data.


The documentation for this class was generated from the following files:
© Copyright 1995-2022, Texas Instruments Incorporated. All rights reserved.
Trademarks | Privacy policy | Terms of use | Terms of sale