Loading...
Searching...
No Matches
hdr.h
Go to the documentation of this file.
1/*
2 * Copyright (C) 2017 INRIA
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
19#ifndef NET_GNRC_GOMACH_HDR_H
20#define NET_GNRC_GOMACH_HDR_H
21
22#include <stdint.h>
23#include <stdbool.h>
24
25#include "net/ieee802154.h"
26
27#ifdef __cplusplus
28extern "C" {
29#endif
30
34typedef struct {
36 uint8_t len;
38
42#define GNRC_GOMACH_L2_ADDR_INIT { { 0 }, 0 }
43
47#define GNRC_GOMACH_FRAME_BEACON (0x01U)
48
52#define GNRC_GOMACH_FRAME_DATA (0x02U)
53
57#define GNRC_GOMACH_FRAME_PREAMBLE (0x03U)
58
62#define GNRC_GOMACH_FRAME_PREAMBLE_ACK (0x04U)
63
67#define GNRC_GOMACH_FRAME_BROADCAST (0x05U)
68
75#define GNRC_GOMACH_FRAME_ANNOUNCE (0x06U)
76
80typedef struct {
81 uint8_t type;
83
87typedef struct __attribute__((packed)) {
92
96typedef struct __attribute__((packed)) {
100
107typedef struct __attribute__((packed)) {
111
119
128
132typedef struct __attribute__((packed)) {
134 uint8_t seq_nr;
136
137#ifdef __cplusplus
138}
139#endif
140
141#endif /* NET_GNRC_GOMACH_HDR_H */
#define IEEE802154_LONG_ADDRESS_LEN
long address (EUI-64)
Definition ieee802154.h:45
GoMacH sub-channel announce frame.
Definition hdr.h:107
uint8_t subchannel_seq
Sub-channel sequence of this node.
Definition hdr.h:109
gnrc_gomach_hdr_t header
Announce frame header type.
Definition hdr.h:108
GoMacH Beacon frame.
Definition hdr.h:87
uint8_t sub_channel_seq
Sub-channel sequence of this node.
Definition hdr.h:89
uint8_t schedulelist_size
vTDMA schedule list size.
Definition hdr.h:90
gnrc_gomach_hdr_t header
Beacon frame header type.
Definition hdr.h:88
GoMacH broadcast frame.
Definition hdr.h:132
uint8_t seq_nr
Broadcast sequence of this node.
Definition hdr.h:134
gnrc_gomach_hdr_t header
Broadcast frame header type.
Definition hdr.h:133
GoMacH data frame.
Definition hdr.h:96
gnrc_gomach_hdr_t header
Data frame header type.
Definition hdr.h:97
uint8_t queue_indicator
Queue-length indicator of this node.
Definition hdr.h:98
GoMacH preamble_ack frame.
Definition hdr.h:123
gnrc_gomach_l2_addr_t dst_addr
Address of this node.
Definition hdr.h:125
uint32_t phase_in_us
Current phase of this node.
Definition hdr.h:126
gnrc_gomach_hdr_t header
Preamble-ACK frame header type.
Definition hdr.h:124
GoMacH preamble frame.
Definition hdr.h:115
gnrc_gomach_hdr_t header
Preamble frame header type.
Definition hdr.h:116
gnrc_gomach_l2_addr_t dst_addr
Address of this node.
Definition hdr.h:117
GoMacH frame header.
Definition hdr.h:80
uint8_t type
Type of GoMacH frame.
Definition hdr.h:81
GoMacH internal L2 address structure.
Definition hdr.h:34
uint8_t len
Address length.
Definition hdr.h:36
IEEE 802.15.4 header definitions.