source: XIOS/trunk/src/buffer_client.hpp @ 382

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

embed MPI header to avoid some porting problem

YM

File size: 715 bytes
Line 
1#ifndef __BUFFER_CLIENT_HPP__
2#define __BUFFER_CLIENT_HPP__
3
4#include "xmlioserver_spl.hpp"
5#include "buffer_out.hpp"
6#include "mpi.hpp"
7
8namespace xios
9{
10  class CClientBuffer
11  {
12   
13    public:
14   
15    CClientBuffer(MPI_Comm intercomm,int serverRank) ;
16    ~CClientBuffer() ;
17    bool isBufferFree(int size) ;
18    CBufferOut*  getBuffer(int size) ;   
19    bool checkBuffer(void) ;
20    bool hasPendingRequest(void) ;
21   
22    char* buffer[2] ;
23    int remain(void) ;
24
25    int current ;
26    int count ;
27    int bufferSize ;
28    int serverRank ;
29    bool pending ;
30   
31    size_t bufferSizeByServer ;
32   
33    MPI_Request request ;
34   
35    CBufferOut* retBuffer;   
36    MPI_Comm interComm ;
37  } ;
38
39}
40
41#endif
42
Note: See TracBrowser for help on using the repository browser.