Nol.A SDK Library 26.11.2
For IoT System Software Development
Loading...
Searching...
No Matches
IPv6LoWPAN Class Reference

IPv6 over Low-power WPAN (6LoWPAN). More...

#include <IPv6LoWPAN.hpp>

Inheritance diagram for IPv6LoWPAN:
IPv6Interface

Public Member Functions

 IPv6LoWPAN (IEEE802_15_4Mac &mac)
 IPv6LoWPAN 인스턴스를 생성합니다.
error_t begin () override
error_t getIID (uint8_t *dst) override
bool isInMulticastGroup (const IPv6Address &mcaddr) override
error_t send (uint8_t nxhop, IPv6PacketBuffer *ippkt) override
void receiveRS (IPv6::Header_t &ip6, void *msg, uint16_t len) override
void receiveRA (IPv6::Header_t &ip6, void *msg, uint16_t len) override
void receiveNS (IPv6::Header_t &ip6, void *msg, uint16_t len) override
void receiveNA (IPv6::Header_t &ip6, void *msg, uint16_t len) override
void receiveRedirect (IPv6::Header_t &ip6, void *msg, uint16_t len) override
void confirmReach (uint8_t neigh) override
void onTick () override
void onStateChanged () override
Public Member Functions inherited from IPv6Interface
 IPv6Interface (Type_t type, uint8_t neigh_list_len, uint8_t prefix_list_len, uint16_t mtu)
error_t getAddress (IPv6Address::Type_t type, IPv6Address &dst)
 Get an IPv6 address assigned to the inf interface.
error_t getAddress (IPv6Address::Type_t type, uint8_t *dst)
uint8_t setPrefix (const IPv6Address &prefix_addr, uint8_t prefix_len, uint32_t lifetime, uint32_t pref_lifetime, bool autoconf)
 Set a prefix to an IPv6 interface.
void setStateNotifier (void(*func)(IPv6Interface &, State_t))
bool isAttached ()
State_t setState (State_t s)

Additional Inherited Members

Public Types inherited from IPv6Interface
enum  Type_t {
  TYPE_UNKNOWN = 0 , TYPE_6LOWPAN = 1 , TYPE_ETHERNET = 2 , TYPE_PPP = 3 ,
  TYPE_6LPWAN = 4
}
enum  State_t {
  STATE_NONE = 0 , STATE_BECOMING_HOST = 1 , STATE_DUPLICATE = 2 , STATE_HOST = 3 ,
  STATE_BECOMING_ROUTER = 4 , STATE_ROUTER = 5
}
Static Public Member Functions inherited from IPv6Interface
static const char * GetStateString (State_t)
Protected Member Functions inherited from IPv6Interface
bool hasIID (const uint8_t *iid)
virtual uint8_t addNeighbor (const IPv6Address &addr)
void removeNeighbor (uint8_t n)
IPv6Neighbor * getNeighbor (const IPv6Address &addr)
uint8_t getNeighborIndex (const IPv6Address &addr)
Protected Attributes inherited from IPv6Interface
bool ll_dad_passed
uint8_t def_hop_limit
const uint16_t MTU
uint16_t pmtu
Type_t dev_type
IPv6Prefix ** prefix = NULL
const uint8_t MAX_NUM_PREFIX
uint8_t num_valid_prefix
IPv6Neighbor ** neighbor = NULL
const uint8_t MAX_NUM_NEIGH
State_t state
void(* notify )(IPv6Interface &, State_t) = NULL
IPv6Interface * next = NULL

Detailed Description

IPv6 over Low-power WPAN (6LoWPAN).

Constructor & Destructor Documentation

◆ IPv6LoWPAN()

IPv6LoWPAN::IPv6LoWPAN ( IEEE802_15_4Mac & mac)

IPv6LoWPAN 인스턴스를 생성합니다.

Parameters
mac6LoWPAN에서 사용할 IEEE 802.15.4 MAC

Member Function Documentation

◆ confirmReach()

void IPv6LoWPAN::confirmReach ( uint8_t neigh)
overridevirtual

Implements IPv6Interface.

◆ getIID()

error_t IPv6LoWPAN::getIID ( uint8_t * dst)
overridevirtual

Implements IPv6Interface.

◆ isInMulticastGroup()

bool IPv6LoWPAN::isInMulticastGroup ( const IPv6Address & mcaddr)
overridevirtual

Implements IPv6Interface.

◆ onStateChanged()

void IPv6LoWPAN::onStateChanged ( )
overridevirtual

Implements IPv6Interface.

◆ onTick()

void IPv6LoWPAN::onTick ( )
overridevirtual

Implements IPv6Interface.

◆ receiveNA()

void IPv6LoWPAN::receiveNA ( IPv6::Header_t & ip6,
void * msg,
uint16_t len )
overridevirtual

Implements IPv6Interface.

◆ receiveNS()

void IPv6LoWPAN::receiveNS ( IPv6::Header_t & ip6,
void * msg,
uint16_t len )
overridevirtual

Implements IPv6Interface.

◆ receiveRA()

void IPv6LoWPAN::receiveRA ( IPv6::Header_t & ip6,
void * msg,
uint16_t len )
overridevirtual

Implements IPv6Interface.

◆ receiveRedirect()

void IPv6LoWPAN::receiveRedirect ( IPv6::Header_t & ip6,
void * msg,
uint16_t len )
overridevirtual

Implements IPv6Interface.

◆ receiveRS()

void IPv6LoWPAN::receiveRS ( IPv6::Header_t & ip6,
void * msg,
uint16_t len )
overridevirtual

Implements IPv6Interface.

◆ send()

error_t IPv6LoWPAN::send ( uint8_t nxhop,
IPv6PacketBuffer * ippkt )
overridevirtual

Implements IPv6Interface.


The documentation for this class was generated from the following file: