f0bf0f10dd3e447248ac2027e5c198546d8d742a
[babeltrace.git] / include / babeltrace / types.h
1 #ifndef BABELTRACE_TYPES_H
2 #define BABELTRACE_TYPES_H
3
4 /*
5 * Copyright (c) 2017 Philippe Proulx <pproulx@efficios.com>
6 *
7 * Permission is hereby granted, free of charge, to any person obtaining a copy
8 * of this software and associated documentation files (the "Software"), to deal
9 * in the Software without restriction, including without limitation the rights
10 * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
11 * copies of the Software, and to permit persons to whom the Software is
12 * furnished to do so, subject to the following conditions:
13 *
14 * The above copyright notice and this permission notice shall be included in
15 * all copies or substantial portions of the Software.
16 *
17 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
18 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
19 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
20 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
21 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
22 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
23 * SOFTWARE.
24 */
25
26 #ifdef __cplusplus
27 extern "C" {
28 #endif
29
30 /**
31 @defgroup ctypes Babeltrace C types
32 @ingroup apiref
33 @brief Babeltrace C types.
34
35 @code
36 #include <babeltrace/types.h>
37 @endcode
38
39 This header contains custom type definitions used across the library.
40
41 @file
42 @brief Babeltrace C types.
43 @sa ctypes
44
45 @addtogroup ctypes
46 @{
47 */
48
49 /// False boolean value for the #bt_bool type.
50 #define BT_FALSE 0
51
52 /// True boolean value for the #bt_bool type.
53 #define BT_TRUE 1
54
55 /**
56 @brief Babeltrace's boolean type.
57
58 Use only the #BT_FALSE and #BT_TRUE definitions for #bt_bool parameters.
59 It is guaranteed that the library functions which return a #bt_bool
60 value return either #BT_FALSE or #BT_TRUE.
61
62 You can always test the truthness of a #bt_bool value directly, without
63 comparing it to #BT_TRUE directly:
64
65 @code
66 bt_bool ret = bt_some_function(...);
67
68 if (ret) {
69 // ret is true
70 }
71 @endcode
72 */
73 typedef int bt_bool;
74
75 /** @} */
76
77 #ifdef __cplusplus
78 }
79 #endif
80
81 #endif /* BABELTRACE_TYPES_H */
This page took 0.029855 seconds and 4 git commands to generate.