1
2
3
4
5
6
7
8
9
10 #ifndef PCMK__CRM_PENGINE_COMMON_COMPAT__H
11 #define PCMK__CRM_PENGINE_COMMON_COMPAT__H
12
13 #include <regex.h>
14 #include <glib.h>
15
16 #include <crm/common/iso8601.h>
17 #include <crm/common/roles.h>
18
19 #ifdef __cplusplus
20 extern "C" {
21 #endif
22
23
24
25
26
27
28
29
30
31
32
33
34
35 typedef struct pe_re_match_data {
36 char *string;
37 int nregs;
38 regmatch_t *pmatch;
39 } pe_re_match_data_t;
40
41 typedef struct pe_match_data {
42 pe_re_match_data_t *re;
43 GHashTable *params;
44 GHashTable *meta;
45 } pe_match_data_t;
46
47 typedef struct pe_rsc_eval_data {
48 const char *standard;
49 const char *provider;
50 const char *agent;
51 } pe_rsc_eval_data_t;
52
53 typedef struct pe_op_eval_data {
54 const char *op_name;
55 guint interval;
56 } pe_op_eval_data_t;
57
58 typedef struct pe_rule_eval_data {
59 GHashTable *node_hash;
60 enum rsc_role_e role;
61 crm_time_t *now;
62 pe_match_data_t *match_data;
63 pe_rsc_eval_data_t *rsc_data;
64 pe_op_eval_data_t *op_data;
65 } pe_rule_eval_data_t;
66
67
68
69 #ifdef __cplusplus
70 }
71 #endif
72
73 #endif