RTI Connext DDS Micro
Version 2.4.11
Main Page
Related Pages
Manuals
All
Data Structures
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Macros
Groups
Pages
osapi_config.h
Go to the documentation of this file.
1
/*
2
* FILE: osapi_os.h - OS Configuration
3
*
4
* (c) Copyright, Real-Time Innovations, 2012-2016
5
*
6
* All rights reserved.
7
*
8
* No duplications, whole or partial, manual or electronic, may be made
9
* without express written permission. Any such copies, or
10
* revisions thereof, must display this notice unaltered.
11
* This code contains trade secrets of Real-Time Innovations, Inc.
12
*
13
* Modification History
14
* --------------------
15
* 28jun2016,tk MICRO-1548 Cleaned up system header file use for POSIX
16
* 23apr2013,eh MICRO-106 Add RTI_HAVE_LONG_DOUBLE comment
17
* 23feb2012,tk Written
18
*
19
*/
20
/*ce \file
21
* \brief OS API Configuration
22
*/
23
#ifndef osapi_config_h
24
#define osapi_config_h
25
26
/* The global configuration is read first. Local definitions must
27
* check if the global configuration has set an option or not. Note that
28
* a module cannot disable a feature.
29
*/
30
#ifdef HAVE_GLOBAL_CONFIG
31
#include "rti_me_config.h"
32
#endif
33
34
/*
35
* ENABLE_FACE_COMPLIANCE:
36
* 0 - No compliance with FACE is required
37
* 1 - Comply with the SECURITY profile (not supported)
38
* 2 - Comply with the SAFTEY_BASE profile (supported)
39
* 3 - Comply with the SAFETY_EXTENDED profile (supported)
40
* 4 - Comply with the GENERAL profile (supported)
41
*/
42
#define FACE_COMPLIANCE_LEVEL_NONE 0
43
#define FACE_COMPLIANCE_LEVEL_SECURITY 1
44
#define FACE_COMPLIANCE_LEVEL_SAFETY_BASE 2
45
#define FACE_COMPLIANCE_LEVEL_SAFETY_EXTENDED 3
46
#define FACE_COMPLIANCE_LEVEL_GENERAL 4
47
48
#ifndef ENABLE_FACE_COMPLIANCE
49
#define ENABLE_FACE_COMPLIANCE FACE_COMPLIANCE_LEVEL_NONE
50
#endif
51
52
#if (ENABLE_FACE_COMPLIANCE > FACE_COMPLIANCE_LEVEL_NONE) && \
53
(ENABLE_FACE_COMPLIANCE < FACE_COMPLIANCE_LEVEL_SAFTEY_EXTENDED)
54
#error "RTI Connext Micro only support FACE profile Safety Extended and higher"
55
#endif
56
57
/* Enable/Disable default logging unless already defined */
58
#ifndef OSAPI_ENABLE_LOG
59
#if NDEBUG && defined(RTI_CERT)
60
#define OSAPI_ENABLE_LOG 0
61
#else
62
#define OSAPI_ENABLE_LOG 1
63
#endif
64
#endif
65
66
/* Enable/Disable default tracing unless already defined */
67
#ifndef OSAPI_ENABLE_TRACE
68
#if NDEBUG || defined(RTI_CERT)
69
#define OSAPI_ENABLE_TRACE 0
70
#else
71
#define OSAPI_ENABLE_TRACE 1
72
#endif
73
#endif
74
75
#if OSAPI_ENABLE_TRACE && !OSAPI_ENABLE_LOG
76
#warning "OSAPI_ENABLE_TRACE=1 requires OSAPI_ENABLE_LOG=1, but OSAPI_ENABLE_LOG=0. Forcing OSAPI_ENABLE_LOG=1"
77
#ifdef OSAPI_ENABLE_LOG
78
#undef OSAPI_ENABLE_LOG
79
#endif
80
#define OSAPI_ENABLE_LOG 1
81
#endif
82
83
/* Enable/Disable default precondition unless already defined */
84
#ifndef OSAPI_ENABLE_PRECONDITION
85
#if NDEBUG || defined(RTI_CERT)
86
#define OSAPI_ENABLE_PRECONDITION 0
87
#else
88
#define OSAPI_ENABLE_PRECONDITION 1
89
#endif
90
#endif
91
92
/* Enable native long double (128 bit float). This is not supported on
93
* all platforms. The default is to implement it as a 16 byte octet array
94
* since Micro does not actually use the value.
95
*/
96
#ifndef OSAPI_ENABLE_LONG_DOUBLE
97
#define OSAPI_ENABLE_LONG_DOUBLE 0
98
#endif
99
100
/* The maximum number of threads that can be suspended
101
* at the same time.
102
*/
103
#ifndef OSAPI_SYSTEM_MAX_THREAD_SEMAPHORE
104
#define OSAPI_SYSTEM_MAX_THREAD_SEMAPHORE (32)
105
#endif
106
/*******************************************************************************
107
* Include OS definitions
108
******************************************************************************/
109
#include "
osapi_os.h
"
110
111
/*******************************************************************************
112
* Include compiler definitions
113
******************************************************************************/
114
#include "
osapi_cc.h
"
115
116
#endif
/* osapi_config_h */
RTI Connext DDS Micro Version 2.4.11
Copyright © Mon Jul 23 2018
Real-Time Innovations, Inc