Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-02-23 10:12:53

0001 /*
0002  * Copyright (c) 2009      Cisco Systems, Inc.  All rights reserved.
0003  * Copyright (c) 2013      Los Alamos National Security, LLC.  All rights reserved.
0004  * Copyright (c) 2017-2020 Intel, Inc.  All rights reserved.
0005  * Copyright (c) 2020      Research Organization for Information Science
0006  *                         and Technology (RIST).  All rights reserved.
0007  * Copyright (c) 2021      Nanook Consulting.  All rights reserved.
0008  * $COPYRIGHT$
0009  *
0010  * Additional copyrights may follow
0011  *
0012  * $HEADER$
0013  */
0014 /** @file:
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  * MCA Framework
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 /* define a struct to hold framework-global values */
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