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

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

Buffer client and buffer size may now be defining from iodex.xml file.
Defaults values are also specified.

YM

File size: 720 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.h>
7
8namespace xmlioserver
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.