Loading...
Searching...
No Matches
opendsme.h
1/*
2 * Copyright (C) 2022 HAW Hamburg
3 *
4 * This file is subject to the terms and conditions of the GNU Lesser
5 * General Public License v2.1. See the file LICENSE in the top level
6 * directory for more details.
7 */
8
187#ifndef OPENDSME_OPENDSME_H
188#define OPENDSME_OPENDSME_H
189
190#include <stdbool.h>
191#include "byteorder.h"
192#include "net/gnrc/netif.h"
193#include "net/gnrc/pktbuf.h"
194
198#ifndef CONFIG_OPENDSME_GNRC_PKTSNIP_TYPE
199#define CONFIG_OPENDSME_GNRC_PKTSNIP_TYPE GNRC_NETTYPE_UNDEF
200#endif
201
205#ifndef CONFIG_OPENDSME_MAX_NEIGHBOURS
206#define CONFIG_OPENDSME_MAX_NEIGHBOURS (20U)
207#endif
208
218#ifndef CONFIG_OPENDSME_MAX_LOST_BEACONS
219#define CONFIG_OPENDSME_MAX_LOST_BEACONS (8U)
220#endif
221
229#ifndef CONFIG_OPENDSME_CAP_QUEUE_SIZE
230#define CONFIG_OPENDSME_CAP_QUEUE_SIZE (8U)
231#endif
232
241#ifndef CONFIG_OPENDSME_CFP_QUEUE_SIZE
242#define CONFIG_OPENDSME_CFP_QUEUE_SIZE (22U)
243#endif
244
245#ifdef __cplusplus
246extern "C" {
247#endif
248
259
275int gnrc_netif_opendsme_create(gnrc_netif_t *netif, char *stack, int stacksize,
276 char priority, const char *name, netdev_t *dev);
277
278#ifdef __cplusplus
279}
280#endif
281
282#endif /* OPENDSME_OPENDSME_H */
283
Functions to work with different byte orders.
Definition for GNRC's network interfaces.
int gnrc_netif_opendsme_create(gnrc_netif_t *netif, char *stack, int stacksize, char priority, const char *name, netdev_t *dev)
Creates an openDSME network interface.
Interface definition for the global network buffer.
Representation of a network interface.
Definition netif.h:135
DSME Allocation descriptor.
Definition opendsme.h:252
bool tx
whether the GTS is TX
Definition opendsme.h:257
uint8_t slot_id
slot ID
Definition opendsme.h:255
uint8_t channel_id
channel ID
Definition opendsme.h:256
uint8_t superframe_id
superframe ID
Definition opendsme.h:254
network_uint16_t addr
neighbour address
Definition opendsme.h:253
Structure to hold driver state.
Definition netdev.h:365
A 16 bit integer in big endian aka network byte order.
Definition byteorder.h:74