root/include/crm/pengine/common_compat.h

/* [previous][next][first][last][top][bottom][index][help] */

INCLUDED FROM


   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_PENGINE_COMMON_COMPAT__H
  11 #define PCMK__CRM_PENGINE_COMMON_COMPAT__H
  12 
  13 #include <regex.h>                  // regmatch_t
  14 #include <glib.h>                   // guint, GHashTable
  15 
  16 #include <crm/common/iso8601.h>     // crm_time_t
  17 #include <crm/common/roles.h>       // enum rsc_role_e
  18 
  19 #ifdef __cplusplus
  20 extern "C" {
  21 #endif
  22 
  23 /**
  24  * \file
  25  * \brief Deprecated Pacemaker shared API for scheduler and rules
  26  * \ingroup pengine
  27  * \deprecated Do not include this header directly. The APIs in this
  28  *             header, and the header itself, will be removed in a future
  29  *             release.
  30  */
  31 
  32 //!@{
  33 //! \deprecated Use pcmk_rule_input_t instead
  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 // PCMK__CRM_PENGINE_COMMON_COMPAT__H

/* [previous][next][first][last][top][bottom][index][help] */