Index: XIOS/trunk/src/interface/c_attr/icdomain_attr.cpp
===================================================================
--- XIOS/trunk/src/interface/c_attr/icdomain_attr.cpp	(revision 345)
+++ XIOS/trunk/src/interface/c_attr/icdomain_attr.cpp	(revision 347)
@@ -10,4 +10,5 @@
 #include "group_template_impl.hpp"
 #include "icutil.hpp"
+#include "timer.hpp"
 
 extern "C"
@@ -17,6 +18,8 @@
   void cxios_set_domain_data_dim(domain_Ptr domain_hdl, int data_dim)
   {
+     CTimer::get("XIOS").resume();
     domain_hdl->data_dim.setValue(data_dim);
     domain_hdl->sendAttributToServer(domain_hdl->data_dim);
+     CTimer::get("XIOS").suspend();
   }
   
@@ -29,4 +32,5 @@
   void cxios_set_domain_data_i_index(domain_Ptr domain_hdl, int* data_i_index, int extent1)
   {
+     CTimer::get("XIOS").resume();
     ARRAY(int,1) array_tmp(new CArray<int,1>(boost::extents[extent1]));
     std::copy(data_i_index, &(data_i_index[array_tmp->num_elements()]), array_tmp->data());
@@ -39,4 +43,5 @@
     if (!array_copy(domain_hdl->data_i_index.getValue(), data_i_index, extent1))
      ERROR("void cxios_set_domain_data_i_index(domain_Ptr domain_hdl, int* data_i_index, int extent1)",<<"Output array size is not conform to array size attribute") ;
+     CTimer::get("XIOS").suspend();
   }
   
@@ -44,6 +49,8 @@
   void cxios_set_domain_data_ibegin(domain_Ptr domain_hdl, int data_ibegin)
   {
+     CTimer::get("XIOS").resume();
     domain_hdl->data_ibegin.setValue(data_ibegin);
     domain_hdl->sendAttributToServer(domain_hdl->data_ibegin);
+     CTimer::get("XIOS").suspend();
   }
   
@@ -56,4 +63,5 @@
   void cxios_set_domain_data_j_index(domain_Ptr domain_hdl, int* data_j_index, int extent1)
   {
+     CTimer::get("XIOS").resume();
     ARRAY(int,1) array_tmp(new CArray<int,1>(boost::extents[extent1]));
     std::copy(data_j_index, &(data_j_index[array_tmp->num_elements()]), array_tmp->data());
@@ -66,4 +74,5 @@
     if (!array_copy(domain_hdl->data_j_index.getValue(), data_j_index, extent1))
      ERROR("void cxios_set_domain_data_j_index(domain_Ptr domain_hdl, int* data_j_index, int extent1)",<<"Output array size is not conform to array size attribute") ;
+     CTimer::get("XIOS").suspend();
   }
   
@@ -71,6 +80,8 @@
   void cxios_set_domain_data_jbegin(domain_Ptr domain_hdl, int data_jbegin)
   {
+     CTimer::get("XIOS").resume();
     domain_hdl->data_jbegin.setValue(data_jbegin);
     domain_hdl->sendAttributToServer(domain_hdl->data_jbegin);
+     CTimer::get("XIOS").suspend();
   }
   
@@ -83,6 +94,8 @@
   void cxios_set_domain_data_n_index(domain_Ptr domain_hdl, int data_n_index)
   {
+     CTimer::get("XIOS").resume();
     domain_hdl->data_n_index.setValue(data_n_index);
     domain_hdl->sendAttributToServer(domain_hdl->data_n_index);
+     CTimer::get("XIOS").suspend();
   }
   
@@ -95,6 +108,8 @@
   void cxios_set_domain_data_ni(domain_Ptr domain_hdl, int data_ni)
   {
+     CTimer::get("XIOS").resume();
     domain_hdl->data_ni.setValue(data_ni);
     domain_hdl->sendAttributToServer(domain_hdl->data_ni);
+     CTimer::get("XIOS").suspend();
   }
   
@@ -107,6 +122,8 @@
   void cxios_set_domain_data_nj(domain_Ptr domain_hdl, int data_nj)
   {
+     CTimer::get("XIOS").resume();
     domain_hdl->data_nj.setValue(data_nj);
     domain_hdl->sendAttributToServer(domain_hdl->data_nj);
+     CTimer::get("XIOS").suspend();
   }
   
@@ -121,12 +138,16 @@
     std::string domain_group_ref_str;
     if(!cstr2string(domain_group_ref, domain_group_ref_size, domain_group_ref_str)) return;
+     CTimer::get("XIOS").resume();
     domain_hdl->domain_group_ref.setValue(domain_group_ref_str);
     domain_hdl->sendAttributToServer(domain_hdl->domain_group_ref);
+     CTimer::get("XIOS").suspend();
   }
   
   void cxios_get_domain_domain_group_ref(domain_Ptr domain_hdl, char * domain_group_ref, int domain_group_ref_size)
   {
+     CTimer::get("XIOS").resume();
     if(!string_copy(domain_hdl->domain_group_ref.getValue(),domain_group_ref , domain_group_ref_size))
       ERROR("void cxios_get_domain_domain_group_ref(domain_Ptr domain_hdl, char * domain_group_ref, int domain_group_ref_size)", <<"Input string is to short");
+     CTimer::get("XIOS").suspend();
   }
   
@@ -134,6 +155,8 @@
   void cxios_set_domain_ibegin(domain_Ptr domain_hdl, int ibegin)
   {
+     CTimer::get("XIOS").resume();
     domain_hdl->ibegin.setValue(ibegin);
     domain_hdl->sendAttributToServer(domain_hdl->ibegin);
+     CTimer::get("XIOS").suspend();
   }
   
@@ -146,6 +169,8 @@
   void cxios_set_domain_iend(domain_Ptr domain_hdl, int iend)
   {
+     CTimer::get("XIOS").resume();
     domain_hdl->iend.setValue(iend);
     domain_hdl->sendAttributToServer(domain_hdl->iend);
+     CTimer::get("XIOS").suspend();
   }
   
@@ -158,6 +183,8 @@
   void cxios_set_domain_jbegin(domain_Ptr domain_hdl, int jbegin)
   {
+     CTimer::get("XIOS").resume();
     domain_hdl->jbegin.setValue(jbegin);
     domain_hdl->sendAttributToServer(domain_hdl->jbegin);
+     CTimer::get("XIOS").suspend();
   }
   
@@ -170,6 +197,8 @@
   void cxios_set_domain_jend(domain_Ptr domain_hdl, int jend)
   {
+     CTimer::get("XIOS").resume();
     domain_hdl->jend.setValue(jend);
     domain_hdl->sendAttributToServer(domain_hdl->jend);
+     CTimer::get("XIOS").suspend();
   }
   
@@ -182,4 +211,5 @@
   void cxios_set_domain_latvalue(domain_Ptr domain_hdl, double* latvalue, int extent1)
   {
+     CTimer::get("XIOS").resume();
     ARRAY(double,1) array_tmp(new CArray<double,1>(boost::extents[extent1]));
     std::copy(latvalue, &(latvalue[array_tmp->num_elements()]), array_tmp->data());
@@ -192,4 +222,5 @@
     if (!array_copy(domain_hdl->latvalue.getValue(), latvalue, extent1))
      ERROR("void cxios_set_domain_latvalue(domain_Ptr domain_hdl, double* latvalue, int extent1)",<<"Output array size is not conform to array size attribute") ;
+     CTimer::get("XIOS").suspend();
   }
   
@@ -199,12 +230,16 @@
     std::string long_name_str;
     if(!cstr2string(long_name, long_name_size, long_name_str)) return;
+     CTimer::get("XIOS").resume();
     domain_hdl->long_name.setValue(long_name_str);
     domain_hdl->sendAttributToServer(domain_hdl->long_name);
+     CTimer::get("XIOS").suspend();
   }
   
   void cxios_get_domain_long_name(domain_Ptr domain_hdl, char * long_name, int long_name_size)
   {
+     CTimer::get("XIOS").resume();
     if(!string_copy(domain_hdl->long_name.getValue(),long_name , long_name_size))
       ERROR("void cxios_get_domain_long_name(domain_Ptr domain_hdl, char * long_name, int long_name_size)", <<"Input string is to short");
+     CTimer::get("XIOS").suspend();
   }
   
@@ -212,4 +247,5 @@
   void cxios_set_domain_lonvalue(domain_Ptr domain_hdl, double* lonvalue, int extent1)
   {
+     CTimer::get("XIOS").resume();
     ARRAY(double,1) array_tmp(new CArray<double,1>(boost::extents[extent1]));
     std::copy(lonvalue, &(lonvalue[array_tmp->num_elements()]), array_tmp->data());
@@ -222,4 +258,5 @@
     if (!array_copy(domain_hdl->lonvalue.getValue(), lonvalue, extent1))
      ERROR("void cxios_set_domain_lonvalue(domain_Ptr domain_hdl, double* lonvalue, int extent1)",<<"Output array size is not conform to array size attribute") ;
+     CTimer::get("XIOS").suspend();
   }
   
@@ -227,4 +264,5 @@
   void cxios_set_domain_mask(domain_Ptr domain_hdl, bool* mask, int extent1, int extent2)
   {
+     CTimer::get("XIOS").resume();
     ARRAY(bool,2) array_tmp(new CArray<bool,2>(boost::extents[extent1][extent2]));
     std::copy(mask, &(mask[array_tmp->num_elements()]), array_tmp->data());
@@ -237,4 +275,5 @@
     if (!array_copy(domain_hdl->mask.getValue(), mask, extent1, extent2))
      ERROR("void cxios_set_domain_mask(domain_Ptr domain_hdl, bool* mask, int extent1, int extent2)",<<"Output array size is not conform to array size attribute") ;
+     CTimer::get("XIOS").suspend();
   }
   
@@ -244,12 +283,16 @@
     std::string name_str;
     if(!cstr2string(name, name_size, name_str)) return;
+     CTimer::get("XIOS").resume();
     domain_hdl->name.setValue(name_str);
     domain_hdl->sendAttributToServer(domain_hdl->name);
+     CTimer::get("XIOS").suspend();
   }
   
   void cxios_get_domain_name(domain_Ptr domain_hdl, char * name, int name_size)
   {
+     CTimer::get("XIOS").resume();
     if(!string_copy(domain_hdl->name.getValue(),name , name_size))
       ERROR("void cxios_get_domain_name(domain_Ptr domain_hdl, char * name, int name_size)", <<"Input string is to short");
+     CTimer::get("XIOS").suspend();
   }
   
@@ -257,6 +300,8 @@
   void cxios_set_domain_ni(domain_Ptr domain_hdl, int ni)
   {
+     CTimer::get("XIOS").resume();
     domain_hdl->ni.setValue(ni);
     domain_hdl->sendAttributToServer(domain_hdl->ni);
+     CTimer::get("XIOS").suspend();
   }
   
@@ -269,6 +314,8 @@
   void cxios_set_domain_ni_glo(domain_Ptr domain_hdl, int ni_glo)
   {
+     CTimer::get("XIOS").resume();
     domain_hdl->ni_glo.setValue(ni_glo);
     domain_hdl->sendAttributToServer(domain_hdl->ni_glo);
+     CTimer::get("XIOS").suspend();
   }
   
@@ -281,6 +328,8 @@
   void cxios_set_domain_nj(domain_Ptr domain_hdl, int nj)
   {
+     CTimer::get("XIOS").resume();
     domain_hdl->nj.setValue(nj);
     domain_hdl->sendAttributToServer(domain_hdl->nj);
+     CTimer::get("XIOS").suspend();
   }
   
@@ -293,6 +342,8 @@
   void cxios_set_domain_nj_glo(domain_Ptr domain_hdl, int nj_glo)
   {
+     CTimer::get("XIOS").resume();
     domain_hdl->nj_glo.setValue(nj_glo);
     domain_hdl->sendAttributToServer(domain_hdl->nj_glo);
+     CTimer::get("XIOS").suspend();
   }
   
@@ -307,12 +358,16 @@
     std::string standard_name_str;
     if(!cstr2string(standard_name, standard_name_size, standard_name_str)) return;
+     CTimer::get("XIOS").resume();
     domain_hdl->standard_name.setValue(standard_name_str);
     domain_hdl->sendAttributToServer(domain_hdl->standard_name);
+     CTimer::get("XIOS").suspend();
   }
   
   void cxios_get_domain_standard_name(domain_Ptr domain_hdl, char * standard_name, int standard_name_size)
   {
+     CTimer::get("XIOS").resume();
     if(!string_copy(domain_hdl->standard_name.getValue(),standard_name , standard_name_size))
       ERROR("void cxios_get_domain_standard_name(domain_Ptr domain_hdl, char * standard_name, int standard_name_size)", <<"Input string is to short");
+     CTimer::get("XIOS").suspend();
   }
   
@@ -320,6 +375,8 @@
   void cxios_set_domain_zoom_ibegin(domain_Ptr domain_hdl, int zoom_ibegin)
   {
+     CTimer::get("XIOS").resume();
     domain_hdl->zoom_ibegin.setValue(zoom_ibegin);
     domain_hdl->sendAttributToServer(domain_hdl->zoom_ibegin);
+     CTimer::get("XIOS").suspend();
   }
   
@@ -332,6 +389,8 @@
   void cxios_set_domain_zoom_ibegin_loc(domain_Ptr domain_hdl, int zoom_ibegin_loc)
   {
+     CTimer::get("XIOS").resume();
     domain_hdl->zoom_ibegin_loc.setValue(zoom_ibegin_loc);
     domain_hdl->sendAttributToServer(domain_hdl->zoom_ibegin_loc);
+     CTimer::get("XIOS").suspend();
   }
   
@@ -344,6 +403,8 @@
   void cxios_set_domain_zoom_jbegin(domain_Ptr domain_hdl, int zoom_jbegin)
   {
+     CTimer::get("XIOS").resume();
     domain_hdl->zoom_jbegin.setValue(zoom_jbegin);
     domain_hdl->sendAttributToServer(domain_hdl->zoom_jbegin);
+     CTimer::get("XIOS").suspend();
   }
   
@@ -356,6 +417,8 @@
   void cxios_set_domain_zoom_jbegin_loc(domain_Ptr domain_hdl, int zoom_jbegin_loc)
   {
+     CTimer::get("XIOS").resume();
     domain_hdl->zoom_jbegin_loc.setValue(zoom_jbegin_loc);
     domain_hdl->sendAttributToServer(domain_hdl->zoom_jbegin_loc);
+     CTimer::get("XIOS").suspend();
   }
   
@@ -368,6 +431,8 @@
   void cxios_set_domain_zoom_ni(domain_Ptr domain_hdl, int zoom_ni)
   {
+     CTimer::get("XIOS").resume();
     domain_hdl->zoom_ni.setValue(zoom_ni);
     domain_hdl->sendAttributToServer(domain_hdl->zoom_ni);
+     CTimer::get("XIOS").suspend();
   }
   
@@ -380,6 +445,8 @@
   void cxios_set_domain_zoom_ni_loc(domain_Ptr domain_hdl, int zoom_ni_loc)
   {
+     CTimer::get("XIOS").resume();
     domain_hdl->zoom_ni_loc.setValue(zoom_ni_loc);
     domain_hdl->sendAttributToServer(domain_hdl->zoom_ni_loc);
+     CTimer::get("XIOS").suspend();
   }
   
@@ -392,6 +459,8 @@
   void cxios_set_domain_zoom_nj(domain_Ptr domain_hdl, int zoom_nj)
   {
+     CTimer::get("XIOS").resume();
     domain_hdl->zoom_nj.setValue(zoom_nj);
     domain_hdl->sendAttributToServer(domain_hdl->zoom_nj);
+     CTimer::get("XIOS").suspend();
   }
   
@@ -404,6 +473,8 @@
   void cxios_set_domain_zoom_nj_loc(domain_Ptr domain_hdl, int zoom_nj_loc)
   {
+     CTimer::get("XIOS").resume();
     domain_hdl->zoom_nj_loc.setValue(zoom_nj_loc);
     domain_hdl->sendAttributToServer(domain_hdl->zoom_nj_loc);
+     CTimer::get("XIOS").suspend();
   }
   
