Ignore:
Timestamp:
02/11/15 16:23:02 (9 years ago)
Author:
mhnguyen
Message:

Redesigning grid structure

+) Add an intermediate class to calculate distribution on client and servers
+) Change all index of attributes to zero (0), instead of one(1)

Test
+) On Curie
+) Test new features passes but some data are still shifted

File:
1 edited

Legend:

Unmodified
Added
Removed
  • XIOS/trunk/src/node/grid.hpp

    r540 r551  
    1111#include "array_new.hpp" 
    1212#include "attribute_array.hpp" 
     13#include "distribution_client.hpp" 
    1314 
    1415namespace xios { 
     
    2122   class CAxisGroup; 
    2223   class CGrid; 
     24   class CDistributionClient; 
    2325 
    2426   ///-------------------------------------------------------------- 
     
    9799         void outputField(int rank, const CArray<double,1>& stored,  CArray<double,2>& field)  ; 
    98100         void outputField(int rank, const CArray<double,1>& stored,  CArray<double,1>& field)  ; 
     101         void outputField(int rank, const CArray<double,1>& stored,  double* field); 
    99102 
    100103         virtual void parse(xml::CXMLNode & node); 
     
    154157         std::vector<CDomain*> getDomains(); 
    155158         std::vector<CAxis*> getAxis(); 
     159         std::vector<int> getAxisOrder(); 
    156160 
    157161      public: 
     
    161165         bool isChecked; 
    162166         bool isDomainAxisChecked; 
     167         bool isIndexSent; 
    163168 
    164169         CAxis*   axis ; 
     
    184189         map<int, CArray<int, 1>* > out_j_fromClient ; 
    185190         map<int, CArray<int, 1>* > out_l_fromClient ; 
     191 
     192         map<int, CArray<size_t, 1>* > outIndexFromClient; 
    186193         void checkMask(void) ; 
    187194 
     
    209216        std::vector<std::string> axisList_, domList_; 
    210217        bool isAxisListSet, isDomListSet; 
    211  
    212         // List order of axis in a grid, if there is a domain, it will take value -1 
    213         std::vector<int> axisOrder_; 
     218        CDistributionClient* clientDistribution_; 
    214219   }; // class CGrid 
    215220 
Note: See TracChangeset for help on using the changeset viewer.