Ignore:
Timestamp:
10/21/11 19:01:35 (13 years ago)
Author:
ymipsl
Message:

reprise en main de la version de H. Ozdoba. Correction de différentes erreurs de conception et bug.
Version NEMO operationnel en client/server, interoperabilita avec OASIS, reconstition de fichiers via netcdf4/HDF5

YM

File:
1 edited

Legend:

Unmodified
Added
Removed
  • XMLIO_V2/dev/common/src/xmlio/main_server.cpp

    r278 r286  
    77#include "client.hpp" 
    88#include "server.hpp" 
    9 extern "C" 
    10 { 
    11    void xios_dtreatment_start(tree::CContext * context_hdl, int filetype, int comm_client_server, int comm_server); 
    12    void xios_set_timestep(double ts_year, double ts_month,  double ts_day, 
    13                           double ts_hour, double ts_minute, double ts_second); 
    14    void xios_write_data_k83(const char * fieldid, int fieldid_size, double * data_k8, int data_Xsize, int data_Ysize, int data_Zsize); 
    15    void xios_update_calendar(int step); 
    16 } 
     9#include "oasis_cinterface.hpp" 
     10#include <string> 
     11#include <iostream> 
     12 
     13#include <unistd.h> 
     14 
     15 
    1716// Point d'entrée du programme principal 
    1817 
     
    2120   try 
    2221   { 
    23       MPIComm comm_client, comm_client_server, comm_server; 
    24       CXIOSManager::Initialise (CXIOSManager::CLIENT_SERVER, &argc, &argv); 
    25       CMPIManager::DispatchClient(true, comm_client, comm_client_server,  comm_server); 
     22      MPI_Comm comm_client=MPI_COMM_NULL, comm_client_server=MPI_COMM_NULL, comm_server=MPI_COMM_NULL, comm_parent=MPI_COMM_NULL; 
     23//      sleep(60) ; 
     24      CTreeManager::ParseFile("iodef.xml"); 
     25 
     26      CTreeManager::SetCurrentContextId(StdString("xios")); 
     27      boost::shared_ptr<CVariable> var = CObjectFactory::GetObject<CVariable>("buffer_client_size");  
     28      std::cout<<CObjectFactory::GetObject<CVariable>("xios","using_oasis")->getData<bool>()<<std::endl; 
     29      
     30//      oasis_init(std::string("ionemo")) ; 
     31//      std::cout<<"Initialisation OASIS Ok"<<std::endl ; 
     32//      oasis_get_intracomm(comm_parent,std::string("oceanx")) ; 
     33//      std::cout<<"Appel Oasis intracom Ok"<<std::endl ; 
     34      CXIOSManager::Initialise(CXIOSManager::CLIENT_SERVER, &argc, &argv); 
     35      
     36      std::cout<<"Appel Dispatch client ?"<<std::endl ; 
     37      std::cout<<comm_client<<" "<<comm_client_server<<" "<<comm_server<<"  "<<comm_parent<<std::endl ; 
     38      CMPIManager::DispatchClient(true, comm_client, comm_client_server, comm_server, comm_parent); 
     39      std::cout<<"Appel Dispatch client Ok"<<std::endl ; 
    2640      CXIOSManager::RunServer("Nemo", comm_client_server, comm_server); 
    27       CXIOSManager::Finalize ();          
     41      CTreeManager::SetCurrentContextId(StdString("nemo")); 
     42      CServer::CreateServer(comm_client_server)->run(); 
     43      CXIOSManager::Finalize ();   
     44 
    2845   } 
    2946   catch (CException & exc) 
Note: See TracChangeset for help on using the changeset viewer.