Statistics
| Branch: | Revision:

urtware / inc / urt_confcheck.h @ 408b49ce

History | View | Annotate | Download (5.255 KB)

1
/*
2
µRtWare is a lightweight publish/subscribe middleware for real-time
3
applications. It was developed as part of the software habitat for the
4
Autonomous Mini Robot [1] (AMiRo) but can be used for other purposes as well.
5

6
Copyright (C) 2018..2020  Thomas Schöpping et al.
7

8
This program is free software: you can redistribute it and/or modify
9
it under the terms of the GNU General Public License as published by
10
the Free Software Foundation, either version 3 of the License, or
11
(at your option) any later version.
12

13
This program is distributed in the hope that it will be useful,
14
but WITHOUT ANY WARRANTY; without even the implied warranty of
15
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
16
GNU General Public License for more details.
17

18
You should have received a copy of the GNU General Public License
19
along with this program.  If not, see <http://www.gnu.org/licenses/>.
20
*/
21

    
22
#ifndef URT_CONFCHECK_H
23
#define URT_CONFCHECK_H
24

    
25
#include <urtware.h>
26

    
27
/*============================================================================*/
28
/* CONSTANTS                                                                  */
29
/*============================================================================*/
30

    
31
/*============================================================================*/
32
/* SETTINGS                                                                   */
33
/*============================================================================*/
34

    
35
/*============================================================================*/
36
/* CHECKS                                                                     */
37
/*============================================================================*/
38

    
39
/* general parameters and options */
40

    
41
#if !defined(URT_CFG_DELAY_WIDTH)
42
# error "URT_CFG_DELAY_WIDTH not defined in urtwareconf.h"
43
#endif /* !defined(URT_CFG_DELAY_WIDTH) */
44

    
45
#if !defined(URT_CFG_NODESTAGE_WIDTH)
46
# error "URT_CFG_NODESTAGE_WIDTH not defined in urtwareconf.h"
47
#endif /* !defined(URT_CFG_NODESTAGE_WIDTH) */
48

    
49
#if !defined(URT_CFG_DEBUG_ENABLED)
50
# error "URT_CFG_DEBUG_ENABLED not defined in urtwareconf.h"
51
#endif /* !defined(URT_CFG_DEBUG_ENABLED) */
52

    
53
#if !defined(URT_CFG_OSAL_CONDVAR_TIMEOUT)
54
# error "URT_CFG_OSAL_CONDVAR_TIMEOUT not defined in urtwareconf.h"
55
#endif /* !defined(URT_CFG_OSAL_CONDVAR_TIMEOUT) */
56

    
57
/* publish-subscribe parameters and options */
58

    
59
#if !defined(URT_CFG_PUBSUB_ENABLED)
60
# error "URT_CFG_PUBSUB_ENABLED not defined in urtwareconf.h"
61
#endif /* !defined(URT_CFG_PUBSUB_ENABLED) */
62

    
63
#if (URT_CFG_PUBSUB_ENABLED == true)
64

    
65
# if !defined(URT_CFG_PUBSUB_TOPICID_WIDTH)
66
#   error "URT_CFG_PUBSUB_TOPICID_WIDTH not defined in urtwareconf.h"
67
# endif /* !defined(URT_CFG_PUBSUB_TOPICID_WIDTH) */
68

    
69
# if !defined(URT_CFG_PUBSUB_PROFILING)
70
#   error "URT_CFG_PUBSUB_PROFILING not defined in urtwareconf.h"
71
# endif /* !defined(URT_CFG_PUBSUB_PROFILING) */
72

    
73
# if !defined(URT_CFG_PUBSUB_QOS_DEADLINECHECKS)
74
#   error "URT_CFG_PUBSUB_QOS_DEADLINECHECKS not defined in urtwareconf.h"
75
# endif /* !defined(URT_CFG_PUBSUB_QOS_DEADLINECHECKS) */
76

    
77
# if !defined(URT_CFG_PUBSUB_QOS_RATECHECKS)
78
#   error "URT_CFG_PUBSUB_QOS_RATECHECKS not defined in urtwareconf.h"
79
# endif /* !defined(URT_CFG_PUBSUB_QOS_RATECHECKS) */
80

    
81
# if !defined(URT_CFG_PUBSUB_QOS_JITTERCHECKS)
82
#   error "URT_CFG_PUBSUB_QOS_JITTERCHECKS not defined in urtwareconf.h"
83
# endif /* !defined(URT_CFG_PUBSUB_QOS_JITTERCHECKS) */
84

    
85
#endif /* URT_CFG_PUBSUB_ENABLED == true */
86

    
87
/* remote procedure call parameters and options */
88

    
89
#if !defined(URT_CFG_RPC_ENABLED)
90
# error "URT_CFG_RPC_ENABLED not defined in urtwareconf.h"
91
#endif /* !defined(URT_CFG_RPC_ENABLED) */
92

    
93
#if (URT_CFG_RPC_ENABLED == true)
94

    
95
# if !defined(URT_CFG_RPC_SERVICEID_WIDTH)
96
#   error "URT_CFG_RPC_SERVICEID_WIDTH not defined in urtwareconf.h"
97
# endif /* !defined(URT_CFG_RPC_SERVICEID_WIDTH) */
98

    
99
# if !defined(URT_CFG_RPC_PROFILING)
100
#   error "URT_CFG_RPC_PROFILING not defined in urtwareconf.h"
101
# endif /* !defined(URT_CFG_RPC_PROFILING) */
102

    
103
# if !defined(URT_CFG_RPC_QOS_DEADLINECHECKS)
104
#   error "URT_CFG_RPC_QOS_DEADLINECHECKS not defined in urtwareconf.h"
105
# endif /* !defined(URT_CFG_RPC_QOS_DEADLINECHECKS) */
106

    
107
# if !defined(URT_CFG_RPC_QOS_JITTERCHECKS)
108
#   error "URT_CFG_RPC_QOS_JITTERCHECKS not defined in urtwareconf.h"
109
# endif /* !defined(URT_CFG_RPC_QOS_JITTERCHECKS) */
110

    
111
#endif /* URT_CFG_RPC_ENABLED == true */
112

    
113
/*============================================================================*/
114
/* DATA STRUCTURES AND TYPES                                                  */
115
/*============================================================================*/
116

    
117
/*============================================================================*/
118
/* MACROS                                                                     */
119
/*============================================================================*/
120

    
121
/*============================================================================*/
122
/* EXTERN DECLARATIONS                                                        */
123
/*============================================================================*/
124

    
125
/*============================================================================*/
126
/* INLINE FUNCTIONS                                                           */
127
/*============================================================================*/
128

    
129
#endif /* URT_CONFCHECK_H */