Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
PojavLauncherTeam
GitHub Repository: PojavLauncherTeam/mesa
Path: blob/21.2-virgl/include/android_stub/log/log_radio.h
4547 views
1
/*
2
* Copyright (C) 2005-2017 The Android Open Source Project
3
*
4
* Licensed under the Apache License, Version 2.0 (the "License");
5
* you may not use this file except in compliance with the License.
6
* You may obtain a copy of the License at
7
*
8
* http://www.apache.org/licenses/LICENSE-2.0
9
*
10
* Unless required by applicable law or agreed to in writing, software
11
* distributed under the License is distributed on an "AS IS" BASIS,
12
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
* See the License for the specific language governing permissions and
14
* limitations under the License.
15
*/
16
17
#pragma once
18
19
#include <android/log.h>
20
21
/*
22
* Normally we strip the effects of ALOGV (VERBOSE messages),
23
* LOG_FATAL and LOG_FATAL_IF (FATAL assert messages) from the
24
* release builds be defining NDEBUG. You can modify this (for
25
* example with "#define LOG_NDEBUG 0" at the top of your source
26
* file) to change that behavior.
27
*/
28
29
#ifndef LOG_NDEBUG
30
#ifdef NDEBUG
31
#define LOG_NDEBUG 1
32
#else
33
#define LOG_NDEBUG 0
34
#endif
35
#endif
36
37
/* --------------------------------------------------------------------- */
38
39
#ifndef __predict_false
40
#define __predict_false(exp) __builtin_expect((exp) != 0, 0)
41
#endif
42
43
/*
44
* Simplified macro to send a verbose radio log message using current LOG_TAG.
45
*/
46
#ifndef RLOGV
47
#define __RLOGV(...) \
48
((void)__android_log_buf_print(LOG_ID_RADIO, ANDROID_LOG_VERBOSE, LOG_TAG, \
49
__VA_ARGS__))
50
#if LOG_NDEBUG
51
#define RLOGV(...) \
52
do { \
53
if (0) { \
54
__RLOGV(__VA_ARGS__); \
55
} \
56
} while (0)
57
#else
58
#define RLOGV(...) __RLOGV(__VA_ARGS__)
59
#endif
60
#endif
61
62
#ifndef RLOGV_IF
63
#if LOG_NDEBUG
64
#define RLOGV_IF(cond, ...) ((void)0)
65
#else
66
#define RLOGV_IF(cond, ...) \
67
((__predict_false(cond)) \
68
? ((void)__android_log_buf_print(LOG_ID_RADIO, ANDROID_LOG_VERBOSE, \
69
LOG_TAG, __VA_ARGS__)) \
70
: (void)0)
71
#endif
72
#endif
73
74
/*
75
* Simplified macro to send a debug radio log message using current LOG_TAG.
76
*/
77
#ifndef RLOGD
78
#define RLOGD(...) \
79
((void)__android_log_buf_print(LOG_ID_RADIO, ANDROID_LOG_DEBUG, LOG_TAG, \
80
__VA_ARGS__))
81
#endif
82
83
#ifndef RLOGD_IF
84
#define RLOGD_IF(cond, ...) \
85
((__predict_false(cond)) \
86
? ((void)__android_log_buf_print(LOG_ID_RADIO, ANDROID_LOG_DEBUG, \
87
LOG_TAG, __VA_ARGS__)) \
88
: (void)0)
89
#endif
90
91
/*
92
* Simplified macro to send an info radio log message using current LOG_TAG.
93
*/
94
#ifndef RLOGI
95
#define RLOGI(...) \
96
((void)__android_log_buf_print(LOG_ID_RADIO, ANDROID_LOG_INFO, LOG_TAG, \
97
__VA_ARGS__))
98
#endif
99
100
#ifndef RLOGI_IF
101
#define RLOGI_IF(cond, ...) \
102
((__predict_false(cond)) \
103
? ((void)__android_log_buf_print(LOG_ID_RADIO, ANDROID_LOG_INFO, \
104
LOG_TAG, __VA_ARGS__)) \
105
: (void)0)
106
#endif
107
108
/*
109
* Simplified macro to send a warning radio log message using current LOG_TAG.
110
*/
111
#ifndef RLOGW
112
#define RLOGW(...) \
113
((void)__android_log_buf_print(LOG_ID_RADIO, ANDROID_LOG_WARN, LOG_TAG, \
114
__VA_ARGS__))
115
#endif
116
117
#ifndef RLOGW_IF
118
#define RLOGW_IF(cond, ...) \
119
((__predict_false(cond)) \
120
? ((void)__android_log_buf_print(LOG_ID_RADIO, ANDROID_LOG_WARN, \
121
LOG_TAG, __VA_ARGS__)) \
122
: (void)0)
123
#endif
124
125
/*
126
* Simplified macro to send an error radio log message using current LOG_TAG.
127
*/
128
#ifndef RLOGE
129
#define RLOGE(...) \
130
((void)__android_log_buf_print(LOG_ID_RADIO, ANDROID_LOG_ERROR, LOG_TAG, \
131
__VA_ARGS__))
132
#endif
133
134
#ifndef RLOGE_IF
135
#define RLOGE_IF(cond, ...) \
136
((__predict_false(cond)) \
137
? ((void)__android_log_buf_print(LOG_ID_RADIO, ANDROID_LOG_ERROR, \
138
LOG_TAG, __VA_ARGS__)) \
139
: (void)0)
140
#endif
141
142