Index: XIOS/dev/dev_ym/XIOS_COUPLING/src/filter/spatial_transform_filter.cpp
===================================================================
--- XIOS/dev/dev_ym/XIOS_COUPLING/src/filter/spatial_transform_filter.cpp	(revision 2001)
+++ XIOS/dev/dev_ym/XIOS_COUPLING/src/filter/spatial_transform_filter.cpp	(revision 2002)
@@ -50,5 +50,5 @@
       {
         CField* fieldAuxInput = CField::get(auxInputs[idx]);
-        fieldAuxInput->buildFilterGraph(gc, false);
+       //ym fieldAuxInput->buildFilterGraph(gc, false);
         fieldAuxInput->getInstantDataFilter()->connectOutput(firstFilter,idx+1);
       }
Index: XIOS/dev/dev_ym/XIOS_COUPLING/src/node/context.cpp
===================================================================
--- XIOS/dev/dev_ym/XIOS_COUPLING/src/node/context.cpp	(revision 2001)
+++ XIOS/dev/dev_ym/XIOS_COUPLING/src/node/context.cpp	(revision 2002)
@@ -1243,60 +1243,4 @@
       for (unsigned int i = 0; i < this->enabledReadModeFiles.size(); ++i)
         (void)this->enabledReadModeFiles[i]->readAttributesOfEnabledFieldsInReadMode();
-   }
-   CATCH_DUMP_ATTR
-
-    /*!
-      Go up the hierachical tree via field_ref and do check of attributes of fields
-      This can be done in a client then all computed information will be sent from this client to others
-      \param [in] sendToServer Flag to indicate whether calculated information will be sent
-   */
-   void CContext::solveOnlyRefOfEnabledFields(void)
-   TRY
-   {
-     int size = this->enabledFiles.size();
-     for (int i = 0; i < size; ++i)
-     {
-       this->enabledFiles[i]->solveOnlyRefOfEnabledFields();
-     }
-
-     for (int i = 0; i < size; ++i)
-     {
-       this->enabledFiles[i]->generateNewTransformationGridDest();
-     }
-
-     size = this->enabledCouplerOut.size();
-     for (int i = 0; i < size; ++i)
-     {
-       this->enabledCouplerOut[i]->solveOnlyRefOfEnabledFields();
-     }
-
-     for (int i = 0; i < size; ++i)
-     {
-       this->enabledCouplerOut[i]->generateNewTransformationGridDest();
-     }
-   }
-   CATCH_DUMP_ATTR
-
-    /*!
-      Go up the hierachical tree via field_ref and do check of attributes of fields.
-      The transformation can be done in this step.
-      All computed information will be sent from this client to others.
-      \param [in] sendToServer Flag to indicate whether calculated information will be sent
-   */
-   void CContext::solveAllRefOfEnabledFieldsAndTransform(void)
-   TRY
-   {
-     int size = this->enabledFiles.size();
-     for (int i = 0; i < size; ++i)
-     {
-       this->enabledFiles[i]->solveAllRefOfEnabledFieldsAndTransform();
-     }
-
-     size = this->enabledCouplerOut.size();
-     for (int i = 0; i < size; ++i)
-     {
-       this->enabledCouplerOut[i]->solveAllRefOfEnabledFieldsAndTransform();
-     }
-
    }
    CATCH_DUMP_ATTR
Index: XIOS/dev/dev_ym/XIOS_COUPLING/src/node/context.hpp
===================================================================
--- XIOS/dev/dev_ym/XIOS_COUPLING/src/node/context.hpp	(revision 2001)
+++ XIOS/dev/dev_ym/XIOS_COUPLING/src/node/context.hpp	(revision 2002)
@@ -138,5 +138,4 @@
          void initReadFiles(void);
          void prepareTimeseries(void);
-         void solveOnlyRefOfEnabledFields(void);         
          void postProcessFilterGraph();
          void startPrefetchingOfEnabledReadModeFiles();
@@ -145,6 +144,5 @@
          void findFieldsWithReadAccess(void);
          void triggerLateFields(void) ;
-         void solveAllRefOfEnabledFieldsAndTransform(void);
- 
+          
          std::map<int, StdSize> getAttributesBufferSize(std::map<int, StdSize>& maxEventSize, CContextClient* contextClient, bool bufferForWriting = false);
          std::map<int, StdSize> getDataBufferSize(std::map<int, StdSize>& maxEventSize, CContextClient* contextClient, bool bufferForWriting = false);
Index: XIOS/dev/dev_ym/XIOS_COUPLING/src/node/coupler_out.cpp
===================================================================
--- XIOS/dev/dev_ym/XIOS_COUPLING/src/node/coupler_out.cpp	(revision 2001)
+++ XIOS/dev/dev_ym/XIOS_COUPLING/src/node/coupler_out.cpp	(revision 2002)
@@ -161,53 +161,4 @@
    CATCH_DUMP_ATTR
 
-  
-   void CCouplerOut::solveOnlyRefOfEnabledFields(void)
-   TRY
-   {
-     int size = this->enabledFields.size();
-     for (int i = 0; i < size; ++i)
-     {
-       this->enabledFields[i]->solveOnlyReferenceEnabledField();
-     }
-   }
-   CATCH_DUMP_ATTR
-
-   void CCouplerOut::generateNewTransformationGridDest(void)
-   TRY
-   {
-     int size = this->enabledFields.size();
-     for (int i = 0; i < size; ++i)
-     {
-       this->enabledFields[i]->generateNewTransformationGridDest();
-     }
-   }
-   CATCH_DUMP_ATTR
-
-   void CCouplerOut::solveAllRefOfEnabledFieldsAndTransform(void)
-   TRY
-   {
-     int size = this->enabledFields.size();
-     for (int i = 0; i < size; ++i)
-     {       
-      this->enabledFields[i]->solveAllEnabledFieldsAndTransform();
-     }
-   }
-   CATCH_DUMP_ATTR
-
-   /*!
-    * Constructs the filter graph for each active field.
-    *
-    * \param gc the garbage collector to use when building the filter graph
-    */
-   void CCouplerOut::buildFilterGraphOfEnabledFields(CGarbageCollector& gc)
-   TRY
-   {
-     int size = this->enabledFields.size();
-     for (int i = 0; i < size; ++i)
-     {
-       this->enabledFields[i]->buildFilterGraph(gc, true);
-     }
-   }
-   CATCH_DUMP_ATTR
 
    void CCouplerOut::checkGridOfEnabledFields(void)
Index: XIOS/dev/dev_ym/XIOS_COUPLING/src/node/coupler_out.hpp
===================================================================
--- XIOS/dev/dev_ym/XIOS_COUPLING/src/node/coupler_out.hpp	(revision 2001)
+++ XIOS/dev/dev_ym/XIOS_COUPLING/src/node/coupler_out.hpp	(revision 2002)
@@ -91,8 +91,4 @@
         void solveFieldRefInheritance(bool apply);
         void createInterCommunicator(void) ;
-        void solveOnlyRefOfEnabledFields(void);
-        void generateNewTransformationGridDest(void);
-        void solveAllRefOfEnabledFieldsAndTransform() ;
-        void buildFilterGraphOfEnabledFields(CGarbageCollector& gc);
         void checkGridOfEnabledFields(void) ;
         void assignContext(void) ;
Index: XIOS/dev/dev_ym/XIOS_COUPLING/src/node/field.cpp
===================================================================
--- XIOS/dev/dev_ym/XIOS_COUPLING/src/node/field.cpp	(revision 2001)
+++ XIOS/dev/dev_ym/XIOS_COUPLING/src/node/field.cpp	(revision 2002)
@@ -394,82 +394,4 @@
   //----------------------------------------------------------------
 
-  /*!
-    Build up graph of grids which plays role of destination and source in grid transformation
-    This function should be called before \func solveGridReference()
-  */
-  void CField::buildGridTransformationGraph()
-  TRY
-  {
-    CContext* context = CContext::getCurrent();
-    if (context->getServiceType()==CServicesManager::CLIENT)
-    {
-      if (grid_ && !grid_->isTransformed() && hasDirectFieldReference() && grid_ != getDirectFieldReference()->grid_)
-      {
-        grid_->addTransGridSource(getDirectFieldReference()->grid_);
-      }
-    }
-  }
-  CATCH_DUMP_ATTR
-
-  /*!
-    Generate a new grid destination if there are more than one grid source pointing to a same grid destination
-  */
-  void CField::generateNewTransformationGridDest()
-  TRY
-  {
-    CContext* context = CContext::getCurrent();
-    if (context->getServiceType()==CServicesManager::CLIENT)
-    {
-      std::map<CGrid*,std::pair<bool,StdString> >& gridSrcMap = grid_->getTransGridSource();
-      if (1 < gridSrcMap.size())
-      {
-        // Search for grid source
-        CGrid* gridSrc = grid_;
-        CField* currField = this;
-        std::vector<CField*> hieraField;
-        while (currField->hasDirectFieldReference() && (gridSrc == grid_))
-        {
-          hieraField.push_back(currField);
-          CField* tmp = currField->getDirectFieldReference();
-          currField = tmp;
-          gridSrc = currField->grid_;
-        }
-
-        if (gridSrcMap.end() != gridSrcMap.find(gridSrc))
-        {
-          CGrid* gridTmp;
-          std::pair<bool,StdString> newGridDest = gridSrcMap[gridSrc];
-          if (newGridDest.first)
-          {
-            StdString newIdGridDest = newGridDest.second;
-            if (!CGrid::has(newIdGridDest))
-            {
-              ERROR("CGrid* CGrid::generateNewTransformationGridDest()",
-                << " Something wrong happened! Grid whose id " << newIdGridDest
-                << "should exist ");
-            }
-            gridTmp = CGrid::get(newIdGridDest);
-          }
-          else
-          {
-            StdString newIdGridDest = CGrid::generateId(gridSrc, grid_);
-            gridTmp = CGrid::cloneGrid(newIdGridDest, grid_);
-
-            (gridSrcMap[gridSrc]).first = true;
-            (gridSrcMap[gridSrc]).second = newIdGridDest;
-          }
-
-          // Update all descendants
-          for (std::vector<CField*>::iterator it = hieraField.begin(); it != hieraField.end(); ++it)
-          {
-            (*it)->grid_ = gridTmp;
-            (*it)->updateRef((*it)->grid_);
-          }
-        }
-      }
-    }
-  }
-  CATCH_DUMP_ATTR
-
   void CField::updateRef(CGrid* grid)
   TRY
@@ -497,45 +419,4 @@
   CATCH_DUMP_ATTR
    
-  /*!
-    Solve reference of all enabled fields even the source fields .
-    In this step, we do transformations.
-  */
-  void CField::solveAllEnabledFieldsAndTransform()
-  TRY
-  {
-    CContext* context = CContext::getCurrent();
-
-    if (!isReferenceSolvedAndTransformed)
-    {
-      isReferenceSolvedAndTransformed = true;
-
-      if (context->getServiceType()==CServicesManager::CLIENT)
-      {
-        solveRefInheritance(true);
-        if (hasDirectFieldReference()) getDirectFieldReference()->solveAllEnabledFieldsAndTransform();
-      }
-
-      if (context->getServiceType()==CServicesManager::GATHERER || context->getServiceType()==CServicesManager::OUT_SERVER)
-        solveServerOperation();
-
-      solveGridReference();
-
-      if (context->getServiceType()==CServicesManager::CLIENT)
-      {
-        solveGenerateGrid();
-        buildGridTransformationGraph();
-      }
-
-      solveGridDomainAxisRef(false);
-
-      if (context->getServiceType()==CServicesManager::CLIENT)
-      {
-        solveTransformedGrid();
-      }
-
-      solveGridDomainAxisRef(false);
-    }
-  }
-  CATCH_DUMP_ATTR
 
   void CField::checkGridOfEnabledFields()
@@ -564,64 +445,4 @@
     solveCheckMaskIndex(true);
   }   
-  CATCH_DUMP_ATTR
-
-  void CField::solveOnlyReferenceEnabledField(void)
-  TRY
-  {
-    CContext* context = CContext::getCurrent();
-    if (!isReferenceSolved)
-    {
-      isReferenceSolved = true;
-
-      if (context->getServiceType()==CServicesManager::CLIENT)
-      {
-        solveRefInheritance(true);
-        if (hasDirectFieldReference()) getDirectFieldReference()->solveOnlyReferenceEnabledField();
-      }
-
-      if (context->getServiceType()==CServicesManager::GATHERER || context->getServiceType()==CServicesManager::OUT_SERVER)
-        solveServerOperation();
-
-      solveGridReference();
-      grid_->solveElementsRefInheritance(true); // make it again to solve grid reading from file
-
-      if (context->getServiceType()==CServicesManager::CLIENT)
-      {
-        solveGenerateGrid();
-        buildGridTransformationGraph();
-      }
-    }
-  }
-  CATCH_DUMP_ATTR
-
-  void CField::solveAllReferenceEnabledField(bool doSending2Server)
-  TRY
-  {
-    CContext* context = CContext::getCurrent();
-    solveOnlyReferenceEnabledField();
-
-    if (!areAllReferenceSolved)
-    {
-      areAllReferenceSolved = true;
-      
-      if (context->getServiceType()==CServicesManager::CLIENT)
-      {
-        solveRefInheritance(true);
-        if (hasDirectFieldReference()) getDirectFieldReference()->solveAllReferenceEnabledField(false);
-      }
-      else if (context->getServiceType()==CServicesManager::GATHERER || context->getServiceType()==CServicesManager::OUT_SERVER)
-        solveServerOperation();
-
-      solveGridReference();
-    }
-
-    solveGridDomainAxisRef(doSending2Server);
-
-    if (context->getServiceType()==CServicesManager::CLIENT)
-    {
-      solveTransformedGrid();
-    }
-
-  }
   CATCH_DUMP_ATTR
 
@@ -1013,156 +834,6 @@
   }
 
-  /*!
-   * Constructs the graph filter for the field, enabling or not the data output.
-   * This method should not be called more than once with enableOutput equal to true.
-   *
-   * \param gc the garbage collector to use when building the filter graph
-   * \param enableOutput must be true when the field data is to be
-   *                     read by the client or/and written to a file
-   */
-   // ym obselete : to be removed later....
-  void CField::buildFilterGraph(CGarbageCollector& gc, bool enableOutput)
-  TRY
-  {     
-   //  ==> before removing, solving dependency in spatial_transform_filter.cpp about auxilairy field
-/*
-    if (!isReferenceSolvedAndTransformed) solveAllEnabledFieldsAndTransform();
-    if (!isGridChecked) checkGridOfEnabledFields();
-
-    const bool detectMissingValues = (!detect_missing_value.isEmpty() && !default_value.isEmpty() && detect_missing_value == true);
-    const double defaultValue  = detectMissingValues ? default_value : (!default_value.isEmpty() ? default_value : 0.0);
-
-    CContext* context = CContext::getCurrent();
-    bool hasWriterServer = context->getServiceType()==CServicesManager::OUT_SERVER ;
-    bool hasIntermediateServer = context->getServiceType()==CServicesManager::GATHERER ;
-
-    if (hasWriterServer)
-    {
-      if (!instantDataFilter)
-        instantDataFilter = clientSourceFilter = std::shared_ptr<CSourceFilter>(new CSourceFilter(gc, grid_, true, false));
-
-
-      // If the field data is to be read by the client or/and written to a file
-      if (enableOutput && !clientToModelStoreFilter_ && !fileWriterFilter)
-      {
-        if (getRelFile() && (getRelFile()->mode.isEmpty() || getRelFile()->mode == CFile::mode_attr::write))
-        {
-          fileServerWriterFilter = std::shared_ptr<CFileServerWriterFilter>(new CFileServerWriterFilter(gc, this));
-          instantDataFilter->connectOutput(fileServerWriterFilter, 0);
-        }
-      }
-    }
-    else if (hasIntermediateServer)
-    {
-      if (!instantDataFilter)
-        instantDataFilter = clientSourceFilter = std::shared_ptr<CSourceFilter>(new CSourceFilter(gc, grid_, false, false));
-
-      // If the field data is to be read by the client or/and written to a file
-      if (enableOutput && !clientToModelStoreFilter_ && !fileWriterFilter)
-      {
-        if (getRelFile() && (getRelFile()->mode.isEmpty() || getRelFile()->mode == CFile::mode_attr::write))
-        {
-          fileWriterFilter = std::shared_ptr<CFileWriterFilter>(new CFileWriterFilter(gc, this, getRelFile()->getContextClient()));
-          instantDataFilter->connectOutput(fileWriterFilter, 0);
-        }
-      }
-    }
-    else
-    {
-      // Start by building a filter which can provide the field's instant data
-      if (!instantDataFilter)
-      {
-        // Check if we have an expression to parse
-        if (hasExpression())
-        {
-          boost::scoped_ptr<IFilterExprNode> expr(parseExpr(getExpression() + '\0'));
-          std::shared_ptr<COutputPin> filter = expr->reduce(gc, *this);
-
-          // Check if a spatial transformation is needed
-          if (!field_ref.isEmpty())
-          {
-            CGrid* gridRef = CField::get(field_ref)->grid_;
-            if (grid_ && grid_ != gridRef && grid_->hasTransform())
-            {
-                std::pair<std::shared_ptr<CFilter>, std::shared_ptr<CFilter> > filters = CSpatialTransformFilter::buildFilterGraph(gc, gridRef, grid_, detectMissingValues, defaultValue); 
-
-              filter->connectOutput(filters.first, 0);
-              filter = filters.second;
-            }
-          }
-
-          instantDataFilter = filter;
-        }
-        // Check if we have a reference on another field
-        else if (!field_ref.isEmpty()) instantDataFilter = getFieldReference(gc);
-        // Check if the data is to be read from a file
-        else if (getRelFile() && !getRelFile()->mode.isEmpty() && getRelFile()->mode == CFile::mode_attr::read)
-        {
-          checkTimeAttributes();
-          instantDataFilter = serverSourceFilter = std::shared_ptr<CSourceFilter>(new CSourceFilter(gc, grid_, true, false, freq_offset, true,
-                                                                                                       detectMissingValues, defaultValue));
-        }
-        else // The data might be passed from the model
-        {
-          if (check_if_active.isEmpty()) check_if_active = false; 
-          instantDataFilter = clientSourceFilter = std::shared_ptr<CSourceFilter>(new CSourceFilter(gc, grid_, false, true, NoneDu, false,
-                                                                                                      detectMissingValues, defaultValue));
-        }
-      }
-
-      // If the field data is to be read by the client or/and written to a file
-      if (enableOutput && !clientToModelStoreFilter_ && !fileWriterFilter)
-      {
-        if (!read_access.isEmpty() && read_access)
-        {
-          clientToModelStoreFilter_ = std::shared_ptr<CClientToModelStoreFilter>(new CClientToModelStoreFilter(gc, this));
-          instantDataFilter->connectOutput(clientToModelStoreFilter_, 0);
-        }
-
-        if (getRelFile() && (getRelFile()->mode.isEmpty() || getRelFile()->mode == CFile::mode_attr::write))
-        {
-          fileWriterFilter = std::shared_ptr<CFileWriterFilter>(new CFileWriterFilter(gc, this, getRelFile()->getContextClient()));
-          getTemporalDataFilter(gc, getRelFile()->output_freq)->connectOutput(fileWriterFilter, 0);
-        }
-      }
-    }
-*/  
-  }
-  CATCH_DUMP_ATTR
-
-  /*!
-   * Returns the filter needed to handle the field reference.
-   * This method should only be called when building the filter graph corresponding to the field.
-   *
-   * \param gc the garbage collector to use
-   * \return the output pin corresponding to the field reference
-   */
-  std::shared_ptr<COutputPin> CField::getFieldReference(CGarbageCollector& gc)
-  TRY
-  {
-    if (instantDataFilter || field_ref.isEmpty())
-      ERROR("COutputPin* CField::getFieldReference(CGarbageCollector& gc)",
-            "Impossible to get the field reference for a field which has already been parsed or which does not have a field_ref.");
-
-    CField* fieldRef = CField::get(field_ref);
-    fieldRef->buildFilterGraph(gc, false);
-
-    std::pair<std::shared_ptr<CFilter>, std::shared_ptr<CFilter> > filters;
-    // Check if a spatial transformation is needed
-    if (grid_ && grid_ != fieldRef->grid_ && grid_->hasTransform())
-    {       
-      bool hasMissingValue = (!detect_missing_value.isEmpty() && !default_value.isEmpty() && detect_missing_value == true);
-      double defaultValue  = hasMissingValue ? default_value : (!default_value.isEmpty() ? default_value : 0.0);                                
-      filters = CSpatialTransformFilter::buildFilterGraph(gc, fieldRef->grid_, grid_, hasMissingValue, defaultValue);
-    }
-    else
-      filters.first = filters.second = std::shared_ptr<CFilter>(new CPassThroughFilter(gc));
-
-    fieldRef->getInstantDataFilter()->connectOutput(filters.first, 0);
-
-    return filters.second;
-  }
-  CATCH_DUMP_ATTR
-
+  
+  
   /*!
    * Returns the filter needed to handle a self reference in the field's expression.
@@ -1463,39 +1134,5 @@
   CATCH_DUMP_ATTR
 
-  void CField::solveTransformedGrid()
-  TRY
-  {
-    if (grid_ && !grid_->isTransformed() && hasDirectFieldReference() && grid_ != getDirectFieldReference()->grid_)
-    {
-      std::vector<CGrid*> grids;
-      // Source grid
-      grids.push_back(getDirectFieldReference()->grid_);
-      auto gridPath = getGridPath() ;
-      grids.insert(grids.begin(), gridPath.begin(), gridPath.end());
-
-      for (size_t i = 0, count = grids.size() - 1; i < count; ++i)
-      {
-        CGrid *gridSrc  = grids[i];
-        CGrid *gridDest = grids[i + 1];
-        if (!gridDest->isTransformed()) gridDest->transformGrid(gridSrc);
-      }
-    }
-    else if (grid_ && grid_->hasTransform() && !grid_->isTransformed())
-    {
-      // Temporarily deactivate the self-transformation of grid
-      // grid_->transformGrid(grid_);
-    }
-  }
-  CATCH_DUMP_ATTR
-
-  void CField::solveGenerateGrid()
-  TRY
-  {
-    if (grid_ && !grid_->isTransformed() && hasDirectFieldReference() && grid_ != getDirectFieldReference()->grid_)
-      grid_->completeGrid(getDirectFieldReference()->grid_);
-    else grid_->completeGrid();
-  }
-  CATCH_DUMP_ATTR
-
+  
   void CField::solveGridDomainAxisBaseRef()
   TRY
Index: XIOS/dev/dev_ym/XIOS_COUPLING/src/node/field.hpp
===================================================================
--- XIOS/dev/dev_ym/XIOS_COUPLING/src/node/field.hpp	(revision 2001)
+++ XIOS/dev/dev_ym/XIOS_COUPLING/src/node/field.hpp	(revision 2002)
@@ -129,15 +129,8 @@
          void solveServerOperation(void);
          void solveCheckMaskIndex(bool doSendingIndex);
-         void solveAllReferenceEnabledField(bool doSending2Server);
-         void solveOnlyReferenceEnabledField(void);
-         void generateNewTransformationGridDest();
          void updateRef(CGrid* grid);
-         void buildGridTransformationGraph();
          void solveGridDomainAxisRef(bool checkAtt);
-         void solveTransformedGrid();
-         void solveGenerateGrid();
          void solveGridDomainAxisBaseRef();
 
-         void solveAllEnabledFieldsAndTransform();
          void checkGridOfEnabledFields();
          void sendGridOfEnabledFields();
@@ -158,6 +151,4 @@
          void checkTimeAttributes(CDuration* freqOp=NULL);
 
-         void buildFilterGraph(CGarbageCollector& gc, bool enableOutput);
-
          bool buildWorkflowGraph(CGarbageCollector& gc) ;
          bool buildWorkflowGraphDone_ = false ;
@@ -166,5 +157,4 @@
          
          
-         std::shared_ptr<COutputPin> getFieldReference(CGarbageCollector& gc);
          std::shared_ptr<COutputPin> getSelfReference(CGarbageCollector& gc);
          std::shared_ptr<COutputPin> getTemporalDataFilter(CGarbageCollector& gc, CDuration outFreq);
Index: XIOS/dev/dev_ym/XIOS_COUPLING/src/node/file.cpp
===================================================================
--- XIOS/dev/dev_ym/XIOS_COUPLING/src/node/file.cpp	(revision 2001)
+++ XIOS/dev/dev_ym/XIOS_COUPLING/src/node/file.cpp	(revision 2002)
@@ -734,5 +734,8 @@
 
         // Now complete domain and axis associated with this field
-        enabledFields[idx]->solveGenerateGrid();
+       
+       //ym => this a problem in wich order are done the grid generation. Probably metadata are read in file and after the grid is ditributed by the filter
+       // => must be checked in detail. But solveGenerated grid is not existing any more with new transformation framework
+       // enabledFields[idx]->solveGenerateGrid();
 
         // Read necessary value from file
@@ -818,23 +821,4 @@
 
    //----------------------------------------------------------------
-
-   /*!
-   \brief Resolve all reference of active fields.
-      In order to know exactly which data each active field has, a search for all its
-   reference to find its parents or/and its base reference object must be done. Moreover
-   during this search, there are some information that can only be sent to server AFTER
-   all information of active fields are created on server side, e.g: checking mask or index
-   \param [in] sendToServer: Send all info to server (true) or only a part of it (false)
-   */
-   void CFile::solveOnlyRefOfEnabledFields(void)
-   TRY
-   {
-     int size = this->enabledFields.size();
-     for (int i = 0; i < size; ++i)
-     {
-       this->enabledFields[i]->solveOnlyReferenceEnabledField();
-     }
-   }
-   CATCH_DUMP_ATTR
 
    void CFile::checkGridOfEnabledFields()
@@ -927,49 +911,4 @@
    CATCH_DUMP_ATTR
 
-   void CFile::generateNewTransformationGridDest()
-   TRY
-   {
-     int size = this->enabledFields.size();
-     for (int i = 0; i < size; ++i)
-     {
-       this->enabledFields[i]->generateNewTransformationGridDest();
-     }
-   }
-   CATCH_DUMP_ATTR
-
-   /*!
-   \brief Resolve all reference of active fields.
-      In order to know exactly which data each active field has, a search for all its
-   reference to find its parents or/and its base reference object must be done. Moreover
-   during this search, there are some information that can only be sent to server AFTER
-   all information of active fields are created on server side, e.g: checking mask or index
-   \param [in] sendToServer: Send all info to server (true) or only a part of it (false)
-   */
-   void CFile::solveAllRefOfEnabledFieldsAndTransform(void)
-   TRY
-   {
-     int size = this->enabledFields.size();
-     for (int i = 0; i < size; ++i)
-     {       
-      this->enabledFields[i]->solveAllEnabledFieldsAndTransform();
-     }
-   }
-   CATCH_DUMP_ATTR
-
-   /*!
-    * Constructs the filter graph for each active field.
-    *
-    * \param gc the garbage collector to use when building the filter graph
-    */
-   void CFile::buildFilterGraphOfEnabledFields(CGarbageCollector& gc)
-   TRY
-   {
-     int size = this->enabledFields.size();
-     for (int i = 0; i < size; ++i)
-     {
-       this->enabledFields[i]->buildFilterGraph(gc, true);
-     }
-   }
-   CATCH_DUMP_ATTR
 
    /*!
Index: XIOS/dev/dev_ym/XIOS_COUPLING/src/node/file.hpp
===================================================================
--- XIOS/dev/dev_ym/XIOS_COUPLING/src/node/file.hpp	(revision 2001)
+++ XIOS/dev/dev_ym/XIOS_COUPLING/src/node/file.hpp	(revision 2002)
@@ -109,8 +109,5 @@
          void solveFieldRefInheritance(bool apply);
          void processEnabledFile(void);
-         void solveOnlyRefOfEnabledFields(void);
-         void generateNewTransformationGridDest();
          
-         void buildFilterGraphOfEnabledFields(CGarbageCollector& gc);
          void postProcessFilterGraph();
          void prefetchEnabledReadModeFields();
@@ -118,5 +115,4 @@
          void doPostTimestepOperationsForEnabledReadModeFields();
 
-         void solveAllRefOfEnabledFieldsAndTransform(void);
          void checkGridOfEnabledFields();
          void sendGridOfEnabledFields();
Index: XIOS/dev/dev_ym/XIOS_COUPLING/src/node/grid.cpp
===================================================================
--- XIOS/dev/dev_ym/XIOS_COUPLING/src/node/grid.cpp	(revision 2001)
+++ XIOS/dev/dev_ym/XIOS_COUPLING/src/node/grid.cpp	(revision 2002)
@@ -17,5 +17,4 @@
 #include "distribution_client.hpp"
 #include "grid_transformation.hpp"
-#include "grid_generate.hpp"
 #include "server.hpp"
 #include "distribution_type.hpp"
@@ -46,5 +45,5 @@
       , transformations_(0), isTransformed_(false)
       , axisPositionInGrid_(), hasDomainAxisBaseRef_(false)
-      , gridSrc_(), hasTransform_(false), isGenerated_(false), order_()
+      , gridSrc_(), hasTransform_(false), order_()
       , clients()
    {
@@ -65,5 +64,5 @@
       , transformations_(0), isTransformed_(false)
       , axisPositionInGrid_(), hasDomainAxisBaseRef_(false)
-      , gridSrc_(), hasTransform_(false), isGenerated_(false), order_()
+      , gridSrc_(), hasTransform_(false), order_()
       , clients()
    {
@@ -838,10 +837,5 @@
      if (this->isChecked) return;
      this->checkElementsAttributes();
-
-     if (!(this->hasTransform() && !this->isTransformed()))
-      this->isChecked = true;
-
-     if (!(this->hasTransform() && (!this->isGenerated())))
-      this->isChecked = true;
+     this->isChecked = true;
    }
    CATCH_DUMP_ATTR
@@ -938,43 +932,4 @@
 
   
-   /*!
-     Compute the global index of grid to send to server as well as the connected server of the current client.
-     First of all, from the local data on each element of grid, we can calculate their local index which also allows us to know
-     their global index. We can have a map of global index of grid and local index that each client holds
-     Then, each client holds a piece of information about the distribution of servers, which permits to compute the connected server(s)
-     of the current client.
-   */
-   // ym obsolete : to be removed....
-   void CGrid::computeIndex(void)
-   TRY
-   {
-    // old interface
-     CContext* context = CContext::getCurrent();
-     if (isScalarGrid())
-     {
-       //computeClientIndexScalarGrid();
-       if (context->getServiceType()==CServicesManager::CLIENT || context->getServiceType()==CServicesManager::GATHERER)
-       {
-         // ym computeConnectedClientsScalarGrid();
-       }
-     }
-     else
-     {
-       //computeClientIndex();
-       if (context->getServiceType()==CServicesManager::CLIENT || context->getServiceType()==CServicesManager::GATHERER)
-       {
-         //computeConnectedClients();
-       }
-     }
-//ym     if (CServer::serverLevel==2)
-     if (context->getServiceType()==CServicesManager::OUT_SERVER)
-     {
-       if (clientDistribution_!=0) clientDistribution_->partialClear() ;
-     }
-   }
-   CATCH_DUMP_ATTR
-
-   
-
 
    CGrid* CGrid::cloneGrid(const StdString& idNewGrid, CGrid* gridSrc)
@@ -1730,150 +1685,5 @@
   CATCH_DUMP_ATTR
 
-  bool CGrid::isTransformed()
-  TRY
-  {
-    return isTransformed_;
-  }
-  CATCH_DUMP_ATTR
-
-  void CGrid::setTransformed()
-  TRY
-  {
-    isTransformed_ = true;
-  }
-  CATCH_DUMP_ATTR
-
-  CGridTransformation* CGrid::getTransformations()
-  TRY
-  {
-    return transformations_;
-  }
-  CATCH_DUMP_ATTR
-
-  void CGrid::addTransGridSource(CGrid* gridSrc)
-  TRY
-  {
-    if (gridSrc_.end() == gridSrc_.find(gridSrc))
-      gridSrc_.insert(make_pair(gridSrc,make_pair(false,"")));
-  }
-  CATCH_DUMP_ATTR
-
-  std::map<CGrid*,std::pair<bool,StdString> >& CGrid::getTransGridSource()
-  TRY
-  {
-    return gridSrc_;
-  }
-  CATCH_DUMP_ATTR
-
-  /*!
-     Complete all the necessary (and lacking) attributes of a grid
-     This function is similar to gridTransformation but works only (till now) on generate_rectilinear_domain transformation
-  */
-  void CGrid::completeGrid(CGrid* transformGridSrc)
-  TRY
-  {
-    if (nullptr != transformGridSrc)
-    {
-      if (axis_domain_order.numElements() != transformGridSrc->axis_domain_order.numElements())
-      {
-        ERROR("CGrid::completeGrid(CGrid* transformGridSrc)",
-             << "Two grids have different number of elements. " << std::endl
-             << "Number of element of grid destination " << this->getId() << " is " << axis_domain_order.numElements() << std::endl
-             << "Number of element of grid source " << transformGridSrc->getId() << " is " << transformGridSrc->axis_domain_order.numElements());
-      }
-    }
-
-    if (isGenerated()) return;
-    setGenerated();
-
-    CGridGenerate gridGenerate(this, transformGridSrc);
-    gridGenerate.completeGrid();
-  }
-  CATCH_DUMP_ATTR
-
-  bool CGrid::isGenerated()
-  TRY
-  {
-    return isGenerated_;
-  }
-  CATCH
-
-  void CGrid::setGenerated()
-  TRY
-  {
-    isGenerated_ = true;
-  }
-  CATCH_DUMP_ATTR
-
-  void CGrid::transformGrid(CGrid* transformGridSrc)
-  TRY
-  {
-    if (!transformGridSrc)
-      ERROR("CGrid::transformGrid(CGrid* transformGridSrc)",
-            << "Impossible to transform grid '" << getId() << "', the source grid is null.");
-
-    if (isTransformed()) return;
-    setTransformed();
-    if (axis_domain_order.numElements() != transformGridSrc->axis_domain_order.numElements())
-    {
-      ERROR("CGrid::transformGrid(CGrid* transformGridSrc)",
-           << "Two grids have different number of elements. " << std::endl
-           << "Number of element of grid destination " << this->getId() << " is " << axis_domain_order.numElements() << std::endl
-           << "Number of element of grid source " << transformGridSrc->getId() << " is " << transformGridSrc->axis_domain_order.numElements());
-    }
-    else
-    {
-    }
-
-    transformations_ = new CGridTransformation(this, transformGridSrc);
-    transformations_->computeAll();
-    if (0 < transformations_->getNbAlgo()) hasTransform_ = true;
-
- }
-  CATCH_DUMP_ATTR
-
-
-
-
-  void CGrid::prepareTransformGrid(CGrid* transformGridSrc)
-  TRY
-  {
-    if (prepareTransformGrid_done_) return ;
-
-    if (!transformGridSrc)
-      ERROR("CGrid::transformGrid(CGrid* transformGridSrc)",
-            << "Impossible to transform grid '" << getId() << "', the source grid is null.");
-
-    if (isTransformed()) return;
-    setTransformed();
-    if (axis_domain_order.numElements() != transformGridSrc->axis_domain_order.numElements())
-    {
-      ERROR("CGrid::transformGrid(CGrid* transformGridSrc)",
-           << "Two grids have different number of elements. " << std::endl
-           << "Number of element of grid destination " << this->getId() << " is " << axis_domain_order.numElements() << std::endl
-           << "Number of element of grid source " << transformGridSrc->getId() << " is " << transformGridSrc->axis_domain_order.numElements());
-    }
-    else
-    {
-    }
-
-    transformations_ = new CGridTransformation(this, transformGridSrc);
-    if (0 < transformations_->getNbAlgo()) hasTransform_ = true;
-
-    prepareTransformGrid_done_ = true; 
-  }
-  CATCH_DUMP_ATTR
-
-
-  void CGrid::makeTransformGrid(void)
-  TRY
-  {
-    if (makeTransformGrid_done_) return ;
-    transformations_->computeAll();
-
-    makeTransformGrid_done_ = true ; 
-  }
-  CATCH_DUMP_ATTR
-
+  
 
   vector<std::string> CGrid::getAuxInputTransformGrid(void)
@@ -1881,22 +1691,4 @@
   {
     if (transformations_ != nullptr) return transformations_->getAuxInputs() ;
-  }
-  CATCH_DUMP_ATTR
-
-
-  bool CGrid::hasTransform()
-  TRY
-  {
-    if (hasTransform_) return hasTransform_;
-
-    std::vector<CDomain*> domList = getDomains();
-    std::vector<CAxis*> axisList = getAxis();
-    std::vector<CScalar*> scalarList = getScalars();
-
-    for (int idx = 0; idx < domList.size(); ++idx) hasTransform_ |= domList[idx]->hasTransformation();
-    for (int idx = 0; idx < axisList.size(); ++idx) hasTransform_ |= axisList[idx]->hasTransformation();
-    for (int idx = 0; idx < scalarList.size(); ++idx) hasTransform_ |= scalarList[idx]->hasTransformation();
-
-    return hasTransform_;
   }
   CATCH_DUMP_ATTR
Index: XIOS/dev/dev_ym/XIOS_COUPLING/src/node/grid.hpp
===================================================================
--- XIOS/dev/dev_ym/XIOS_COUPLING/src/node/grid.hpp	(revision 2001)
+++ XIOS/dev/dev_ym/XIOS_COUPLING/src/node/grid.hpp	(revision 2002)
@@ -149,6 +149,4 @@
 
       public:            
-         void computeIndex(void);
-         void computeIndexScalarGrid();
          void solveDomainAxisRef(bool areAttributesChecked);
          void checkElementsAttributes(void) ;
@@ -219,21 +217,5 @@
          CGridTransformation* getTransformations();
 
-         void transformGrid(CGrid* transformGridSrc);
-         
-         void prepareTransformGrid(CGrid* transformGridSrc);
-         bool prepareTransformGrid_done_ = false ;
-
-         void makeTransformGrid(void); 
-         bool makeTransformGrid_done_ = false ;
-         
          std::vector<std::string> getAuxInputTransformGrid(void) ; 
-         std::map<CGrid*, std::pair<bool,StdString> >& getTransGridSource();
-         bool hasTransform();
-         void addTransGridSource(CGrid* gridSrc);
-         void completeGrid(CGrid* transformGridSrc = 0);
-         bool isTransformed();
-         void setTransformed();
-         bool isGenerated();
-         void setGenerated();
          void setTransformationAlgorithms();
          pair<shared_ptr<CFilter>, shared_ptr<CFilter> > buildTransformationGraph(CGarbageCollector& gc, bool isSource, CGrid* gridSrc, double detectMissingValues,
@@ -245,5 +227,5 @@
         CGridAlgorithm* getGridAlgorithm(void) { return gridAlgorithm_ ;}
       private:
-         bool isTransformed_, isGenerated_;
+         bool isTransformed_;
          CGridTransformation* transformations_;
          bool hasTransform_;
Index: XIOS/dev/dev_ym/XIOS_COUPLING/src/transformation/algo_types.hpp
===================================================================
--- XIOS/dev/dev_ym/XIOS_COUPLING/src/transformation/algo_types.hpp	(revision 2001)
+++ XIOS/dev/dev_ym/XIOS_COUPLING/src/transformation/algo_types.hpp	(revision 2002)
@@ -1,4 +1,4 @@
 /*!
-   \file grid_generate.hpp
+   \file algo_type.hpp
    \author Ha NGUYEN
    \since 28 Aug 2015
Index: XIOS/dev/dev_ym/XIOS_COUPLING/src/transformation/domain_algorithm/domain_algorithm_interpolate.cpp
===================================================================
--- XIOS/dev/dev_ym/XIOS_COUPLING/src/transformation/domain_algorithm/domain_algorithm_interpolate.cpp	(revision 2001)
+++ XIOS/dev/dev_ym/XIOS_COUPLING/src/transformation/domain_algorithm/domain_algorithm_interpolate.cpp	(revision 2002)
@@ -48,4 +48,5 @@
 TRY
 {
+  cout<<"REGISTRED"<<endl ;
   return CGridTransformationFactory<CDomain>::registerTransformation(TRANS_INTERPOLATE_DOMAIN, create);
 }
@@ -116,5 +117,5 @@
 
   CContext* context = CContext::getCurrent();
-  int clientRank = context->intraCommRank_;
+  int clientRank = context->intraCommRank_; 
   int i, j, k, idx;
   std::vector<double> srcPole(3,0), dstPole(3,0);
Index: XIOS/dev/dev_ym/XIOS_COUPLING/src/transformation/domain_algorithm/domain_algorithm_interpolate.hpp
===================================================================
--- XIOS/dev/dev_ym/XIOS_COUPLING/src/transformation/domain_algorithm/domain_algorithm_interpolate.hpp	(revision 2001)
+++ XIOS/dev/dev_ym/XIOS_COUPLING/src/transformation/domain_algorithm/domain_algorithm_interpolate.hpp	(revision 2002)
@@ -95,8 +95,11 @@
                                                 std::map<int, int>& elementPositionInGridDst2AxisPosition,
                                                 std::map<int, int>& elementPositionInGridDst2DomainPosition);
+  
+  CDomain* domainSrc_ ;
+  CDomain* domainDest_ ;
+
+public:
   static bool dummyRegistered_;
 
-  CDomain* domainSrc_ ;
-  CDomain* domainDest_ ;
 
 };
Index: XIOS/dev/dev_ym/XIOS_COUPLING/src/transformation/generic_algorithm_transformation_new.cpp.xxx
===================================================================
--- XIOS/dev/dev_ym/XIOS_COUPLING/src/transformation/generic_algorithm_transformation_new.cpp.xxx	(revision 2001)
+++ 	(revision )
@@ -1,93 +1,0 @@
-/*!
-   \file generic_algorithm_transformation.hpp
-   \author Ha NGUYEN
-   \since 14 May 2015
-   \date 21 Mars 2016
-
-   \brief Interface for all transformation algorithms.
- */
-#include "generic_algorithm_transformation.hpp"
-#include "context.hpp"
-#include "context_client.hpp"
-#include "client_client_dht_template.hpp"
-#include "utils.hpp"
-#include "timer.hpp"
-#include "mpi.hpp"
-
-namespace xios {
-
-CGenericAlgorithmTransformation::CGenericAlgorithmTransformation()
- : transformationMapping_(), transformationWeight_(), transformationPosition_(),
-   idAuxInputs_(), type_(ELEMENT_NO_MODIFICATION_WITH_DATA), indexElementSrc_(),
-   computedProcSrcNonTransformedElement_(false), eliminateRedondantSrc_(true), isDistributedComputed_(false)
-{
-}
-
-void CGenericAlgorithmTransformation::updateData(CArray<double,1>& dataOut)
-{
-
-}
-
-void CGenericAlgorithmTransformation::apply(const std::vector<std::pair<int,double> >& localIndex,
-                                            const double* dataInput,
-                                            CArray<double,1>& dataOut,
-                                            std::vector<bool>& flagInitial,
-                                            bool ignoreMissingValue, bool firstPass  )
-TRY
-{
-  int nbLocalIndex = localIndex.size();   
-  double defaultValue = std::numeric_limits<double>::quiet_NaN();
-    
-  if (ignoreMissingValue)
-  {
-    if (firstPass) dataOut=defaultValue ;
-    
-    for (int idx = 0; idx < nbLocalIndex; ++idx)
-    {
-      if (! NumTraits<double>::isNan(*(dataInput + idx)))
-      {
-        if (flagInitial[localIndex[idx].first]) dataOut(localIndex[idx].first) = *(dataInput + idx) * localIndex[idx].second;
-        else dataOut(localIndex[idx].first) += *(dataInput + idx) * localIndex[idx].second;
-        flagInitial[localIndex[idx].first] = false; // Reset flag to indicate not all data source are nan
-      }
-    }
-
-  }
-  else
-  {
-    for (int idx = 0; idx < nbLocalIndex; ++idx)
-    {
-      dataOut(localIndex[idx].first) += *(dataInput + idx) * localIndex[idx].second;
-    }
-  }
-}
-CATCH
-
-
-/*!
-  Compute index mapping between element source and element destination with an auxiliary inputs which determine
-position of each mapped index in global index of grid destination.
-  \param [in] dataAuxInputs auxiliary inputs
-*/
-void CGenericAlgorithmTransformation::computeIndexSourceMapping(const std::vector<CArray<double,1>* >& dataAuxInputs)
-TRY
-{
-  computeIndexSourceMapping_(dataAuxInputs);
-}
-CATCH
-
-std::vector<StdString> CGenericAlgorithmTransformation::getIdAuxInputs()
-TRY
-{
-  return idAuxInputs_;
-}
-CATCH
-
-CGenericAlgorithmTransformation::AlgoTransType CGenericAlgorithmTransformation::type()
-TRY
-{
-  return type_;
-}
-CATCH
-
-}
Index: XIOS/dev/dev_ym/XIOS_COUPLING/src/transformation/generic_algorithm_transformation_new.hpp.xxx
===================================================================
--- XIOS/dev/dev_ym/XIOS_COUPLING/src/transformation/generic_algorithm_transformation_new.hpp.xxx	(revision 2001)
+++ 	(revision )
@@ -1,113 +1,0 @@
-/*!
-   \file generic_algorithm_transformation.hpp
-   \author Ha NGUYEN
-   \since 14 May 2015
-   \date 29 June 2015
-
-   \brief Interface for all transformation algorithms.
- */
-#ifndef __XIOS_GENERIC_ALGORITHM_TRANSFORMATION_NEW_HPP__
-#define __XIOS_GENERIC_ALGORITHM_TRANSFORMATION_NEW_HPP__
-
-#include <map>
-#include <set>
-#include "array_new.hpp"
-#include "client_client_dht_template.hpp"
-
-namespace xios {
-  class CGrid;
-  class CDomain;
-  class CAxis;
-  class CScalar;
-
-  /*!
-  \class CGenericAlgorithmTransformation
-  This class defines the interface for all other inherited algorithms class
-  */
-class CGenericAlgorithmTransformationNew
-{
-public:
-  enum AlgoTransType {
-    ELEMENT_GENERATION = 0,
-    ELEMENT_MODIFICATION_WITHOUT_DATA = 1,
-    ELEMENT_MODIFICATION_WITH_DATA = 2,
-    ELEMENT_NO_MODIFICATION_WITH_DATA = 3,
-    ELEMENT_NO_MODIFICATION_WITHOUT_DATA = 4
-  } ;
-
-protected:
-  typedef std::unordered_map<int, std::vector<int> > TransformationIndexMap;
-  typedef std::unordered_map<int, std::vector<double> > TransformationWeightMap;
-  typedef std::unordered_map<int, std::vector<int> > TransformationPositionMap;
-
-public:
-  CGenericAlgorithmTransformationNew();
-
-  virtual ~CGenericAlgorithmTransformationNew() {}
-
-    /*!
-    Apply a operation on local data.
-    \param [in] localIndex vector contains local index of local data output and the corresponding weight
-    \param [in] dataInput Pointer to the first element of data input array (in form of buffer)
-    \param [in/out] dataOut Array contains local data
-    \param [in/out] flagInitial vector of boolean to mark the local index already initialized. True means there is a need for initalization
-    \param [in] ignoreMissingValue don't count missing value in operation if this flag is true
-    \param [in] firstPass indicate if it is the first time the apply funtion is called for a same transformation, in order to make a clean initialization 
-  */
-  virtual void apply(const std::vector<std::pair<int,double> >& localIndex,
-                     const double* dataInput,
-                     CArray<double,1>& dataOut,
-                     std::vector<bool>& flagInitial,                     
-                     bool ignoreMissingValue, bool firstPass);
-
-  /*!
-   * Update whole dataOut (on necessary).
-   * (Example:  Impose a weight, whose value is only known after being applied an operation, on dataOut)
-   * \param [in/out] dataOut dataOut
-   */
-  virtual void updateData(CArray<double,1>& dataOut);
-
-  std::vector<StdString> getIdAuxInputs();
-  AlgoTransType type();
-  /*!
-  Compute global index mapping from one element of destination grid to the corresponding element of source grid
-  */
-  void computeIndexSourceMapping(const std::vector<CArray<double,1>* >& dataAuxInputs = std::vector<CArray<double,1>* >());
-  
-protected:
-  virtual void computeIndexSourceMapping_(const std::vector<CArray<double,1>* >&) = 0;
-
-  /*!
-  Compute proc which contains global index of an element
-    \param[in] globalElementIndex demanding global index of an element of source grid
-    \param[in] elementType type of source element, 2: domain, 1: axis and 0: scalar
-    \param[out] globalElementIndexOnProc Proc contains the demanding global index
-  */
-  virtual void computeExchangeGlobalIndex(const CArray<size_t,1>& globalElementIndex,
-                                          int elementType,
-                                          CClientClientDHTInt::Index2VectorInfoTypeMap& globalElementIndexOnProc) = 0;
-
-protected:
-  //! indicate if the transformation is performed on a distributed element
-  bool isDistributed_ ;
-  //! indicate if the method  isDistributedTransformation has been called before
-  bool isDistributedComputed_ ;
-  
-  //! Map between global index of destination element and source element
-  std::vector<TransformationIndexMap> transformationMapping_;
-  //! Weight corresponding of source to destination
-  std::vector<TransformationWeightMap> transformationWeight_;
-  //! Map of global index of destination element and corresponding global index of other elements in the same grid
-  //! By default, one index of an element corresponds to all index of remaining element in the grid. So it's empty
-  std::vector<TransformationPositionMap> transformationPosition_;
-
-  //! Id of auxillary inputs which helps doing transformation dynamically
-  std::vector<StdString> idAuxInputs_;
-  AlgoTransType type_;
-  
-  bool eliminateRedondantSrc_ ; // flag to indicate if the transformation must select only one global source point for all proc.
-                               // In this case it will choose preferentially the current process 
-};
-
-}
-#endif // __XIOS_GENERIC_ALGORITHM_TRANSFORMATION_HPP__
Index: XIOS/dev/dev_ym/XIOS_COUPLING/src/transformation/transformation_path.hpp
===================================================================
--- XIOS/dev/dev_ym/XIOS_COUPLING/src/transformation/transformation_path.hpp	(revision 2001)
+++ XIOS/dev/dev_ym/XIOS_COUPLING/src/transformation/transformation_path.hpp	(revision 2002)
@@ -15,5 +15,4 @@
     private:
       TPath path_ ;
-      std::list<TPath> fullPath_ ; 
       std::list<TPath> donePath_ ; 
       TPath remainPath_ ; 
