1
2
3
4
5
6
7
8
9
10 #ifndef PCMK__PCMKI_PCMKI_SCHEDULER__H
11 #define PCMK__PCMKI_PCMKI_SCHEDULER__H
12
13 #include <glib.h>
14 #include <stdbool.h>
15 #include <libxml/tree.h>
16
17 #include <crm/lrmd_events.h>
18 #include <crm/pengine/status.h>
19
20 #ifdef __cplusplus
21 extern "C" {
22 #endif
23
24 typedef struct {
25 const char *id;
26 const char *node_attribute;
27 pcmk_resource_t *dependent;
28 pcmk_resource_t *primary;
29
30 int dependent_role;
31 int primary_role;
32
33 int score;
34 uint32_t flags;
35 } pcmk__colocation_t;
36
37 void pcmk__unpack_constraints(pcmk_scheduler_t *scheduler);
38
39 void pcmk__schedule_actions(xmlNode *cib, unsigned long long flags,
40 pcmk_scheduler_t *scheduler);
41
42 GList *pcmk__copy_node_list(const GList *list, bool reset);
43
44 xmlNode *pcmk__create_history_xml(xmlNode *parent, lrmd_event_data_t *event,
45 const char *caller_version, int target_rc,
46 const char *node, const char *origin);
47
48 #ifdef __cplusplus
49 }
50 #endif
51
52 #endif