LibMultiSense
LibMultiSense Documentation
Portability.hh
Go to the documentation of this file.
1
41
#ifndef CRL_MULTISENSE_DETAILS_PORTABILITY_HH
42
#define CRL_MULTISENSE_DETAILS_PORTABILITY_HH
43
44
#define CRL_UNUSED(var) (void)(var)
45
46
#if defined(CRL_HAVE_CONSTEXPR)
47
#define CRL_CONSTEXPR constexpr
48
#else
49
#define CRL_CONSTEXPR const
50
#endif
51
52
#if __cplusplus > 199711L
53
// Use C++ 11 standard language features.
54
#define CRL_THREAD_LOCAL thread_local
55
#elif defined (__GNUC__)
56
// GNU GCC uses __thread to declare thread local variables.
57
#define CRL_THREAD_LOCAL __thread
58
#elif defined (_MSC_VER)
59
// MS Visual C++ uses __declspec(thread) to declare thread local variables.
60
#define CRL_THREAD_LOCAL __declspec(thread)
61
#else
62
#error "This compiler is not yet supported. Please contact Carnegie Robotics support at http://support.carnegierobotics.com for assistance."
63
#endif
64
65
#if defined (__GNUC__)
66
// GNU GCC uses __PRETTY_FUNCTION__ to get the undecorated name of the current function
67
// with its type signature.
68
#define CRL_PRETTY_FUNCTION __PRETTY_FUNCTION__
69
#elif defined (_MSC_VER)
70
// MS Visual C++ uses __FUNCSIG__ to get the undecorated name of the current function
71
#define CRL_PRETTY_FUNCTION __FUNCSIG__
72
#elif __STDC_VERSION >= 199901L
73
// Use C99 standard macros to get the undecorated name of the current function
74
#define CRL_PRETTY_FUNCTION __func__
75
#else
76
#error "This compiler is not yet supported. Please contact Carnegie Robotics support at http://support.carnegierobotics.com for assistance."
77
#endif
78
79
#if !defined(MULTISENSE_API)
80
#if defined (_MSC_VER)
81
#define MULTISENSE_API __declspec(dllexport)
82
#else
83
#define MULTISENSE_API
84
#endif
85
#endif
86
87
#ifdef WIN32
88
#ifndef NOMINMAX
89
#define NOMINMAX 1
90
#endif
91
92
#define usleep(usec) Sleep((usec)/1000)
93
#endif
94
95
#ifndef WIN32
96
#define closesocket close
97
#endif
98
99
#endif
/* #ifndef CRL_MULTISENSE_DETAILS_PORTABILITY_HH */
source
Wire
include
utility
Portability.hh
Generated on Tue Mar 18 2025 14:54:03 for LibMultiSense by
1.8.17