Initial version
[apps/native/position-finder-server.git] / inc / log.h
1 /*
2  * Copyright (c) 2017 Samsung Electronics Co., Ltd All Rights Reserved
3  *
4  * Contact: Jin Yoon <jinny.yoon@samsung.com>
5  *
6  * Licensed under the Apache License, Version 2.0 (the "License");
7  * you may not use this file except in compliance with the License.
8  * You may obtain a copy of the License at
9  *
10  * http://www.apache.org/licenses/LICENSE-2.0
11  *
12  * Unless required by applicable law or agreed to in writing, software
13  * distributed under the License is distributed on an "AS IS" BASIS,
14  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15  * See the License for the specific language governing permissions and
16  * limitations under the License.
17  */
18
19 #ifndef __POSITION_FINDER_SERVER_H__
20 #define __POSITION_FINDER_SERVER_H__
21
22 #include <dlog.h>
23
24 #ifdef  LOG_TAG
25 #undef  LOG_TAG
26 #endif
27 #define LOG_TAG "POSITION_FINDER_SERVER"
28
29 #if !defined(_D)
30 #define _D(fmt, arg...) dlog_print(DLOG_DEBUG, LOG_TAG, "[%s:%d] " fmt "\n", __func__, __LINE__, ##arg)
31 #endif
32
33 #if !defined(_I)
34 #define _I(fmt, arg...) dlog_print(DLOG_INFO, LOG_TAG, "[%s:%d] " fmt "\n", __func__, __LINE__, ##arg)
35 #endif
36
37 #if !defined(_W)
38 #define _W(fmt, arg...) dlog_print(DLOG_WARN, LOG_TAG, "[%s:%d] " fmt "\n", __func__, __LINE__, ##arg)
39 #endif
40
41 #if !defined(_E)
42 #define _E(fmt, arg...) dlog_print(DLOG_ERROR, LOG_TAG, "[%s:%d] " fmt "\n", __func__, __LINE__, ##arg)
43 #endif
44
45 #define retvm_if(expr, val, fmt, arg...) do { \
46         if(expr) { \
47                 _E(fmt, ##arg); \
48                 _E("(%s) -> %s() return", #expr, __FUNCTION__); \
49                 return val; \
50         } \
51 } while (0)
52
53 #define retv_if(expr, val) do { \
54         if(expr) { \
55                 _E("(%s) -> %s() return", #expr, __FUNCTION__); \
56                 return (val); \
57         } \
58 } while (0)
59
60 #define retm_if(expr, fmt, arg...) do { \
61         if(expr) { \
62                 _E(fmt, ##arg); \
63                 _E("(%s) -> %s() return", #expr, __FUNCTION__); \
64                 return; \
65         } \
66 } while (0)
67
68 #define ret_if(expr) do { \
69         if(expr) { \
70                 _E("(%s) -> %s() return", #expr, __FUNCTION__); \
71                 return; \
72         } \
73 } while (0)
74
75 #define goto_if(expr, val) do { \
76         if(expr) { \
77                 _E("(%s) -> goto", #expr); \
78                 goto val; \
79         } \
80 } while (0)
81
82 #define break_if(expr) { \
83         if(expr) { \
84                 _E("(%s) -> break", #expr); \
85                 break; \
86         } \
87 }
88
89 #define continue_if(expr) { \
90         if(expr) { \
91                 _E("(%s) -> continue", #expr); \
92                 continue; \
93         } \
94 }
95
96
97
98 #endif /* __POSITION_FINDER_SERVER_H__ */