root/orte/mca/rml/oob/rml_oob.h

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

INCLUDED FROM


   1 /*
   2  * Copyright (c) 2004-2010 The Trustees of Indiana University and Indiana
   3  *                         University Research and Technology
   4  *                         Corporation.  All rights reserved.
   5  * Copyright (c) 2004-2006 The University of Tennessee and The University
   6  *                         of Tennessee Research Foundation.  All rights
   7  *                         reserved.
   8  * Copyright (c) 2004-2005 High Performance Computing Center Stuttgart,
   9  *                         University of Stuttgart.  All rights reserved.
  10  * Copyright (c) 2004-2005 The Regents of the University of California.
  11  *                         All rights reserved.
  12  * Copyright (c) 2007      Cisco Systems, Inc.  All rights reserved.
  13  * Copyright (c) 2012      Los Alamos National Security, LLC.
  14  *                         All rights reserved.
  15  * Copyright (c) 2014      Research Organization for Information Science
  16  *                         and Technology (RIST). All rights reserved.
  17  * Copyright (c) 2014-2019 Intel, Inc.  All rights reserved.
  18  * $COPYRIGHT$
  19  *
  20  * Additional copyrights may follow
  21  *
  22  * $HEADER$
  23  */
  24 
  25 #ifndef MCA_RML_OOB_RML_OOB_H
  26 #define MCA_RML_OOB_RML_OOB_H
  27 
  28 #include "orte_config.h"
  29 
  30 #include "opal/dss/dss_types.h"
  31 #include "opal/mca/event/event.h"
  32 
  33 #include "orte/mca/oob/oob.h"
  34 
  35 #include "orte/mca/rml/base/base.h"
  36 
  37 BEGIN_C_DECLS
  38 
  39 typedef struct {
  40     orte_rml_base_module_t  api;
  41     opal_list_t             queued_routing_messages;
  42     opal_event_t            *timer_event;
  43     struct timeval          timeout;
  44     char                    *routed; // name of routed module to be used
  45 } orte_rml_oob_module_t;
  46 
  47 ORTE_MODULE_DECLSPEC extern orte_rml_component_t mca_rml_oob_component;
  48 
  49 void orte_rml_oob_fini(struct orte_rml_base_module_t *mod);
  50 
  51 int orte_rml_oob_send_nb(orte_process_name_t* peer,
  52                          struct iovec* msg,
  53                          int count,
  54                          orte_rml_tag_t tag,
  55                          orte_rml_callback_fn_t cbfunc,
  56                          void* cbdata);
  57 
  58 int orte_rml_oob_send_buffer_nb(orte_process_name_t* peer,
  59                                 opal_buffer_t* buffer,
  60                                 orte_rml_tag_t tag,
  61                                 orte_rml_buffer_callback_fn_t cbfunc,
  62                                 void* cbdata);
  63 
  64 END_C_DECLS
  65 
  66 #endif

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