1 /* 2 * Copyright (c) 2004-2006 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) 2013 Los Alamos National Security, LLC. All rights reserved. 13 * Copyright (c) 2015-2016 Intel, Inc. All rights reserved. 14 * $COPYRIGHT$ 15 * 16 * Additional copyrights may follow 17 * 18 * $HEADER$ 19 */ 20 /** @file: 21 */ 22 23 #ifndef MCA_PLM_BASE_H 24 #define MCA_PLM_BASE_H 25 26 /* 27 * includes 28 */ 29 #include "orte_config.h" 30 31 #include "orte/mca/mca.h" 32 #include "opal/class/opal_list.h" 33 34 #include "orte/mca/plm/plm.h" 35 36 37 BEGIN_C_DECLS 38 39 /* 40 * MCA framework 41 */ 42 ORTE_DECLSPEC extern mca_base_framework_t orte_plm_base_framework; 43 /* 44 * Select an available component. 45 */ 46 ORTE_DECLSPEC int orte_plm_base_select(void); 47 48 /** 49 * Functions that other frameworks may need to call directly 50 * Specifically, the ODLS needs to access some of these 51 * to avoid recursive callbacks 52 */ 53 ORTE_DECLSPEC void orte_plm_base_app_report_launch(int fd, short event, void *data); 54 ORTE_DECLSPEC void orte_plm_base_receive_process_msg(int fd, short event, void *data); 55 56 ORTE_DECLSPEC void orte_plm_base_set_slots(orte_node_t *node); 57 ORTE_DECLSPEC void orte_plm_base_setup_job(int fd, short args, void *cbdata); 58 ORTE_DECLSPEC void orte_plm_base_setup_job_complete(int fd, short args, void *cbdata); 59 ORTE_DECLSPEC void orte_plm_base_complete_setup(int fd, short args, void *cbdata); 60 ORTE_DECLSPEC void orte_plm_base_daemons_reported(int fd, short args, void *cbdata); 61 ORTE_DECLSPEC void orte_plm_base_allocation_complete(int fd, short args, void *cbdata); 62 ORTE_DECLSPEC void orte_plm_base_daemons_launched(int fd, short args, void *cbdata); 63 ORTE_DECLSPEC void orte_plm_base_vm_ready(int fd, short args, void *cbdata); 64 ORTE_DECLSPEC void orte_plm_base_mapping_complete(int fd, short args, void *cbdata); 65 ORTE_DECLSPEC void orte_plm_base_launch_apps(int fd, short args, void *cbdata); 66 ORTE_DECLSPEC void orte_plm_base_post_launch(int fd, short args, void *cbdata); 67 ORTE_DECLSPEC void orte_plm_base_registered(int fd, short args, void *cbdata); 68 69 END_C_DECLS 70 71 #endif 72