1 /*
2  * Copyright (c) 2004-2005 The Trustees of Indiana University and Indiana
3  *                         University Research and Technology
4  *                         Corporation.  All rights reserved.
5  * Copyright (c) 2004-2005 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) 2011-2013 Los Alamos National Security, LLC.  All rights
13  *                         reserved.
14  * Copyright (c) 2016      Intel, Inc. All rights reserved.
15  * $COPYRIGHT$
16  *
17  * Additional copyrights may follow
18  *
19  * $HEADER$
20  */
21 /** @file:
22  */
23 
24 #ifndef ORTE_MCA_RAS_BASE_H
25 #define ORTE_MCA_RAS_BASE_H
26 
27 /*
28  * includes
29  */
30 #include "orte_config.h"
31 
32 #include "orte/mca/ras/ras.h"
33 /*
34  * Global functions for MCA overall collective open and close
35  */
36 
37 BEGIN_C_DECLS
38 
39 /*
40  * MCA Framework
41  */
42 ORTE_DECLSPEC extern mca_base_framework_t orte_ras_base_framework;
43 /* select a component */
44 ORTE_DECLSPEC    int orte_ras_base_select(void);
45 
46 /*
47  * globals that might be needed
48  */
49 typedef struct orte_ras_base_t {
50     bool allocation_read;
51     orte_ras_base_module_t *active_module;
52     int total_slots_alloc;
53     int multiplier;
54     bool launch_orted_on_hn;
55 } orte_ras_base_t;
56 
57 ORTE_DECLSPEC extern orte_ras_base_t orte_ras_base;
58 
59 ORTE_DECLSPEC void orte_ras_base_display_alloc(void);
60 
61 ORTE_DECLSPEC void orte_ras_base_allocate(int fd, short args, void *cbdata);
62 
63 ORTE_DECLSPEC int orte_ras_base_add_hosts(orte_job_t *jdata);
64 
65 END_C_DECLS
66 
67 #endif
68