root/ompi/mca/hook/base/base.h

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

INCLUDED FROM


   1 /*
   2  * Copyright (c) 2017      IBM Corporation.  All rights reserved.
   3  * $COPYRIGHT$
   4  *
   5  * Additional copyrights may follow
   6  *
   7  * $HEADER$
   8  */
   9 
  10 #ifndef OMPI_HOOK_BASE_H
  11 #define OMPI_HOOK_BASE_H
  12 
  13 #include "ompi_config.h"
  14 
  15 #include "ompi/mca/mca.h"
  16 #include "opal/mca/base/mca_base_framework.h"
  17 
  18 #include "ompi/mca/hook/hook.h"
  19 
  20 BEGIN_C_DECLS
  21 
  22 /**
  23  * Framework struct declaration for this framework
  24  */
  25 OMPI_DECLSPEC extern mca_base_framework_t ompi_hook_base_framework;
  26 
  27 
  28 /**
  29  * Dynamically register function pointers to be called from outside of the hook
  30  * framework. For example, a collective component could register a callback
  31  * at the bottom of init to perform some action.
  32  */
  33 OMPI_DECLSPEC int ompi_hook_base_register_callbacks(ompi_hook_base_component_t *comp);
  34 OMPI_DECLSPEC int ompi_hook_base_deregister_callbacks(ompi_hook_base_component_t *comp);
  35 
  36 /**
  37  * Wrapper functions matching the interface functions
  38  */
  39 OMPI_DECLSPEC void ompi_hook_base_mpi_initialized_top(int *flag);
  40 OMPI_DECLSPEC void ompi_hook_base_mpi_initialized_bottom(int *flag);
  41 
  42 OMPI_DECLSPEC void ompi_hook_base_mpi_init_thread_top(int *argc, char ***argv, int required, int *provided);
  43 OMPI_DECLSPEC void ompi_hook_base_mpi_init_thread_bottom(int *argc, char ***argv, int required, int *provided);
  44 
  45 OMPI_DECLSPEC void ompi_hook_base_mpi_finalized_top(int *flag);
  46 OMPI_DECLSPEC void ompi_hook_base_mpi_finalized_bottom(int *flag);
  47 
  48 OMPI_DECLSPEC void ompi_hook_base_mpi_init_top(int argc, char **argv, int requested, int *provided);
  49 OMPI_DECLSPEC void ompi_hook_base_mpi_init_top_post_opal(int argc, char **argv, int requested, int *provided);
  50 OMPI_DECLSPEC void ompi_hook_base_mpi_init_bottom(int argc, char **argv, int requested, int *provided);
  51 OMPI_DECLSPEC void ompi_hook_base_mpi_init_error(int argc, char **argv, int requested, int *provided);
  52 
  53 OMPI_DECLSPEC void ompi_hook_base_mpi_finalize_top(void);
  54 OMPI_DECLSPEC void ompi_hook_base_mpi_finalize_bottom(void);
  55 
  56 END_C_DECLS
  57 
  58 #endif /* OMPI_BASE_HOOK_H */

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