Ignore:
Timestamp:
05/16/17 17:54:30 (7 years ago)
Author:
yushan
Message:

branch merged with trunk r1130

File:
1 edited

Legend:

Unmodified
Added
Removed
  • XIOS/dev/branch_yushan_merged/src/interface/c/icdata.cpp

    r961 r1134  
    1111 
    1212#include "xios.hpp" 
    13 #include "oasis_cinterface.hpp" 
     13//#include "oasis_cinterface.hpp" 
    1414 
    1515#include "attribute_template.hpp" 
     
    2323#include "context.hpp" 
    2424#include "context_client.hpp" 
    25 #include "mpi.hpp" 
     25#include "mpi_std.hpp" 
    2626#include "timer.hpp" 
    2727#include "array_new.hpp" 
     
    5555   { 
    5656      std::string str; 
    57       MPI_Comm local_comm; 
    58       MPI_Comm return_comm; 
     57      ep_lib::MPI_Comm local_comm; 
     58      ep_lib::MPI_Comm return_comm; 
     59       
     60      ep_lib::fc_comm_map.clear(); 
    5961 
    6062      if (!cstr2string(client_id, len_client_id, str)) return; 
     
    6264      int initialized; 
    6365      MPI_Initialized(&initialized); 
     66 
     67      #ifdef _usingEP 
     68      if (initialized) local_comm = ep_lib::EP_Comm_f2c(static_cast< int >(*f_local_comm)); 
     69      else local_comm = MPI_COMM_NULL; 
     70      #else 
    6471      if (initialized) local_comm=MPI_Comm_f2c(*f_local_comm); 
    65       else local_comm=MPI_COMM_NULL; 
     72      else local_comm = MPI_COMM_NULL; 
     73      #endif 
     74       
     75      
     76 
    6677      CXios::initClientSide(str, local_comm, return_comm); 
    67       *f_return_comm=MPI_Comm_c2f(return_comm); 
     78 
     79      #ifdef _usingEP 
     80      *f_return_comm = ep_lib::EP_Comm_c2f(return_comm); 
     81      #else 
     82      *f_return_comm = MPI_Comm_c2f(return_comm); 
     83      #endif 
     84 
    6885      CTimer::get("XIOS init").suspend(); 
    6986      CTimer::get("XIOS").suspend(); 
     
    7390   { 
    7491     std::string str; 
    75      MPI_Comm comm; 
     92     ep_lib::MPI_Comm comm; 
    7693 
    7794     if (!cstr2string(context_id, len_context_id, str)) return; 
    7895     CTimer::get("XIOS").resume(); 
    7996     CTimer::get("XIOS init context").resume(); 
    80      comm=MPI_Comm_f2c(*f_comm); 
    81      CClient::registerContext(str, comm); 
     97     comm = ep_lib::EP_Comm_f2c(static_cast< int >(*f_comm)); 
     98 
     99     CClient::registerContext(str,comm); 
     100           
    82101     CTimer::get("XIOS init context").suspend(); 
    83102     CTimer::get("XIOS").suspend(); 
     
    100119     CTimer::get("XIOS close definition").resume(); 
    101120     CContext* context = CContext::getCurrent(); 
     121      
    102122     context->closeDefinition(); 
     123      
    103124     CTimer::get("XIOS close definition").suspend(); 
    104125     CTimer::get("XIOS").suspend(); 
     
    109130     CTimer::get("XIOS").resume(); 
    110131     CTimer::get("XIOS context finalize").resume(); 
     132      
     133      
     134      
    111135     CContext* context = CContext::getCurrent(); 
    112136     context->finalize(); 
     
    429453      CContext* context = CContext::getCurrent(); 
    430454      if (!context->hasServer && !context->client->isAttachedModeEnabled()) 
    431         context->checkBuffersAndListen(); 
     455      { 
     456        context->checkBuffersAndListen(); 
     457      }   
    432458 
    433459      CArray<double, 3>data(data_k8, shape(data_Xsize, data_Ysize, data_Zsize), neverDeleteData); 
Note: See TracChangeset for help on using the changeset viewer.