pacemaker 3.0.1-16e74fc4da
Scalable High-Availability cluster resource manager
Loading...
Searching...
No Matches
location_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_LOCATION_INTERNAL__H
11#define PCMK__CRM_COMMON_LOCATION_INTERNAL__H
12
13#include <glib.h> // gpointer, GList
14
15#include <crm/common/nodes_internal.h> // enum pcmk__probe_mode
16#include <crm/common/resources.h> // enum rsc_role_e
17#include <crm/common/scheduler_types.h> // pcmk_resource_t
18
19#ifdef __cplusplus
20extern "C" {
21#endif
22
24typedef struct {
25 char *id; // XML ID of location constraint
26 pcmk_resource_t *rsc; // Resource with location preference
27 enum rsc_role_e role_filter; // Limit to instances with this role
28 enum pcmk__probe_mode probe_mode; // How to probe resource on node
29 GList *nodes; // Copies of affected nodes, with score
31
32void pcmk__free_location(gpointer user_data);
33
34#ifdef __cplusplus
35}
36#endif
37
38#endif // PCMK__CRM_COMMON_LOCATION_INTERNAL__H
void pcmk__free_location(gpointer user_data)
Definition location.c:24
pcmk__probe_mode
Scheduler API for resources.
rsc_role_e
Definition roles.h:34
Type aliases needed to define scheduler objects.
Location constraint object.
enum pcmk__probe_mode probe_mode
enum rsc_role_e role_filter
pcmk_resource_t * rsc