source: XIOS/dev/dev_ym/XIOS_COUPLING/src/distribution/grid_remote_connector.hpp @ 1930

Last change on this file since 1930 was 1918, checked in by ymipsl, 4 years ago

Big update on on going work related to data distribution and transfer between clients and servers.

  • move all related file into distribution directorie
  • implement the concept of data "View"
  • implement the concept of "connector" which make the data transfer between 2 differents "Views"

YM

  • Property svn:executable set to *
File size: 820 bytes
Line 
1#ifndef __GRID_REMOTE_CONNECTOR_HPP__
2#define __GRID_REMOTE_CONNECTOR_HPP__
3
4#include "xios_spl.hpp"
5#include "array_new.hpp"
6#include "mpi.hpp"
7#include "local_view.hpp"
8#include "distributed_view.hpp"
9#include "context_client.hpp"
10
11
12namespace xios
13{
14 
15  class CGridRemoteConnector
16  {
17
18    public:
19
20      CGridRemoteConnector(vector<CLocalView*>& srcView, vector<CDistributedView*>& dstView, MPI_Comm localComm) ;
21      void computeConnector(void) ;
22      void computeGenericMethod(void) ;
23      std::map<int, CArray<size_t,1>>& getDistributedGlobalIndex(int pos) { return elements_[pos] ;} 
24
25    private:
26      vector<map<int, CArray<size_t,1>>> elements_ ;
27      vector<CLocalView*> srcView_ ;
28      vector<CDistributedView*> dstView_ ;
29      MPI_Comm localComm_ ;
30
31  } ;
32
33}
34
35#endif
Note: See TracBrowser for help on using the repository browser.