File indexing completed on 2025-02-23 10:12:53
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017 #ifndef PMIX_PSTRG_BASE_H_
0018 #define PMIX_PSTRG_BASE_H_
0019
0020 #include "src/include/pmix_config.h"
0021
0022 #include "src/class/pmix_list.h"
0023 #include "src/mca/base/pmix_mca_base_framework.h"
0024 #include "src/mca/mca.h"
0025
0026 #include "src/mca/pstrg/pstrg.h"
0027
0028 BEGIN_C_DECLS
0029
0030
0031
0032
0033 PMIX_EXPORT extern pmix_mca_base_framework_t pmix_pstrg_base_framework;
0034
0035 PMIX_EXPORT int pmix_pstrg_base_select(void);
0036
0037
0038 typedef struct {
0039 pmix_list_t actives;
0040 pmix_event_base_t *evbase;
0041 bool selected;
0042 bool init;
0043 } pmix_pstrg_base_t;
0044
0045 typedef struct {
0046 pmix_list_item_t super;
0047 pmix_pstrg_base_component_t *component;
0048 pmix_pstrg_base_module_t *module;
0049 int priority;
0050 } pmix_pstrg_active_module_t;
0051 PMIX_CLASS_DECLARATION(pmix_pstrg_active_module_t);
0052
0053 PMIX_EXPORT extern pmix_pstrg_base_t pmix_pstrg_base;
0054
0055 typedef struct {
0056 pmix_list_item_t super;
0057 pmix_key_t key;
0058 pmix_list_t results;
0059 } pmix_pstrg_query_results_t;
0060 PMIX_CLASS_DECLARATION(pmix_pstrg_query_results_t);
0061
0062 PMIX_EXPORT pmix_status_t pmix_pstrg_base_query(pmix_query_t queries[], size_t nqueries,
0063 pmix_list_t *results,
0064 pmix_pstrg_query_cbfunc_t cbfunc, void *cbdata);
0065
0066 END_C_DECLS
0067 #endif