Ignore:
Timestamp:
06/15/22 15:20:29 (2 years ago)
Author:
jderouillat
Message:

Introduced a new service (named defaultServicesId which contains all gatherers and all IO servers) to manage oasis_enddef through the different levels of servers. OASIS integration is moved in a dedicated virtual class CThirdPartyDriver whose an instance is owned by CServer.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • XIOS/dev/dev_ym/XIOS_COUPLING/src/client.cpp

    r2333 r2335  
    106106          MPI_Comm_split(globalComm, color, commRank, &clientComm) ; 
    107107        } 
    108         else // using oasis to split communicator 
    109         { 
    110           if (!is_MPI_Initialized) oasis_init(codeId) ; 
    111           oasis_get_localcomm(clientComm) ; 
     108        else 
     109        { 
     110          ERROR("void CClient::initialize(const string& codeId, MPI_Comm& localComm, MPI_Comm& returnComm)", <<"OASIS usage is set. In these conditions, XIOS initialization needs the local_comm created by OASIS."<<endl) ; 
    112111        } 
    113112      } 
     
    507506      if (!is_MPI_Initialized) 
    508507      { 
    509         if (CXios::usingOasis) oasis_finalize(); 
    510         else MPI_Finalize() ; 
     508        if (!CXios::usingOasis) MPI_Finalize() ; 
    511509      } 
    512510       
Note: See TracChangeset for help on using the changeset viewer.