pacemaker
2.1.9-49aab99839
Scalable High-Availability cluster resource manager
include
crm
common
roles_internal.h
Go to the documentation of this file.
1
/*
2
* Copyright 2004-2024 the Pacemaker project contributors
3
*
4
* The version control history for this file may have further details.
5
*
6
* This source code is licensed under the GNU Lesser General Public License
7
* version 2.1 or later (LGPLv2.1+) WITHOUT ANY WARRANTY.
8
*/
9
10
#ifndef PCMK__CRM_COMMON_ROLES_INTERNAL__H
11
#define PCMK__CRM_COMMON_ROLES_INTERNAL__H
12
13
#ifdef __cplusplus
14
extern
"C"
{
15
#endif
16
17
// String equivalents of enum rsc_role_e
18
#define PCMK__ROLE_UNKNOWN "Unknown"
19
#define PCMK__ROLE_UNPROMOTED_LEGACY "Slave"
20
#define PCMK__ROLE_PROMOTED_LEGACY "Master"
21
29
#define pcmk__set_rsc_flags(resource, flags_to_set) do { \
30
(resource)->flags = pcmk__set_flags_as(__func__, __LINE__, \
31
LOG_TRACE, "Resource", (resource)->id, (resource)->flags, \
32
(flags_to_set), #flags_to_set); \
33
} while (0)
34
42
#define pcmk__clear_rsc_flags(resource, flags_to_clear) do { \
43
(resource)->flags = pcmk__clear_flags_as(__func__, __LINE__, \
44
LOG_TRACE, "Resource", (resource)->id, (resource)->flags, \
45
(flags_to_clear), #flags_to_clear); \
46
} while (0)
47
56
static
inline
pcmk_node_t
*
57
pcmk__current_node(
const
pcmk_resource_t
*rsc)
58
{
59
return
(rsc == NULL)? NULL : rsc->
fns
->
active_node
(rsc, NULL, NULL);
60
}
61
62
#ifdef __cplusplus
63
}
64
#endif
65
66
#endif // PCMK__CRM_COMMON_ROLES_INTERNAL__H
pe_resource_s
Definition:
resources.h:392
pe_node_s
Definition:
nodes.h:162
pe_resource_s::fns
pcmk_rsc_methods_t * fns
Definition:
resources.h:412
resource_object_functions_s::active_node
pcmk_node_t *(* active_node)(const pcmk_resource_t *rsc, unsigned int *count_all, unsigned int *count_clean)
Definition:
resources.h:373
Generated on Thu Oct 31 2024 15:49:02 for pacemaker by
1.8.14