Ignore:
Timestamp:
01/16/14 14:28:23 (10 years ago)
Author:
ymipsl
Message:

Add new parsing expression functionnalities
(modified files)

YM

File:
1 edited

Legend:

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

    r445 r459  
    1313#include "array_new.hpp" 
    1414#include "attribute_array.hpp" 
     15#include "expr_node.hpp" 
    1516//#include "context.hpp" 
    1617 
     
    6566         CField* getDirectFieldReference(void) const; 
    6667         CField* getBaseFieldReference(void)   const; 
     68         void addReference(CField* field) ; 
    6769         const std::vector<CField*> & getAllReference(void) const; 
    6870 
     
    9294 
    9395         template <int N> bool updateData(const CArray<double, N>&   data); 
     96         bool updateDataFromExpression(const CArray<double, 1>&   data); 
    9497          
    9598         bool updateDataServer 
     
    102105         bool hasDirectFieldReference(void) const; 
    103106         bool isActive(void) const; 
     107         bool active ; 
     108         bool hasOutputFile ; 
    104109 
    105110         /// Traitements /// 
     111         void processEnabledField(void) ; 
    106112         void solveRefInheritance(bool apply); 
    107113         void solveGridReference(void); 
     
    127133        void outputField(CArray<double,3>& fieldOut) ; 
    128134        void outputField(CArray<double,2>& fieldOut) ; 
    129          
     135        void parse(xml::CXMLNode & node) ; 
     136        CArray<double,1>* getInstantData(void)  ; 
    130137      public : 
    131138 
     
    148155          
    149156         CArray<double, 1> data; 
     157         CArray<double, 1> instantData; 
     158         bool hasInstantData ; 
    150159         map<int, CArray<double,1>* > data_srv ; 
    151160         bool isOnceOperation ; 
    152161         bool isFirstOperation ; 
     162         string content ; 
     163          
     164         list< pair<CField *,int> > fieldDependency ; 
     165         void buildExpression(void) ; 
     166         void addDependency(CField* field, int slotId) ; 
     167         void resetSlots(void) ; 
     168         vector<bool> slots ; 
     169         CDate* slotUpdateDate ; 
     170         CFieldNode * expression ; 
     171         bool hasExpression ; 
     172         bool slotsFull(void) ; 
     173         void setSlot(int slotId); 
     174         bool processed ; 
    153175 
    154176   }; // class CField 
Note: See TracChangeset for help on using the changeset viewer.