root/opal/mca/pmix/pmix4x/pmix/src/tools/pmix_info/support.h

/* [<][>][^][v][top][bottom][index][help] */

INCLUDED FROM


   1 /*
   2  * Copyright (c) 2012-2013 Los Alamos National Security, LLC.
   3  *                         All rights reserved.
   4  * Copyright (c) 2014 Cisco Systems, Inc.  All rights reserved.
   5  * Copyright (c) 2017 IBM Corporation.  All rights reserved.
   6  * Copyright (c) 2017-2018 Intel, Inc. All rights reserved.
   7  * $COPYRIGHT$
   8  *
   9  * Additional copyrights may follow
  10  *
  11  * $HEADER$
  12  */
  13 
  14 /** @file **/
  15 
  16 #ifndef PMIX_INFO_REGISTER_H
  17 #define PMIX_INFO_REGISTER_H
  18 
  19 #include "pmix_config.h"
  20 
  21 #include "src/class/pmix_list.h"
  22 #include "src/class/pmix_pointer_array.h"
  23 #include "src/util/cmd_line.h"
  24 #include "src/mca/base/base.h"
  25 
  26 BEGIN_C_DECLS
  27 
  28 PMIX_EXPORT extern const char *pmix_info_path_prefix;
  29 
  30 PMIX_EXPORT extern const char *pmix_info_type_all;
  31 PMIX_EXPORT extern const char *pmix_info_type_pmix;
  32 PMIX_EXPORT extern const char *pmix_info_component_all;
  33 extern const char *pmix_info_param_all;
  34 
  35 PMIX_EXPORT extern const char *pmix_info_ver_full;
  36 extern const char *pmix_info_ver_major;
  37 extern const char *pmix_info_ver_minor;
  38 extern const char *pmix_info_ver_release;
  39 extern const char *pmix_info_ver_greek;
  40 extern const char *pmix_info_ver_repo;
  41 
  42 PMIX_EXPORT extern const char *pmix_info_ver_all;
  43 extern const char *pmix_info_ver_mca;
  44 extern const char *pmix_info_ver_type;
  45 extern const char *pmix_info_ver_component;
  46 
  47 
  48 /*
  49  * Component-related functions
  50  */
  51 typedef struct {
  52     pmix_list_item_t super;
  53     char *type;
  54     pmix_list_t *components;
  55     pmix_list_t *failed_components;
  56 } pmix_info_component_map_t;
  57 PMIX_EXPORT PMIX_CLASS_DECLARATION(pmix_info_component_map_t);
  58 
  59 
  60 PMIX_EXPORT int pmix_info_init(int argc, char **argv,
  61                                pmix_cmd_line_t *pmix_info_cmd_line);
  62 
  63 PMIX_EXPORT void pmix_info_finalize(void);
  64 
  65 PMIX_EXPORT void pmix_info_register_types(pmix_pointer_array_t *mca_types);
  66 
  67 PMIX_EXPORT int pmix_info_register_framework_params(pmix_pointer_array_t *component_map);
  68 
  69 PMIX_EXPORT void pmix_info_close_components(void);
  70 PMIX_EXPORT void pmix_info_err_params(pmix_pointer_array_t *component_map);
  71 
  72 PMIX_EXPORT void pmix_info_do_params(bool want_all_in, bool want_internal,
  73                                      pmix_pointer_array_t *mca_type,
  74                                      pmix_pointer_array_t *component_map,
  75                                      pmix_cmd_line_t *pmix_info_cmd_line);
  76 
  77 PMIX_EXPORT void pmix_info_show_path(const char *type, const char *value);
  78 
  79 PMIX_EXPORT void pmix_info_do_path(bool want_all, pmix_cmd_line_t *cmd_line);
  80 
  81 PMIX_EXPORT void pmix_info_show_mca_params(const char *type,
  82                                            const char *component,
  83                                            pmix_mca_base_var_info_lvl_t max_level,
  84                                            bool want_internal);
  85 
  86 PMIX_EXPORT void pmix_info_show_mca_version(const pmix_mca_base_component_t *component,
  87                                             const char *scope, const char *ver_type);
  88 
  89 PMIX_EXPORT void pmix_info_show_component_version(pmix_pointer_array_t *mca_types,
  90                                                   pmix_pointer_array_t *component_map,
  91                                                   const char *type_name,
  92                                                   const char *component_name,
  93                                                   const char *scope, const char *ver_type);
  94 
  95 PMIX_EXPORT char *pmix_info_make_version_str(const char *scope,
  96                                              int major, int minor, int release,
  97                                              const char *greek,
  98                                              const char *repo);
  99 
 100 PMIX_EXPORT void pmix_info_show_pmix_version(const char *scope);
 101 
 102 PMIX_EXPORT void pmix_info_do_arch(void);
 103 
 104 PMIX_EXPORT void pmix_info_do_hostname(void);
 105 
 106 PMIX_EXPORT void pmix_info_do_type(pmix_cmd_line_t *pmix_info_cmd_line);
 107 
 108 PMIX_EXPORT void pmix_info_out(const char *pretty_message, const char *plain_message, const char *value);
 109 
 110 PMIX_EXPORT void pmix_info_out_int(const char *pretty_message,
 111                                    const char *plain_message,
 112                                    int value);
 113 
 114 PMIX_EXPORT int pmix_info_register_project_frameworks (const char *project_name,
 115                                                        pmix_mca_base_framework_t **frameworks,
 116                                                        pmix_pointer_array_t *component_map);
 117 
 118 END_C_DECLS
 119 
 120 #endif

/* [<][>][^][v][top][bottom][index][help] */