1 
   2 
   3 
   4 
   5 
   6 
   7 
   8 
   9 
  10 
  11 
  12 
  13 
  14 
  15 #ifndef PMIX_PSENSOR_BASE_H_
  16 #define PMIX_PSENSOR_BASE_H_
  17 
  18 #include <src/include/pmix_config.h>
  19 
  20 #include "src/class/pmix_list.h"
  21 #include "src/mca/mca.h"
  22 #include "src/mca/base/pmix_mca_base_framework.h"
  23 
  24 #include "src/mca/psensor/psensor.h"
  25 
  26 BEGIN_C_DECLS
  27 
  28 
  29 
  30 
  31 PMIX_EXPORT extern pmix_mca_base_framework_t pmix_psensor_base_framework;
  32 
  33 PMIX_EXPORT int pmix_psensor_base_select(void);
  34 
  35 
  36 typedef struct {
  37     pmix_list_t actives;
  38     pmix_event_base_t *evbase;
  39 } pmix_psensor_base_t;
  40 
  41 typedef struct {
  42     pmix_list_item_t super;
  43     pmix_psensor_base_component_t *component;
  44     pmix_psensor_base_module_t *module;
  45     int priority;
  46 } pmix_psensor_active_module_t;
  47 PMIX_CLASS_DECLARATION(pmix_psensor_active_module_t);
  48 
  49 PMIX_EXPORT extern pmix_psensor_base_t pmix_psensor_base;
  50 
  51 PMIX_EXPORT pmix_status_t pmix_psensor_base_start(pmix_peer_t *requestor, pmix_status_t error,
  52                                                   const pmix_info_t *monitor,
  53                                                   const pmix_info_t directives[], size_t ndirs);
  54 
  55 PMIX_EXPORT pmix_status_t pmix_psensor_base_stop(pmix_peer_t *requestor,
  56                                                  char *id);
  57 
  58 END_C_DECLS
  59 #endif