libcoap 4.3.2rc2

coap_forward_decls.h
Go to the documentation of this file.
1/*
2 * coap_forward_decls.h -- Forward declarations of structures that are
3 * opaque to application programming that use libcoap.
4 *
5 * Copyright (C) 2019-2023 Jon Shallow <supjps-libcoap@jpshallow.com>
6 *
7 * SPDX-License-Identifier: BSD-2-Clause
8 *
9 * This file is part of the CoAP library libcoap. Please see README for terms
10 * of use.
11 */
12
18#ifndef COAP_FORWARD_DECLS_H_
19#define COAP_FORWARD_DECLS_H_
20
21/*
22 * Define the forward declations for the structures (even non-opaque)
23 * so that applications (using coap.h) as well as libcoap builds
24 * can reference them (and makes .h file dependencies a lot simpler).
25 */
26 struct coap_address_t;
27 struct coap_bin_const_t;
28 struct coap_dtls_pki_t;
29 struct coap_str_const_t;
30 struct coap_string_t;
31
32 typedef struct coap_address_t coap_address_t;
33
34/*
35 * typedef all the opaque structures that are defined in coap_*_internal.h
36 */
37
38/* ************* coap_async_internal.h ***************** */
39
43 typedef struct coap_async_t coap_async_t;
44
45/* ************* coap_block_internal.h ***************** */
46
47/*
48 * Block handling information.
49 */
50 typedef struct coap_lg_xmit_t coap_lg_xmit_t;
51 typedef struct coap_lg_crcv_t coap_lg_crcv_t;
52 typedef struct coap_lg_srcv_t coap_lg_srcv_t;
53
54/* ************* coap_cache_internal.h ***************** */
55
56/*
57 * Cache Entry information.
58 */
59 typedef struct coap_cache_entry_t coap_cache_entry_t;
60 typedef struct coap_cache_key_t coap_cache_key_t;
61
62/* ************* coap_io_internal.h ***************** */
63
67 typedef struct coap_packet_t coap_packet_t;
68 typedef struct coap_socket_t coap_socket_t;
69
70/* ************* coap_net_internal.h ***************** */
71
72/*
73 * Net information.
74 */
75 typedef struct coap_context_t coap_context_t;
76 typedef struct coap_queue_t coap_queue_t;
77
78/* ************* coap_oscore_internal.h ***************** */
79
80/*
81 * OSCORE information.
82 */
83 typedef struct coap_oscore_conf_t coap_oscore_conf_t;
84
85/* ************* coap_pdu_internal.h ***************** */
86
90 typedef struct coap_pdu_t coap_pdu_t;
91
92/* ************* coap_resource_internal.h ***************** */
93
94/*
95 * Resource information.
96 */
97 typedef struct coap_attr_t coap_attr_t;
98 typedef struct coap_resource_t coap_resource_t;
99
100/* ************* coap_session_internal.h ***************** */
101
102/*
103 * Session information.
104 */
105 typedef struct coap_addr_hash_t coap_addr_hash_t;
106 typedef struct coap_endpoint_t coap_endpoint_t;
107 typedef struct coap_session_t coap_session_t;
108
109/* ************* coap_subscribe_internal.h ***************** */
110
111/*
112 * Observe subscriber information.
113 */
114 typedef struct coap_subscription_t coap_subscription_t;
115
116#endif /* COAP_FORWARD_DECLS_H_ */
coap_async_t
struct coap_async_t coap_async_t
Async Entry information.
Definition: coap_forward_decls.h:43
coap_addr_hash_t
Only used for servers for hashing incoming packets.
Definition: coap_session_internal.h:40
coap_address_t
Multi-purpose address abstraction.
Definition: coap_address.h:109
coap_attr_t
Limits the number of subscribers for each resource that this server support.
Definition: coap_resource_internal.h:42
coap_bin_const_t
CoAP binary data definition with const data.
Definition: coap_str.h:64
coap_cache_entry_t
Definition: coap_cache_internal.h:41
coap_cache_key_t
Definition: coap_cache_internal.h:37
coap_context_t
The CoAP stack's global state is stored in a coap_context_t object.
Definition: coap_net_internal.h:49
coap_dtls_pki_t
The structure used for defining the PKI setup data to be used.
Definition: coap_dtls.h:284
coap_endpoint_t
Abstraction of virtual endpoint that can be attached to coap_context_t.
Definition: coap_session_internal.h:219
coap_lg_crcv_t
Structure to hold large body (many blocks) client receive information.
Definition: coap_block_internal.h:146
coap_lg_srcv_t
Structure to hold large body (many blocks) server receive information.
Definition: coap_block_internal.h:177
coap_lg_xmit_t
Structure to hold large body (many blocks) transmission information.
Definition: coap_block_internal.h:117
coap_oscore_conf_t
The structure used to hold the OSCORE configuration information.
Definition: coap_oscore_internal.h:36
coap_packet_t
Definition: coap_io_internal.h:207
coap_pdu_t
structure for CoAP PDUs
Definition: coap_pdu_internal.h:119
coap_queue_t
Queue entry.
Definition: coap_net_internal.h:34
coap_resource_t
Abstraction of resource that can be attached to coap_context_t.
Definition: coap_resource_internal.h:53
coap_session_t
Abstraction of virtual session that can be attached to coap_context_t (client) or coap_endpoint_t (se...
Definition: coap_session_internal.h:68
coap_socket_t
Definition: coap_io_internal.h:34
coap_str_const_t
CoAP string data definition with const data.
Definition: coap_str.h:46
coap_string_t
CoAP string data definition.
Definition: coap_str.h:38
coap_subscription_t
Number of notifications that may be sent non-confirmable before a confirmable message is sent to dete...
Definition: coap_subscribe_internal.h:57