source: XMLIO_V2/dev/common/src/context_client.hpp @ 300

Last change on this file since 300 was 300, checked in by ymipsl, 12 years ago

nouvelle version de developpement de xios

  • nouvelle interface fortran
  • recodage complet de la couche de communication
  • et bien d'autres choses...

YM

File size: 1.2 KB
Line 
1#ifndef __CONTEXT_CLIENT_HPP__
2#define __CONTEXT_CLIENT_HPP__
3
4#include "xmlioserver_spl.hpp"
5#include "buffer_out.hpp"
6#include "buffer_client.hpp"
7#include "event_client.hpp"
8#include <mpi.h>
9
10namespace xmlioserver
11{
12  namespace tree
13  {
14    class CContext ;
15  }
16 
17  class CContextClient
18  {
19 
20    public:
21    CContextClient(tree::CContext* parent,MPI_Comm intraComm, MPI_Comm interComm) ;
22//    void registerEvent(CEventClient& event) ;
23
24//    list<CBufferOut*> newEvent(CEventClient& event,list<int>& sizes) ; 
25    void sendEvent(CEventClient& event) ;
26
27    list<CBufferOut*> getBuffers(list<int>& serverlist, list<int>& sizeList) ;
28    void newBuffer(int rank) ;
29    size_t timeLine ;
30    int clientRank ;
31    int clientSize ;
32    int serverSize ;
33//    set<int> connectedServer ;
34    MPI_Comm interComm ;
35    MPI_Comm intraComm ;
36    map<int,CClientBuffer*> buffers ;
37    bool checkBuffers(list<int>& ranks) ;
38    bool checkBuffers(void);
39    void releaseBuffers(void);
40    void closeContext(void) ;
41    bool isServerLeader(void) ;
42    int getServerLeader(void) ;
43    void finalize(void) ;
44    void waitEvent(list<int>& ranks) ;
45
46    tree::CContext* context ;
47//    bool locked ;
48   
49  } ;
50
51
52
53
54}
55
56
57
58#endif
Note: See TracBrowser for help on using the repository browser.