tizen 2.0 beta
[framework/appfw/librua.git] / include / perf-measure.h
1 /*
2  *  RUA
3  *
4  * Copyright (c) 2000 - 2012 Samsung Electronics Co., Ltd. All rights reserved.
5  *
6  * Contact: Jayoun Lee <airjany@samsung.com>
7  *
8  * Licensed under the Apache License, Version 2.0 (the "License");
9  * you may not use this file except in compliance with the License.
10  * You may obtain a copy of the License at
11  *
12  * http://www.apache.org/licenses/LICENSE-2.0
13  *
14  * Unless required by applicable law or agreed to in writing, software
15  * distributed under the License is distributed on an "AS IS" BASIS,
16  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
17  * See the License for the specific language governing permissions and
18  * limitations under the License.
19  *
20  */
21
22 #ifndef __PERF_MEASURE__
23 #define __PERF_MEASURE__
24
25 #include <time.h>
26
27
28 //#define PERF_MEASURE_ENABLE
29
30 #ifdef __cplusplus
31 extern "C" {
32 #endif
33
34 #ifdef PERF_MEASURE_ENABLE
35
36 unsigned int _perf_measure_start(const char *tag, char *func_name, int line);
37 unsigned int _perf_measure_end(const char *tag, unsigned int ts_start,
38                         char *func_name, int line);
39
40 #define PERF_MEASURE_START(tag) _perf_measure_start(tag, __func__,__LINE__)
41 #define PERF_MEASURE_END(tag, ts_start) \
42         _perf_measure_end(tag, ts_start,__func__, __LINE__)
43
44 #else
45
46 #define PERF_MEASURE_START(tag) (0)
47 #define PERF_MEASURE_END(tag, ts_start) (0)
48
49 #endif
50
51
52
53
54
55
56
57
58
59
60
61
62
63 #ifdef __cplusplus
64 }
65 #endif
66 #endif                          /*__PERF_MEASURE__*/