sfr_types.h
Go to the documentation of this file.
1 /*
2  * Copyright (C) 2019 Freie Universit├Ąt Berlin
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 
18 #ifndef NET_GNRC_SIXLOWPAN_FRAG_SFR_TYPES_H
19 #define NET_GNRC_SIXLOWPAN_FRAG_SFR_TYPES_H
20 
21 #include <stdint.h>
22 
23 #include "bitfield.h"
24 #include "clist.h"
25 #include "evtimer_msg.h"
26 #include "msg.h"
27 #include "xtimer.h"
28 
29 #ifdef __cplusplus
30 extern "C" {
31 #endif
32 
36 typedef union {
37  uint32_t u32;
38  BITFIELD(bf, 32U);
40 
50  uint32_t arq_timeout;
52  uint8_t cur_seq;
53  uint8_t frags_sent;
54  uint8_t window_size;
56  uint8_t retrans;
59 
60 #ifdef __cplusplus
61 }
62 #endif
63 
64 #endif /* NET_GNRC_SIXLOWPAN_FRAG_SFR_TYPES_H */
bitfields operations on bitfields of arbitrary length
Circular linked list.
IPC-based evtimer definitions.
struct gnrc_sixlowpan_frag_sfr_fb gnrc_sixlowpan_frag_sfr_fb_t
Extension for 6LoWPAN fragmentation buffer for selective fragment recovery.
IPC-message event.
Definition: evtimer_msg.h:40
Extension for 6LoWPAN fragmentation buffer for selective fragment recovery.
Definition: sfr_types.h:45
uint8_t frags_sent
Number of fragments sent.
Definition: sfr_types.h:53
uint32_t arq_timeout
Time in microseconds the sender should wait for an RFRAG Acknowledgment.
Definition: sfr_types.h:50
uint8_t window_size
Current window size in number of fragments.
Definition: sfr_types.h:54
uint8_t retrans
Datagram retransmissions.
Definition: sfr_types.h:56
evtimer_msg_event_t arq_timeout_event
Acknowledgment request timeout event.
Definition: sfr_types.h:49
clist_node_t window
Sent fragments of the current window.
Definition: sfr_types.h:57
uint8_t cur_seq
Sequence number for next fragment.
Definition: sfr_types.h:52
List node structure.
Definition: list.h:40
Bitmap type to simplify comparisons.
Definition: sfr_types.h:36
uint32_t u32
numerical version of bitmap
Definition: sfr_types.h:37
BITFIELD(bf, 32U)
bitfield version of bitmap
xtimer interface definitions