23#ifndef NET_GNRC_RPL_DODAG_H
24#define NET_GNRC_RPL_DODAG_H
38#ifndef GNRC_RPL_INSTANCES_NUMOF
39#define GNRC_RPL_INSTANCES_NUMOF (1)
45#ifndef GNRC_RPL_PARENTS_NUMOF
46#define GNRC_RPL_PARENTS_NUMOF (3)
bool gnrc_rpl_instance_add(uint8_t instance_id, gnrc_rpl_instance_t **inst)
Add a new RPL instance with the id instance_id.
#define GNRC_RPL_PARENTS_NUMOF
Number of RPL parents.
bool gnrc_rpl_parent_remove(gnrc_rpl_parent_t *parent)
Remove the parent from its DODAG.
gnrc_rpl_parent_t gnrc_rpl_parents[GNRC_RPL_PARENTS_NUMOF]
RPL parent table.
void gnrc_rpl_parent_update(gnrc_rpl_dodag_t *dodag, gnrc_rpl_parent_t *parent)
Update a parent of the dodag.
bool gnrc_rpl_parent_add_by_addr(gnrc_rpl_dodag_t *dodag, ipv6_addr_t *addr, gnrc_rpl_parent_t **parent)
Add a new parent with the IPv6 address addr to the dodag.
#define GNRC_RPL_INSTANCES_NUMOF
Number of RPL instances.
bool gnrc_rpl_instance_remove(gnrc_rpl_instance_t *inst)
Remove a RPL instance with the pointer inst.
void gnrc_rpl_cleanup_start(gnrc_rpl_dodag_t *dodag)
Removes the dodag state of dodag after CONFIG_GNRC_RPL_CLEANUP_TIME milliseconds.
void gnrc_rpl_router_operation(gnrc_rpl_dodag_t *dodag)
Operate as router.
bool gnrc_rpl_dodag_init(gnrc_rpl_instance_t *instance, const ipv6_addr_t *dodag_id, kernel_pid_t iface)
Initialize a new RPL DODAG with the id dodag_id for the instance instance.
bool gnrc_rpl_instance_remove_by_id(uint8_t instance_id)
Remove a RPL instance with the id instance_id.
void gnrc_rpl_leaf_operation(gnrc_rpl_dodag_t *dodag)
Operate as leaf.
gnrc_rpl_instance_t * gnrc_rpl_instance_get(uint8_t instance_id)
Get the RPL instance with the id instance_id.
gnrc_rpl_instance_t gnrc_rpl_instances[GNRC_RPL_INSTANCES_NUMOF]
RPL instance table.
void gnrc_rpl_dodag_remove_all_parents(gnrc_rpl_dodag_t *dodag)
Remove all parents from the dodag.
void gnrc_rpl_local_repair(gnrc_rpl_dodag_t *dodag)
Start a local repair.
int16_t kernel_pid_t
Unique process identifier.
Definitions for IPv6 addresses.
struct gnrc_rpl_instance gnrc_rpl_instance_t
Instance representation.
struct gnrc_rpl_parent gnrc_rpl_parent_t
Parent representation.
struct gnrc_rpl_dodag gnrc_rpl_dodag_t
DODAG representation.
Trickle timer interface definition.
Data type to represent an IPv6 address.