root/orte/mca/filem/base/filem_base_fns.c

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

DEFINITIONS

This source file includes following definitions.
  1. process_set_construct
  2. process_set_destruct
  3. file_set_construct
  4. file_set_destruct
  5. req_construct
  6. req_destruct
  7. orte_filem_base_module_init
  8. orte_filem_base_module_finalize
  9. orte_filem_base_none_put
  10. orte_filem_base_none_put_nb
  11. orte_filem_base_none_get
  12. orte_filem_base_none_get_nb
  13. orte_filem_base_none_rm
  14. orte_filem_base_none_rm_nb
  15. orte_filem_base_none_wait
  16. orte_filem_base_none_wait_all
  17. orte_filem_base_none_preposition_files
  18. orte_filem_base_none_link_local_files

   1 /*
   2  * Copyright (c) 2004-2009 The Trustees of Indiana University.
   3  *                         All rights reserved.
   4  * Copyright (c) 2004-2005 The Trustees of the University of Tennessee.
   5  *                         All rights reserved.
   6  * Copyright (c) 2004-2005 High Performance Computing Center Stuttgart,
   7  *                         University of Stuttgart.  All rights reserved.
   8  * Copyright (c) 2004-2005 The Regents of the University of California.
   9  *                         All rights reserved.
  10  * Copyright (c) 2012      Los Alamos National Security, LLC.
  11  *                         All rights reserved
  12  * $COPYRIGHT$
  13  *
  14  * Additional copyrights may follow
  15  *
  16  * $HEADER$
  17  */
  18 
  19 #include "orte_config.h"
  20 
  21 #include <string.h>
  22 #ifdef HAVE_SYS_TYPES_H
  23 #include <sys/types.h>
  24 #endif
  25 #ifdef HAVE_UNISTD_H
  26 #include <unistd.h>
  27 #endif
  28 #include <time.h>
  29 
  30 #include "orte/constants.h"
  31 
  32 #include "orte/mca/mca.h"
  33 #include "opal/mca/base/base.h"
  34 
  35 #include "orte/mca/errmgr/errmgr.h"
  36 #include "orte/runtime/orte_globals.h"
  37 #include "orte/util/proc_info.h"
  38 
  39 #include "orte/mca/filem/filem.h"
  40 #include "orte/mca/filem/base/base.h"
  41 
  42 /******************
  43  * Local Functions
  44  ******************/
  45 
  46 /******************
  47  * Object Stuff
  48  ******************/
  49 static void process_set_construct(orte_filem_base_process_set_t *req) {
  50     req->source = *ORTE_NAME_INVALID;
  51     req->sink   = *ORTE_NAME_INVALID;
  52 }
  53 
  54 static void process_set_destruct( orte_filem_base_process_set_t *req) {
  55     req->source = *ORTE_NAME_INVALID;
  56     req->sink   = *ORTE_NAME_INVALID;
  57 }
  58 
  59 OBJ_CLASS_INSTANCE(orte_filem_base_process_set_t,
  60                    opal_list_item_t,
  61                    process_set_construct,
  62                    process_set_destruct);
  63 
  64 static void file_set_construct(orte_filem_base_file_set_t *req) {
  65     req->local_target  = NULL;
  66     req->local_hint    = ORTE_FILEM_HINT_NONE;
  67 
  68     req->remote_target = NULL;
  69     req->remote_hint   = ORTE_FILEM_HINT_NONE;
  70 
  71     req->target_flag   = ORTE_FILEM_TYPE_UNKNOWN;
  72 
  73 }
  74 
  75 static void file_set_destruct( orte_filem_base_file_set_t *req) {
  76     if( NULL != req->local_target ) {
  77         free(req->local_target);
  78         req->local_target = NULL;
  79     }
  80     req->local_hint    = ORTE_FILEM_HINT_NONE;
  81 
  82     if( NULL != req->remote_target ) {
  83         free(req->remote_target);
  84         req->remote_target = NULL;
  85     }
  86     req->remote_hint   = ORTE_FILEM_HINT_NONE;
  87 
  88     req->target_flag   = ORTE_FILEM_TYPE_UNKNOWN;
  89 }
  90 
  91 OBJ_CLASS_INSTANCE(orte_filem_base_file_set_t,
  92                    opal_list_item_t,
  93                    file_set_construct,
  94                    file_set_destruct);
  95 
  96 static void req_construct(orte_filem_base_request_t *req) {
  97     OBJ_CONSTRUCT(&req->process_sets,  opal_list_t);
  98     OBJ_CONSTRUCT(&req->file_sets,     opal_list_t);
  99 
 100     req->num_mv = 0;
 101 
 102     req->is_done = NULL;
 103     req->is_active = NULL;
 104 
 105     req->exit_status = NULL;
 106 
 107     req->movement_type = ORTE_FILEM_MOVE_TYPE_UNKNOWN;
 108 }
 109 
 110 static void req_destruct( orte_filem_base_request_t *req) {
 111     opal_list_item_t* item = NULL;
 112 
 113     while( NULL != (item = opal_list_remove_first(&req->process_sets)) ) {
 114         OBJ_RELEASE(item);
 115     }
 116     OBJ_DESTRUCT(&req->process_sets);
 117 
 118     while( NULL != (item = opal_list_remove_first(&req->file_sets)) ) {
 119         OBJ_RELEASE(item);
 120     }
 121     OBJ_DESTRUCT(&req->file_sets);
 122 
 123     req->num_mv = 0;
 124 
 125     if( NULL != req->is_done ) {
 126         free(req->is_done);
 127         req->is_done = NULL;
 128     }
 129 
 130     if( NULL != req->is_active ) {
 131         free(req->is_active);
 132         req->is_active = NULL;
 133     }
 134 
 135     if( NULL != req->exit_status ) {
 136         free(req->exit_status);
 137         req->exit_status = NULL;
 138     }
 139 
 140     req->movement_type = ORTE_FILEM_MOVE_TYPE_UNKNOWN;
 141 }
 142 
 143 OBJ_CLASS_INSTANCE(orte_filem_base_request_t,
 144                    opal_list_item_t,
 145                    req_construct,
 146                    req_destruct);
 147 
 148 /***********************
 149  * None component stuff
 150  ************************/
 151 int orte_filem_base_module_init(void)
 152 {
 153     return ORTE_SUCCESS;
 154 }
 155 
 156 int orte_filem_base_module_finalize(void)
 157 {
 158     return ORTE_SUCCESS;
 159 }
 160 
 161 int orte_filem_base_none_put(orte_filem_base_request_t *request )
 162 {
 163     return ORTE_SUCCESS;
 164 }
 165 
 166 int orte_filem_base_none_put_nb(orte_filem_base_request_t *request )
 167 {
 168     return ORTE_SUCCESS;
 169 }
 170 
 171 int orte_filem_base_none_get(orte_filem_base_request_t *request)
 172 {
 173     return ORTE_SUCCESS;
 174 }
 175 
 176 int orte_filem_base_none_get_nb(orte_filem_base_request_t *request)
 177 {
 178     return ORTE_SUCCESS;
 179 }
 180 
 181 int orte_filem_base_none_rm(orte_filem_base_request_t *request)
 182 {
 183     return ORTE_SUCCESS;
 184 }
 185 
 186 int orte_filem_base_none_rm_nb(orte_filem_base_request_t *request)
 187 {
 188     return ORTE_SUCCESS;
 189 }
 190 
 191 int orte_filem_base_none_wait(orte_filem_base_request_t *request)
 192 {
 193     return ORTE_SUCCESS;
 194 }
 195 
 196 int orte_filem_base_none_wait_all(opal_list_t *request_list)
 197 {
 198     return ORTE_SUCCESS;
 199 }
 200 
 201 int orte_filem_base_none_preposition_files(orte_job_t *jdata,
 202                                            orte_filem_completion_cbfunc_t cbfunc,
 203                                            void *cbdata)
 204 {
 205     if (NULL != cbfunc) {
 206         cbfunc(ORTE_SUCCESS, cbdata);
 207     }
 208     return ORTE_SUCCESS;
 209 }
 210 
 211 int orte_filem_base_none_link_local_files(orte_job_t *jdata,
 212                                           orte_app_context_t *app)
 213 {
 214     return ORTE_SUCCESS;
 215 }

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