Index: XIOS/dev/dev_ym/XIOS_COUPLING/src/config/coupler_in_attribute.conf
===================================================================
--- XIOS/dev/dev_ym/XIOS_COUPLING/src/config/coupler_in_attribute.conf	(revision 1782)
+++ XIOS/dev/dev_ym/XIOS_COUPLING/src/config/coupler_in_attribute.conf	(revision 1782)
@@ -0,0 +1,1 @@
+DECLARE_ATTRIBUTE(StdString, context)
Index: XIOS/dev/dev_ym/XIOS_COUPLING/src/config/coupler_out_attribute.conf
===================================================================
--- XIOS/dev/dev_ym/XIOS_COUPLING/src/config/coupler_out_attribute.conf	(revision 1782)
+++ XIOS/dev/dev_ym/XIOS_COUPLING/src/config/coupler_out_attribute.conf	(revision 1782)
@@ -0,0 +1,1 @@
+DECLARE_ATTRIBUTE(StdString, context)
Index: XIOS/dev/dev_ym/XIOS_COUPLING/src/config/node_type.conf
===================================================================
--- XIOS/dev/dev_ym/XIOS_COUPLING/src/config/node_type.conf	(revision 1780)
+++ XIOS/dev/dev_ym/XIOS_COUPLING/src/config/node_type.conf	(revision 1782)
@@ -14,4 +14,13 @@
    DECLARE_NODE(File  , file  )
 #endif //__XIOS_CFile__
+
+#ifdef __XIOS_CCouplerIn__
+   DECLARE_NODE(CouplerIn  , coupler_in  )
+#endif //__XIOS_CCouplerIn__
+
+#ifdef __XIOS_CCouplerOut__
+   DECLARE_NODE(CouplerOut  , coupler_out  )
+#endif //__XIOS_CCouplerOut__
+
 
 #ifdef __XIOS_CGrid__
Index: XIOS/dev/dev_ym/XIOS_COUPLING/src/group_factory_decl.cpp
===================================================================
--- XIOS/dev/dev_ym/XIOS_COUPLING/src/group_factory_decl.cpp	(revision 1780)
+++ XIOS/dev/dev_ym/XIOS_COUPLING/src/group_factory_decl.cpp	(revision 1782)
@@ -20,4 +20,6 @@
   macro(CFieldGroup)
   macro(CFileGroup)
+  macro(CCouplerInGroup)
+  macro(CCouplerOutGroup)
   macro(CGridGroup)
   macro(CAxisGroup)
Index: XIOS/dev/dev_ym/XIOS_COUPLING/src/group_template_decl.cpp
===================================================================
--- XIOS/dev/dev_ym/XIOS_COUPLING/src/group_template_decl.cpp	(revision 1780)
+++ XIOS/dev/dev_ym/XIOS_COUPLING/src/group_template_decl.cpp	(revision 1782)
@@ -10,4 +10,6 @@
   macro(Field)
   macro(File)
+  macro(CouplerIn)
+  macro(CouplerOut)
   macro(Domain)
   macro(Grid)
Index: XIOS/dev/dev_ym/XIOS_COUPLING/src/node/coupler_in.cpp
===================================================================
--- XIOS/dev/dev_ym/XIOS_COUPLING/src/node/coupler_in.cpp	(revision 1782)
+++ XIOS/dev/dev_ym/XIOS_COUPLING/src/node/coupler_in.cpp	(revision 1782)
@@ -0,0 +1,136 @@
+#include "coupler_in.hpp"
+#include "attribute_template.hpp"
+#include "object_template.hpp"
+#include "group_template.hpp"
+#include "object_factory.hpp"
+#include "context.hpp"
+#include "xios_spl.hpp"
+
+namespace xios
+{
+
+  CCouplerIn::CCouplerIn(void) : CObjectTemplate<CCouplerIn>(), CCouplerInAttributes(),
+                                 virtualFieldGroup(), enabledFields() 
+  {
+     setVirtualFieldGroup(CFieldGroup::create(getId() + "_virtual_field_group"));
+  }
+
+   CCouplerIn::CCouplerIn(const StdString & id) : CObjectTemplate<CCouplerIn>(id), CCouplerInAttributes(),
+                                                  virtualFieldGroup(), enabledFields()
+    {
+      setVirtualFieldGroup(CFieldGroup::create(getId() + "_virtual_field_group"));
+    }
+
+   CCouplerIn::~CCouplerIn(void)
+   { /* Ne rien faire de plus */ }
+
+   ///---------------------------------------------------------------
+  //! Get name of coupler_in
+   StdString CCouplerIn::GetName(void)   { return (StdString("coupler_in")); }
+   StdString CCouplerIn::GetDefName(void){ return (CCouplerIn::GetName()); }
+   ENodeType CCouplerIn::GetType(void)   { return (eCouplerIn); }
+
+   std::vector<CField*> CCouplerIn::getEnabledFields(void)
+   TRY
+   {
+      if (enabledFields.empty())
+      {
+        this->enabledFields = this->getAllFields();
+        std::vector<CField*> newEnabledFields;
+        bool enabled ;
+        for ( auto it = this->enabledFields.begin(); it != this->enabledFields.end(); it++ )
+        {
+           if ((*it)->enabled.isEmpty()) enabled=true ; 
+           else enabled=(*it)->enabled ;
+           if (enabled) newEnabledFields.push_back(*it);
+        }
+        enabledFields = newEnabledFields;
+      }
+      return (this->enabledFields);
+   }
+   CATCH_DUMP_ATTR
+
+   
+   /*!
+   \brief Parse xml file and write information into coupler_in object
+   \param [in] node xmld node corresponding in xml coupler_in
+   */
+   void CCouplerIn::parse(xml::CXMLNode & node)
+   TRY
+   {
+      SuperClass::parse(node);
+
+      if (node.goToChildElement())
+      {
+        do
+        {
+           if (node.getElementName()=="field" || node.getElementName()=="field_group") this->getVirtualFieldGroup()->parseChild(node);
+        } while (node.goToNextElement());
+        node.goToParentElement();
+      }
+   }
+   CATCH_DUMP_ATTR
+
+   /*!
+   \brief Get virtual field group
+      In each CCouplerIn, there always exists a field group which is the ancestor of all
+   fields in the CCouplerIn. This is considered be virtual because it is created automatically during
+   CCouplerIn initialization and it normally doesn't appear on xml file
+   \return Pointer to field group
+   */
+   CFieldGroup* CCouplerIn::getVirtualFieldGroup(void) const
+   TRY
+   {
+      return (this->virtualFieldGroup);
+   }
+   CATCH
+
+
+   /*!
+   \brief Get virtual variable group
+      In each CCouplerIn, there always exists a variable group which is the ancestor of all
+   variable in the CCouplerIn. This is considered be virtual because it is created automatically during
+   CCouplerIn initialization and it normally doesn't appear on xml file
+   \return Pointer to variable group
+   */
+
+   //! Get all fields of a file
+   std::vector<CField*> CCouplerIn::getAllFields(void) const
+   TRY
+   {
+      return (this->virtualFieldGroup->getAllChildren());
+   }
+   CATCH
+
+
+
+   //----------------------------------------------------------------
+   //! Change virtual field group to a new one
+   void CCouplerIn::setVirtualFieldGroup(CFieldGroup* newVirtualFieldGroup)
+   TRY
+   {
+      this->virtualFieldGroup = newVirtualFieldGroup;
+   }
+   CATCH_DUMP_ATTR
+   
+   ///--------------------------------------------------------------
+   /*!
+   */
+   StdString CCouplerIn::dumpClassAttributes(void)
+   {
+     StdString str;
+     CContext* context = CContext::getCurrent();
+     str.append("context=\"");
+     str.append(context->getId());
+     str.append("\"");
+     str.append(" enabled fields=\"");
+     int size = this->enabledFields.size();
+     for (int i = 0; i < size; ++i)
+     {
+       str.append(this->enabledFields[i]->getId());
+       str.append(" ");
+     }
+     str.append("\"");
+     return str;
+   }
+}
Index: XIOS/dev/dev_ym/XIOS_COUPLING/src/node/coupler_in.hpp
===================================================================
--- XIOS/dev/dev_ym/XIOS_COUPLING/src/node/coupler_in.hpp	(revision 1782)
+++ XIOS/dev/dev_ym/XIOS_COUPLING/src/node/coupler_in.hpp	(revision 1782)
@@ -0,0 +1,116 @@
+#ifndef __XIOS_CCouplerIn__
+#define __XIOS_CCouplerIn__
+
+/// XIOS headers ///
+#include "xios_spl.hpp"
+#include "field.hpp"
+#include "declare_group.hpp"
+#include "date.hpp"
+#include "attribute_enum.hpp"
+#include "attribute_enum_impl.hpp"
+#include "context_client.hpp"
+#include "mpi.hpp"
+
+namespace xios
+{
+
+   /// ////////////////////// DÃ©clarations ////////////////////// ///
+
+   class CCouplerInGroup;
+   class CCouplerInAttributes;
+   class CCouplerIn;
+
+   class CGarbageCollector;
+
+   ///--------------------------------------------------------------
+
+   // Declare/Define CCouplerInAttribute
+   BEGIN_DECLARE_ATTRIBUTE_MAP(CCouplerIn)
+#  include "coupler_in_attribute.conf"
+   END_DECLARE_ATTRIBUTE_MAP(CCouplerIn)
+
+   ///--------------------------------------------------------------
+
+   /*!
+   \class CCouplerIn
+   This class corresponds to file component of the xml.
+   The class contains all the nessceary information to write data into a netcdf file: The most important thing
+   is the field(s) which will be written into file. Besides, there are some options to write
+   data into file, e.g: writting into only one file or multiple file; splitting a running into several files.
+   Moreover, there are some other attributes of netcdf file which are also stored in this class
+   */
+   class CCouplerIn
+      : public CObjectTemplate<CCouplerIn>
+      , public CCouplerInAttributes
+   {
+         /// typedef ///
+         typedef CObjectTemplate<CCouplerIn>   SuperClass;
+         typedef CCouplerInAttributes SuperClassAttribute;
+
+      public :
+         enum EEventId
+         {
+           NO_EVENT
+         };
+
+         typedef CCouplerInAttributes RelAttributes;
+         typedef CCouplerInGroup      RelGroup;
+
+         /// Constructeurs ///
+         CCouplerIn(void);
+         explicit CCouplerIn(const StdString& id);
+         CCouplerIn(const CCouplerIn& couplerIn);       // Not implemented yet.
+         CCouplerIn(const CCouplerIn* const couplerIn); // Not implemented yet.
+
+         /// Destructeur ///
+         virtual ~CCouplerIn(void);
+
+      public:
+         /// Accesseurs ///
+         CFieldGroup* getVirtualFieldGroup(void) const;
+         std::vector<CField*> getAllFields(void) const;
+         std::vector<CField* > getEnabledFields(void);
+
+         StdString dumpClassAttributes(void);
+
+      public :
+         void setVirtualFieldGroup(CFieldGroup* newVFieldGroup);
+
+         // Add component into coupler
+         CField* addField(const string& id = "");
+         CFieldGroup* addFieldGroup(const string& id = "");
+
+      public:
+         /// Accesseurs statiques ///
+         static StdString GetName(void);
+         static StdString GetDefName(void);
+         static ENodeType GetType(void);
+      public:
+         /// Traitements ///
+         virtual void parse(xml::CXMLNode& node);
+//         virtual StdString toString(void) const;
+
+      public:
+
+      private :
+         CFieldGroup* virtualFieldGroup;
+
+//         std::shared_ptr<CDataOutput> data_out;
+//         std::shared_ptr<CDataInput> data_in;
+         std::vector<CField*> enabledFields;
+
+
+      public:
+
+   }; // class CCouplerIn
+
+   ///--------------------------------------------------------------
+
+   // Declare/Define CCouplerInGroup and CCouplerInDefinition
+   DECLARE_GROUP(CCouplerIn);
+
+   ///--------------------------------------------------------------
+
+} // namespace xios
+
+#endif // __XIOS_CCouplingIn__
Index: XIOS/dev/dev_ym/XIOS_COUPLING/src/node/coupler_out.cpp
===================================================================
--- XIOS/dev/dev_ym/XIOS_COUPLING/src/node/coupler_out.cpp	(revision 1782)
+++ XIOS/dev/dev_ym/XIOS_COUPLING/src/node/coupler_out.cpp	(revision 1782)
@@ -0,0 +1,135 @@
+#include "coupler_out.hpp"
+#include "attribute_template.hpp"
+#include "object_template.hpp"
+#include "group_template.hpp"
+#include "object_factory.hpp"
+#include "context.hpp"
+#include "xios_spl.hpp"
+
+namespace xios
+{
+
+  CCouplerOut::CCouplerOut(void) : CObjectTemplate<CCouplerOut>(), CCouplerOutAttributes(),
+                                 virtualFieldGroup(), enabledFields() 
+  {
+     setVirtualFieldGroup(CFieldGroup::create(getId() + "_virtual_field_group"));
+  }
+
+  CCouplerOut::CCouplerOut(const StdString & id) : CObjectTemplate<CCouplerOut>(id), CCouplerOutAttributes(),
+                                                    virtualFieldGroup(), enabledFields()
+  {
+    setVirtualFieldGroup(CFieldGroup::create(getId() + "_virtual_field_group"));
+  }
+
+  CCouplerOut::~CCouplerOut(void)
+  { /* Ne rien faire de plus */ }
+
+   ///---------------------------------------------------------------
+  //! Get name of file
+  StdString CCouplerOut::GetName(void)   { return (StdString("coupler_out")); }
+  StdString CCouplerOut::GetDefName(void){ return (CCouplerOut::GetName()); }
+  ENodeType CCouplerOut::GetType(void)   { return (eCouplerIn); }
+
+   /*!
+   \brief Parse xml file and write information into coupler_in object
+   \param [in] node xmld node corresponding in xml coupler_in
+   */
+   void CCouplerOut::parse(xml::CXMLNode & node)
+   TRY
+   {
+      SuperClass::parse(node);
+
+      if (node.goToChildElement())
+      {
+        do
+        {
+           if (node.getElementName()=="field" || node.getElementName()=="field_group") this->getVirtualFieldGroup()->parseChild(node);
+        } while (node.goToNextElement());
+        node.goToParentElement();
+      }
+   }
+   CATCH_DUMP_ATTR
+
+   std::vector<CField*> CCouplerOut::getEnabledFields(void)
+   TRY
+   {
+      if (enabledFields.empty())
+      {
+        this->enabledFields = this->getAllFields();
+        std::vector<CField*> newEnabledFields;
+        bool enabled ;
+        for ( auto it = this->enabledFields.begin(); it != this->enabledFields.end(); it++ )
+        {
+           if ((*it)->enabled.isEmpty()) enabled=true ; 
+           else enabled=(*it)->enabled ;
+           if (enabled) newEnabledFields.push_back(*it);
+        }
+        enabledFields = newEnabledFields;
+      }
+      return (this->enabledFields);
+   }
+   CATCH_DUMP_ATTR
+
+      /*!
+   \brief Get virtual field group
+      In each CCouplerIn, there always exists a field group which is the ancestor of all
+   fields in the CCouplerIn. This is considered be virtual because it is created automatically during
+   CCouplerIn initialization and it normally doesn't appear on xml file
+   \return Pointer to field group
+   */
+   CFieldGroup* CCouplerOut::getVirtualFieldGroup(void) const
+   TRY
+   {
+      return (this->virtualFieldGroup);
+   }
+   CATCH
+
+
+   /*!
+   \brief Get virtual variable group
+      In each CCouplerIn, there always exists a variable group which is the ancestor of all
+   variable in the CCouplerIn. This is considered be virtual because it is created automatically during
+   CCouplerIn initialization and it normally doesn't appear on xml file
+   \return Pointer to variable group
+   */
+
+   //! Get all fields of a file
+   std::vector<CField*> CCouplerOut::getAllFields(void) const
+   TRY
+   {
+      return (this->virtualFieldGroup->getAllChildren());
+   }
+   CATCH
+
+
+
+   //----------------------------------------------------------------
+   //! Change virtual field group to a new one
+   void CCouplerOut::setVirtualFieldGroup(CFieldGroup* newVirtualFieldGroup)
+   TRY
+   {
+      this->virtualFieldGroup = newVirtualFieldGroup;
+   }
+   CATCH_DUMP_ATTR
+
+   ///--------------------------------------------------------------
+   /*!
+   */
+   StdString CCouplerOut::dumpClassAttributes(void)
+   {
+     StdString str;
+     CContext* context = CContext::getCurrent();
+     str.append("context=\"");
+     str.append(context->getId());
+     str.append("\"");
+     str.append(" enabled fields=\"");
+     int size = this->enabledFields.size();
+     for (int i = 0; i < size; ++i)
+     {
+       str.append(this->enabledFields[i]->getId());
+       str.append(" ");
+     }
+     str.append("\"");
+     return str;
+   }
+}
Index: XIOS/dev/dev_ym/XIOS_COUPLING/src/node/coupler_out.hpp
===================================================================
--- XIOS/dev/dev_ym/XIOS_COUPLING/src/node/coupler_out.hpp	(revision 1782)
+++ XIOS/dev/dev_ym/XIOS_COUPLING/src/node/coupler_out.hpp	(revision 1782)
@@ -0,0 +1,112 @@
+#ifndef __XIOS_CCouplerOut__
+#define __XIOS_CCouplerOut__
+
+/// XIOS headers ///
+#include "xios_spl.hpp"
+#include "field.hpp"
+#include "declare_group.hpp"
+#include "date.hpp"
+#include "attribute_enum.hpp"
+#include "attribute_enum_impl.hpp"
+#include "context_client.hpp"
+#include "mpi.hpp"
+
+namespace xios
+{
+
+   /// ////////////////////// DÃ©clarations ////////////////////// ///
+
+   class CCouplerOutGroup;
+   class CCouplerOutAttributes;
+   class CCouplerOut;
+
+   class CGarbageCollector;
+
+   ///--------------------------------------------------------------
+
+   // Declare/Define CCouplerOutAttribute
+   BEGIN_DECLARE_ATTRIBUTE_MAP(CCouplerOut)
+#  include "coupler_out_attribute.conf"
+   END_DECLARE_ATTRIBUTE_MAP(CCouplerOut)
+
+   ///--------------------------------------------------------------
+
+   /*!
+   \class CCouplerOut
+   
+   */
+   class CCouplerOut
+      : public CObjectTemplate<CCouplerOut>
+      , public CCouplerOutAttributes
+   {
+         /// typedef ///
+         typedef CObjectTemplate<CCouplerOut>   SuperClass;
+         typedef CCouplerOutAttributes SuperClassAttribute;
+
+      public :
+         enum EEventId
+         {
+           NO_EVENT
+         };
+
+         typedef CCouplerOutAttributes RelAttributes;
+         typedef CCouplerOutGroup      RelGroup;
+
+         /// Constructeurs ///
+         CCouplerOut(void);
+         explicit CCouplerOut(const StdString& id);
+         CCouplerOut(const CCouplerOut& couplerOut);       // Not implemented yet.
+         CCouplerOut(const CCouplerOut* const couplerOut); // Not implemented yet.
+
+         /// Destructeur ///
+         virtual ~CCouplerOut(void);
+
+      public:
+         /// Accesseurs ///
+         CFieldGroup* getVirtualFieldGroup(void) const;
+         std::vector<CField*> getAllFields(void) const;
+         std::vector<CField* > getEnabledFields(void);
+
+         StdString dumpClassAttributes(void);
+
+      public :
+         void setVirtualFieldGroup(CFieldGroup* newVFieldGroup);
+
+         // Add component into coupler
+         CField* addField(const string& id = "");
+         CFieldGroup* addFieldGroup(const string& id = "");
+
+      public:
+         /// Accesseurs statiques ///
+         static StdString GetName(void);
+         static StdString GetDefName(void);
+         static ENodeType GetType(void);
+      public:
+         /// Traitements ///
+         virtual void parse(xml::CXMLNode& node);
+//         virtual StdString toString(void) const;
+
+      public:
+
+      private :
+         CFieldGroup* virtualFieldGroup;
+
+//         std::shared_ptr<CDataOutput> data_out;
+//         std::shared_ptr<CDataInput> data_in;
+         std::vector<CField*> enabledFields;
+
+
+      public:
+
+   }; // class CCouplerOut
+
+   ///--------------------------------------------------------------
+
+   // Declare/Define CFileGroup and CFileDefinition
+   DECLARE_GROUP(CCouplerOut);
+
+   ///--------------------------------------------------------------
+
+} // namespace xios
+
+#endif // __XIOS_CCouplingIn__
Index: XIOS/dev/dev_ym/XIOS_COUPLING/src/node/node_enum.hpp
===================================================================
--- XIOS/dev/dev_ym/XIOS_COUPLING/src/node/node_enum.hpp	(revision 1780)
+++ XIOS/dev/dev_ym/XIOS_COUPLING/src/node/node_enum.hpp	(revision 1782)
@@ -15,4 +15,6 @@
          eField,gField,
          eFile,gFile,
+         eCouplerIn,gCouplerIn,
+         eCouplerOut,gCouplerOut,
          eGrid,gGrid,
          eVariable,gVariable,
Index: XIOS/dev/dev_ym/XIOS_COUPLING/src/node/node_type.hpp
===================================================================
--- XIOS/dev/dev_ym/XIOS_COUPLING/src/node/node_type.hpp	(revision 1780)
+++ XIOS/dev/dev_ym/XIOS_COUPLING/src/node/node_type.hpp	(revision 1782)
@@ -6,4 +6,6 @@
 #include "field.hpp"
 #include "file.hpp"
+#include "coupler_in.hpp"
+#include "coupler_out.hpp"
 #include "grid.hpp"
 #include "variable.hpp"
Index: XIOS/dev/dev_ym/XIOS_COUPLING/src/object_factory_decl1.cpp
===================================================================
--- XIOS/dev/dev_ym/XIOS_COUPLING/src/object_factory_decl1.cpp	(revision 1780)
+++ XIOS/dev/dev_ym/XIOS_COUPLING/src/object_factory_decl1.cpp	(revision 1782)
@@ -5,4 +5,6 @@
   macro(CField)
   macro(CFile)
+  macro(CCouplerIn)
+  macro(CCouplerOut)
   macro(CGrid)
   macro(CAxis)
Index: XIOS/dev/dev_ym/XIOS_COUPLING/src/object_factory_decl3.cpp
===================================================================
--- XIOS/dev/dev_ym/XIOS_COUPLING/src/object_factory_decl3.cpp	(revision 1780)
+++ XIOS/dev/dev_ym/XIOS_COUPLING/src/object_factory_decl3.cpp	(revision 1782)
@@ -6,4 +6,6 @@
   macro(CFieldGroup)
   macro(CFileGroup)
+  macro(CCouplerInGroup)
+  macro(CCouplerOutGroup)
   macro(CGridGroup)
   macro(CAxisGroup)
Index: XIOS/dev/dev_ym/XIOS_COUPLING/src/object_template_decl.cpp
===================================================================
--- XIOS/dev/dev_ym/XIOS_COUPLING/src/object_template_decl.cpp	(revision 1780)
+++ XIOS/dev/dev_ym/XIOS_COUPLING/src/object_template_decl.cpp	(revision 1782)
@@ -9,4 +9,6 @@
   template class CObjectTemplate<CField>;
   template class CObjectTemplate<CFile>;
+  template class CObjectTemplate<CCouplerIn>;
+  template class CObjectTemplate<CCouplerOut>;
   template class CObjectTemplate<CDomain>;
   template class CObjectTemplate<CGrid>;
@@ -38,4 +40,6 @@
   template class CObjectTemplate<CFieldGroup>;
   template class CObjectTemplate<CFileGroup>;
+  template class CObjectTemplate<CCouplerInGroup>;
+  template class CObjectTemplate<CCouplerOutGroup>;
   template class CObjectTemplate<CDomainGroup>;
   template class CObjectTemplate<CGridGroup>;
Index: XIOS/dev/dev_ym/XIOS_COUPLING/src/type/type_util.hpp
===================================================================
--- XIOS/dev/dev_ym/XIOS_COUPLING/src/type/type_util.hpp	(revision 1780)
+++ XIOS/dev/dev_ym/XIOS_COUPLING/src/type/type_util.hpp	(revision 1782)
@@ -15,4 +15,8 @@
     class CFile;
     class CFileGroup;
+    class CCouplerIn;
+    class CCouplerInGroup;
+    class CCouplerOut;
+    class CCouplerOutGroup;
     class CContext;
     class CContextGroup;
@@ -93,4 +97,8 @@
   macro(CFile)
   macro(CFileGroup)
+  macro(CCouplerIn)
+  macro(CCouplerInGroup)
+  macro(CCouplerOut)
+  macro(CCouplerOutGroup)
   macro(CContext)
   macro(CContextGroup)
Index: XIOS/dev/dev_ym/XIOS_COUPLING/src/xml_parser_decl.cpp
===================================================================
--- XIOS/dev/dev_ym/XIOS_COUPLING/src/xml_parser_decl.cpp	(revision 1780)
+++ XIOS/dev/dev_ym/XIOS_COUPLING/src/xml_parser_decl.cpp	(revision 1782)
@@ -18,4 +18,6 @@
     macro( Field )
     macro( File )
+    macro( CouplerIn )
+    macro( CouplerOut )
     macro( Variable )
     macro( InverseAxis )
