Changeset 2618


Ignore:
Timestamp:
03/19/24 16:12:21 (8 weeks ago)
Author:
jderouillat
Message:

Regenerate XIOS2 interfaces, and fix the field' s attribute name conversion_by_NetCDF removing upper-case letters

Location:
XIOS2/trunk/src
Files:
23 edited

Legend:

Unmodified
Added
Removed
  • XIOS2/trunk/src/config/field_attribute.conf

    r2599 r2618  
    1313DECLARE_ATTRIBUTE(int,       level) 
    1414DECLARE_ATTRIBUTE(int,       prec) 
    15 DECLARE_ATTRIBUTE(bool,      conversion_by_NetCDF) 
     15DECLARE_ATTRIBUTE(bool,      conversion_by_netcdf) 
    1616DECLARE_ATTRIBUTE(StdString, expr) 
    1717 
  • XIOS2/trunk/src/interface/c_attr/icaxis_attr.cpp

    r1626 r2618  
    169169 
    170170 
     171  void cxios_set_axis_convert_from_factor(axis_Ptr axis_hdl, double convert_from_factor) 
     172  { 
     173    CTimer::get("XIOS").resume(); 
     174    axis_hdl->convert_from_factor.setValue(convert_from_factor); 
     175    CTimer::get("XIOS").suspend(); 
     176  } 
     177 
     178  void cxios_get_axis_convert_from_factor(axis_Ptr axis_hdl, double* convert_from_factor) 
     179  { 
     180    CTimer::get("XIOS").resume(); 
     181    *convert_from_factor = axis_hdl->convert_from_factor.getInheritedValue(); 
     182    CTimer::get("XIOS").suspend(); 
     183  } 
     184 
     185  bool cxios_is_defined_axis_convert_from_factor(axis_Ptr axis_hdl) 
     186  { 
     187     CTimer::get("XIOS").resume(); 
     188     bool isDefined = axis_hdl->convert_from_factor.hasInheritedValue(); 
     189     CTimer::get("XIOS").suspend(); 
     190     return isDefined; 
     191  } 
     192 
     193 
    171194  void cxios_set_axis_data_begin(axis_Ptr axis_hdl, int data_begin) 
    172195  { 
  • XIOS2/trunk/src/interface/c_attr/icaxisgroup_attr.cpp

    r1626 r2618  
    169169 
    170170 
     171  void cxios_set_axisgroup_convert_from_factor(axisgroup_Ptr axisgroup_hdl, double convert_from_factor) 
     172  { 
     173    CTimer::get("XIOS").resume(); 
     174    axisgroup_hdl->convert_from_factor.setValue(convert_from_factor); 
     175    CTimer::get("XIOS").suspend(); 
     176  } 
     177 
     178  void cxios_get_axisgroup_convert_from_factor(axisgroup_Ptr axisgroup_hdl, double* convert_from_factor) 
     179  { 
     180    CTimer::get("XIOS").resume(); 
     181    *convert_from_factor = axisgroup_hdl->convert_from_factor.getInheritedValue(); 
     182    CTimer::get("XIOS").suspend(); 
     183  } 
     184 
     185  bool cxios_is_defined_axisgroup_convert_from_factor(axisgroup_Ptr axisgroup_hdl) 
     186  { 
     187     CTimer::get("XIOS").resume(); 
     188     bool isDefined = axisgroup_hdl->convert_from_factor.hasInheritedValue(); 
     189     CTimer::get("XIOS").suspend(); 
     190     return isDefined; 
     191  } 
     192 
     193 
    171194  void cxios_set_axisgroup_data_begin(axisgroup_Ptr axisgroup_hdl, int data_begin) 
    172195  { 
  • XIOS2/trunk/src/interface/c_attr/icdomain_attr.cpp

    r2131 r2618  
    12231223 
    12241224 
     1225  void cxios_set_domain_tile_only(domain_Ptr domain_hdl, bool tile_only) 
     1226  { 
     1227    CTimer::get("XIOS").resume(); 
     1228    domain_hdl->tile_only.setValue(tile_only); 
     1229    CTimer::get("XIOS").suspend(); 
     1230  } 
     1231 
     1232  void cxios_get_domain_tile_only(domain_Ptr domain_hdl, bool* tile_only) 
     1233  { 
     1234    CTimer::get("XIOS").resume(); 
     1235    *tile_only = domain_hdl->tile_only.getInheritedValue(); 
     1236    CTimer::get("XIOS").suspend(); 
     1237  } 
     1238 
     1239  bool cxios_is_defined_domain_tile_only(domain_Ptr domain_hdl) 
     1240  { 
     1241     CTimer::get("XIOS").resume(); 
     1242     bool isDefined = domain_hdl->tile_only.hasInheritedValue(); 
     1243     CTimer::get("XIOS").suspend(); 
     1244     return isDefined; 
     1245  } 
     1246 
     1247 
    12251248  void cxios_set_domain_type(domain_Ptr domain_hdl, const char * type, int type_size) 
    12261249  { 
  • XIOS2/trunk/src/interface/c_attr/icdomaingroup_attr.cpp

    r2131 r2618  
    12491249 
    12501250 
     1251  void cxios_set_domaingroup_tile_only(domaingroup_Ptr domaingroup_hdl, bool tile_only) 
     1252  { 
     1253    CTimer::get("XIOS").resume(); 
     1254    domaingroup_hdl->tile_only.setValue(tile_only); 
     1255    CTimer::get("XIOS").suspend(); 
     1256  } 
     1257 
     1258  void cxios_get_domaingroup_tile_only(domaingroup_Ptr domaingroup_hdl, bool* tile_only) 
     1259  { 
     1260    CTimer::get("XIOS").resume(); 
     1261    *tile_only = domaingroup_hdl->tile_only.getInheritedValue(); 
     1262    CTimer::get("XIOS").suspend(); 
     1263  } 
     1264 
     1265  bool cxios_is_defined_domaingroup_tile_only(domaingroup_Ptr domaingroup_hdl) 
     1266  { 
     1267     CTimer::get("XIOS").resume(); 
     1268     bool isDefined = domaingroup_hdl->tile_only.hasInheritedValue(); 
     1269     CTimer::get("XIOS").suspend(); 
     1270     return isDefined; 
     1271  } 
     1272 
     1273 
    12511274  void cxios_set_domaingroup_type(domaingroup_Ptr domaingroup_hdl, const char * type, int type_size) 
    12521275  { 
  • XIOS2/trunk/src/interface/c_attr/icfield_attr.cpp

    r1626 r2618  
    6666 
    6767 
     68  void cxios_set_field_build_workflow_graph(field_Ptr field_hdl, bool build_workflow_graph) 
     69  { 
     70    CTimer::get("XIOS").resume(); 
     71    field_hdl->build_workflow_graph.setValue(build_workflow_graph); 
     72    CTimer::get("XIOS").suspend(); 
     73  } 
     74 
     75  void cxios_get_field_build_workflow_graph(field_Ptr field_hdl, bool* build_workflow_graph) 
     76  { 
     77    CTimer::get("XIOS").resume(); 
     78    *build_workflow_graph = field_hdl->build_workflow_graph.getInheritedValue(); 
     79    CTimer::get("XIOS").suspend(); 
     80  } 
     81 
     82  bool cxios_is_defined_field_build_workflow_graph(field_Ptr field_hdl) 
     83  { 
     84     CTimer::get("XIOS").resume(); 
     85     bool isDefined = field_hdl->build_workflow_graph.hasInheritedValue(); 
     86     CTimer::get("XIOS").suspend(); 
     87     return isDefined; 
     88  } 
     89 
     90 
     91  void cxios_set_field_build_workflow_graph_end(field_Ptr field_hdl, cxios_duration build_workflow_graph_end_c) 
     92  { 
     93    CTimer::get("XIOS").resume(); 
     94    field_hdl->build_workflow_graph_end.allocate(); 
     95    CDuration& build_workflow_graph_end = field_hdl->build_workflow_graph_end.get(); 
     96    build_workflow_graph_end.year = build_workflow_graph_end_c.year; 
     97    build_workflow_graph_end.month = build_workflow_graph_end_c.month; 
     98    build_workflow_graph_end.day = build_workflow_graph_end_c.day; 
     99    build_workflow_graph_end.hour = build_workflow_graph_end_c.hour; 
     100    build_workflow_graph_end.minute = build_workflow_graph_end_c.minute; 
     101    build_workflow_graph_end.second = build_workflow_graph_end_c.second; 
     102    build_workflow_graph_end.timestep = build_workflow_graph_end_c.timestep; 
     103    CTimer::get("XIOS").suspend(); 
     104  } 
     105 
     106  void cxios_get_field_build_workflow_graph_end(field_Ptr field_hdl, cxios_duration* build_workflow_graph_end_c) 
     107  { 
     108    CTimer::get("XIOS").resume(); 
     109    CDuration build_workflow_graph_end = field_hdl->build_workflow_graph_end.getInheritedValue(); 
     110    build_workflow_graph_end_c->year = build_workflow_graph_end.year; 
     111    build_workflow_graph_end_c->month = build_workflow_graph_end.month; 
     112    build_workflow_graph_end_c->day = build_workflow_graph_end.day; 
     113    build_workflow_graph_end_c->hour = build_workflow_graph_end.hour; 
     114    build_workflow_graph_end_c->minute = build_workflow_graph_end.minute; 
     115    build_workflow_graph_end_c->second = build_workflow_graph_end.second; 
     116    build_workflow_graph_end_c->timestep = build_workflow_graph_end.timestep; 
     117    CTimer::get("XIOS").suspend(); 
     118  } 
     119 
     120  bool cxios_is_defined_field_build_workflow_graph_end(field_Ptr field_hdl) 
     121  { 
     122     CTimer::get("XIOS").resume(); 
     123     bool isDefined = field_hdl->build_workflow_graph_end.hasInheritedValue(); 
     124     CTimer::get("XIOS").suspend(); 
     125     return isDefined; 
     126  } 
     127 
     128 
     129  void cxios_set_field_build_workflow_graph_start(field_Ptr field_hdl, cxios_duration build_workflow_graph_start_c) 
     130  { 
     131    CTimer::get("XIOS").resume(); 
     132    field_hdl->build_workflow_graph_start.allocate(); 
     133    CDuration& build_workflow_graph_start = field_hdl->build_workflow_graph_start.get(); 
     134    build_workflow_graph_start.year = build_workflow_graph_start_c.year; 
     135    build_workflow_graph_start.month = build_workflow_graph_start_c.month; 
     136    build_workflow_graph_start.day = build_workflow_graph_start_c.day; 
     137    build_workflow_graph_start.hour = build_workflow_graph_start_c.hour; 
     138    build_workflow_graph_start.minute = build_workflow_graph_start_c.minute; 
     139    build_workflow_graph_start.second = build_workflow_graph_start_c.second; 
     140    build_workflow_graph_start.timestep = build_workflow_graph_start_c.timestep; 
     141    CTimer::get("XIOS").suspend(); 
     142  } 
     143 
     144  void cxios_get_field_build_workflow_graph_start(field_Ptr field_hdl, cxios_duration* build_workflow_graph_start_c) 
     145  { 
     146    CTimer::get("XIOS").resume(); 
     147    CDuration build_workflow_graph_start = field_hdl->build_workflow_graph_start.getInheritedValue(); 
     148    build_workflow_graph_start_c->year = build_workflow_graph_start.year; 
     149    build_workflow_graph_start_c->month = build_workflow_graph_start.month; 
     150    build_workflow_graph_start_c->day = build_workflow_graph_start.day; 
     151    build_workflow_graph_start_c->hour = build_workflow_graph_start.hour; 
     152    build_workflow_graph_start_c->minute = build_workflow_graph_start.minute; 
     153    build_workflow_graph_start_c->second = build_workflow_graph_start.second; 
     154    build_workflow_graph_start_c->timestep = build_workflow_graph_start.timestep; 
     155    CTimer::get("XIOS").suspend(); 
     156  } 
     157 
     158  bool cxios_is_defined_field_build_workflow_graph_start(field_Ptr field_hdl) 
     159  { 
     160     CTimer::get("XIOS").resume(); 
     161     bool isDefined = field_hdl->build_workflow_graph_start.hasInheritedValue(); 
     162     CTimer::get("XIOS").suspend(); 
     163     return isDefined; 
     164  } 
     165 
     166 
    68167  void cxios_set_field_cell_methods(field_Ptr field_hdl, const char * cell_methods, int cell_methods_size) 
    69168  { 
     
    185284     CTimer::get("XIOS").resume(); 
    186285     bool isDefined = field_hdl->compression_level.hasInheritedValue(); 
     286     CTimer::get("XIOS").suspend(); 
     287     return isDefined; 
     288  } 
     289 
     290 
     291  void cxios_set_field_conversion_by_netcdf(field_Ptr field_hdl, bool conversion_by_netcdf) 
     292  { 
     293    CTimer::get("XIOS").resume(); 
     294    field_hdl->conversion_by_netcdf.setValue(conversion_by_netcdf); 
     295    CTimer::get("XIOS").suspend(); 
     296  } 
     297 
     298  void cxios_get_field_conversion_by_netcdf(field_Ptr field_hdl, bool* conversion_by_netcdf) 
     299  { 
     300    CTimer::get("XIOS").resume(); 
     301    *conversion_by_netcdf = field_hdl->conversion_by_netcdf.getInheritedValue(); 
     302    CTimer::get("XIOS").suspend(); 
     303  } 
     304 
     305  bool cxios_is_defined_field_conversion_by_netcdf(field_Ptr field_hdl) 
     306  { 
     307     CTimer::get("XIOS").resume(); 
     308     bool isDefined = field_hdl->conversion_by_netcdf.hasInheritedValue(); 
    187309     CTimer::get("XIOS").suspend(); 
    188310     return isDefined; 
  • XIOS2/trunk/src/interface/c_attr/icfieldgroup_attr.cpp

    r1626 r2618  
    6666 
    6767 
     68  void cxios_set_fieldgroup_build_workflow_graph(fieldgroup_Ptr fieldgroup_hdl, bool build_workflow_graph) 
     69  { 
     70    CTimer::get("XIOS").resume(); 
     71    fieldgroup_hdl->build_workflow_graph.setValue(build_workflow_graph); 
     72    CTimer::get("XIOS").suspend(); 
     73  } 
     74 
     75  void cxios_get_fieldgroup_build_workflow_graph(fieldgroup_Ptr fieldgroup_hdl, bool* build_workflow_graph) 
     76  { 
     77    CTimer::get("XIOS").resume(); 
     78    *build_workflow_graph = fieldgroup_hdl->build_workflow_graph.getInheritedValue(); 
     79    CTimer::get("XIOS").suspend(); 
     80  } 
     81 
     82  bool cxios_is_defined_fieldgroup_build_workflow_graph(fieldgroup_Ptr fieldgroup_hdl) 
     83  { 
     84     CTimer::get("XIOS").resume(); 
     85     bool isDefined = fieldgroup_hdl->build_workflow_graph.hasInheritedValue(); 
     86     CTimer::get("XIOS").suspend(); 
     87     return isDefined; 
     88  } 
     89 
     90 
     91  void cxios_set_fieldgroup_build_workflow_graph_end(fieldgroup_Ptr fieldgroup_hdl, cxios_duration build_workflow_graph_end_c) 
     92  { 
     93    CTimer::get("XIOS").resume(); 
     94    fieldgroup_hdl->build_workflow_graph_end.allocate(); 
     95    CDuration& build_workflow_graph_end = fieldgroup_hdl->build_workflow_graph_end.get(); 
     96    build_workflow_graph_end.year = build_workflow_graph_end_c.year; 
     97    build_workflow_graph_end.month = build_workflow_graph_end_c.month; 
     98    build_workflow_graph_end.day = build_workflow_graph_end_c.day; 
     99    build_workflow_graph_end.hour = build_workflow_graph_end_c.hour; 
     100    build_workflow_graph_end.minute = build_workflow_graph_end_c.minute; 
     101    build_workflow_graph_end.second = build_workflow_graph_end_c.second; 
     102    build_workflow_graph_end.timestep = build_workflow_graph_end_c.timestep; 
     103    CTimer::get("XIOS").suspend(); 
     104  } 
     105 
     106  void cxios_get_fieldgroup_build_workflow_graph_end(fieldgroup_Ptr fieldgroup_hdl, cxios_duration* build_workflow_graph_end_c) 
     107  { 
     108    CTimer::get("XIOS").resume(); 
     109    CDuration build_workflow_graph_end = fieldgroup_hdl->build_workflow_graph_end.getInheritedValue(); 
     110    build_workflow_graph_end_c->year = build_workflow_graph_end.year; 
     111    build_workflow_graph_end_c->month = build_workflow_graph_end.month; 
     112    build_workflow_graph_end_c->day = build_workflow_graph_end.day; 
     113    build_workflow_graph_end_c->hour = build_workflow_graph_end.hour; 
     114    build_workflow_graph_end_c->minute = build_workflow_graph_end.minute; 
     115    build_workflow_graph_end_c->second = build_workflow_graph_end.second; 
     116    build_workflow_graph_end_c->timestep = build_workflow_graph_end.timestep; 
     117    CTimer::get("XIOS").suspend(); 
     118  } 
     119 
     120  bool cxios_is_defined_fieldgroup_build_workflow_graph_end(fieldgroup_Ptr fieldgroup_hdl) 
     121  { 
     122     CTimer::get("XIOS").resume(); 
     123     bool isDefined = fieldgroup_hdl->build_workflow_graph_end.hasInheritedValue(); 
     124     CTimer::get("XIOS").suspend(); 
     125     return isDefined; 
     126  } 
     127 
     128 
     129  void cxios_set_fieldgroup_build_workflow_graph_start(fieldgroup_Ptr fieldgroup_hdl, cxios_duration build_workflow_graph_start_c) 
     130  { 
     131    CTimer::get("XIOS").resume(); 
     132    fieldgroup_hdl->build_workflow_graph_start.allocate(); 
     133    CDuration& build_workflow_graph_start = fieldgroup_hdl->build_workflow_graph_start.get(); 
     134    build_workflow_graph_start.year = build_workflow_graph_start_c.year; 
     135    build_workflow_graph_start.month = build_workflow_graph_start_c.month; 
     136    build_workflow_graph_start.day = build_workflow_graph_start_c.day; 
     137    build_workflow_graph_start.hour = build_workflow_graph_start_c.hour; 
     138    build_workflow_graph_start.minute = build_workflow_graph_start_c.minute; 
     139    build_workflow_graph_start.second = build_workflow_graph_start_c.second; 
     140    build_workflow_graph_start.timestep = build_workflow_graph_start_c.timestep; 
     141    CTimer::get("XIOS").suspend(); 
     142  } 
     143 
     144  void cxios_get_fieldgroup_build_workflow_graph_start(fieldgroup_Ptr fieldgroup_hdl, cxios_duration* build_workflow_graph_start_c) 
     145  { 
     146    CTimer::get("XIOS").resume(); 
     147    CDuration build_workflow_graph_start = fieldgroup_hdl->build_workflow_graph_start.getInheritedValue(); 
     148    build_workflow_graph_start_c->year = build_workflow_graph_start.year; 
     149    build_workflow_graph_start_c->month = build_workflow_graph_start.month; 
     150    build_workflow_graph_start_c->day = build_workflow_graph_start.day; 
     151    build_workflow_graph_start_c->hour = build_workflow_graph_start.hour; 
     152    build_workflow_graph_start_c->minute = build_workflow_graph_start.minute; 
     153    build_workflow_graph_start_c->second = build_workflow_graph_start.second; 
     154    build_workflow_graph_start_c->timestep = build_workflow_graph_start.timestep; 
     155    CTimer::get("XIOS").suspend(); 
     156  } 
     157 
     158  bool cxios_is_defined_fieldgroup_build_workflow_graph_start(fieldgroup_Ptr fieldgroup_hdl) 
     159  { 
     160     CTimer::get("XIOS").resume(); 
     161     bool isDefined = fieldgroup_hdl->build_workflow_graph_start.hasInheritedValue(); 
     162     CTimer::get("XIOS").suspend(); 
     163     return isDefined; 
     164  } 
     165 
     166 
    68167  void cxios_set_fieldgroup_cell_methods(fieldgroup_Ptr fieldgroup_hdl, const char * cell_methods, int cell_methods_size) 
    69168  { 
     
    185284     CTimer::get("XIOS").resume(); 
    186285     bool isDefined = fieldgroup_hdl->compression_level.hasInheritedValue(); 
     286     CTimer::get("XIOS").suspend(); 
     287     return isDefined; 
     288  } 
     289 
     290 
     291  void cxios_set_fieldgroup_conversion_by_netcdf(fieldgroup_Ptr fieldgroup_hdl, bool conversion_by_netcdf) 
     292  { 
     293    CTimer::get("XIOS").resume(); 
     294    fieldgroup_hdl->conversion_by_netcdf.setValue(conversion_by_netcdf); 
     295    CTimer::get("XIOS").suspend(); 
     296  } 
     297 
     298  void cxios_get_fieldgroup_conversion_by_netcdf(fieldgroup_Ptr fieldgroup_hdl, bool* conversion_by_netcdf) 
     299  { 
     300    CTimer::get("XIOS").resume(); 
     301    *conversion_by_netcdf = fieldgroup_hdl->conversion_by_netcdf.getInheritedValue(); 
     302    CTimer::get("XIOS").suspend(); 
     303  } 
     304 
     305  bool cxios_is_defined_fieldgroup_conversion_by_netcdf(fieldgroup_Ptr fieldgroup_hdl) 
     306  { 
     307     CTimer::get("XIOS").resume(); 
     308     bool isDefined = fieldgroup_hdl->conversion_by_netcdf.hasInheritedValue(); 
    187309     CTimer::get("XIOS").suspend(); 
    188310     return isDefined; 
  • XIOS2/trunk/src/interface/c_attr/icinterpolate_axis_attr.cpp

    r1626 r2618  
    3838     CTimer::get("XIOS").resume(); 
    3939     bool isDefined = interpolate_axis_hdl->coordinate.hasInheritedValue(); 
     40     CTimer::get("XIOS").suspend(); 
     41     return isDefined; 
     42  } 
     43 
     44 
     45  void cxios_set_interpolate_axis_coordinate_dst(interpolate_axis_Ptr interpolate_axis_hdl, const char * coordinate_dst, int coordinate_dst_size) 
     46  { 
     47    std::string coordinate_dst_str; 
     48    if (!cstr2string(coordinate_dst, coordinate_dst_size, coordinate_dst_str)) return; 
     49    CTimer::get("XIOS").resume(); 
     50    interpolate_axis_hdl->coordinate_dst.setValue(coordinate_dst_str); 
     51    CTimer::get("XIOS").suspend(); 
     52  } 
     53 
     54  void cxios_get_interpolate_axis_coordinate_dst(interpolate_axis_Ptr interpolate_axis_hdl, char * coordinate_dst, int coordinate_dst_size) 
     55  { 
     56    CTimer::get("XIOS").resume(); 
     57    if (!string_copy(interpolate_axis_hdl->coordinate_dst.getInheritedValue(), coordinate_dst, coordinate_dst_size)) 
     58      ERROR("void cxios_get_interpolate_axis_coordinate_dst(interpolate_axis_Ptr interpolate_axis_hdl, char * coordinate_dst, int coordinate_dst_size)", << "Input string is too short"); 
     59    CTimer::get("XIOS").suspend(); 
     60  } 
     61 
     62  bool cxios_is_defined_interpolate_axis_coordinate_dst(interpolate_axis_Ptr interpolate_axis_hdl) 
     63  { 
     64     CTimer::get("XIOS").resume(); 
     65     bool isDefined = interpolate_axis_hdl->coordinate_dst.hasInheritedValue(); 
     66     CTimer::get("XIOS").suspend(); 
     67     return isDefined; 
     68  } 
     69 
     70 
     71  void cxios_set_interpolate_axis_coordinate_src(interpolate_axis_Ptr interpolate_axis_hdl, const char * coordinate_src, int coordinate_src_size) 
     72  { 
     73    std::string coordinate_src_str; 
     74    if (!cstr2string(coordinate_src, coordinate_src_size, coordinate_src_str)) return; 
     75    CTimer::get("XIOS").resume(); 
     76    interpolate_axis_hdl->coordinate_src.setValue(coordinate_src_str); 
     77    CTimer::get("XIOS").suspend(); 
     78  } 
     79 
     80  void cxios_get_interpolate_axis_coordinate_src(interpolate_axis_Ptr interpolate_axis_hdl, char * coordinate_src, int coordinate_src_size) 
     81  { 
     82    CTimer::get("XIOS").resume(); 
     83    if (!string_copy(interpolate_axis_hdl->coordinate_src.getInheritedValue(), coordinate_src, coordinate_src_size)) 
     84      ERROR("void cxios_get_interpolate_axis_coordinate_src(interpolate_axis_Ptr interpolate_axis_hdl, char * coordinate_src, int coordinate_src_size)", << "Input string is too short"); 
     85    CTimer::get("XIOS").suspend(); 
     86  } 
     87 
     88  bool cxios_is_defined_interpolate_axis_coordinate_src(interpolate_axis_Ptr interpolate_axis_hdl) 
     89  { 
     90     CTimer::get("XIOS").resume(); 
     91     bool isDefined = interpolate_axis_hdl->coordinate_src.hasInheritedValue(); 
     92     CTimer::get("XIOS").suspend(); 
     93     return isDefined; 
     94  } 
     95 
     96 
     97  void cxios_set_interpolate_axis_extrapolate(interpolate_axis_Ptr interpolate_axis_hdl, bool extrapolate) 
     98  { 
     99    CTimer::get("XIOS").resume(); 
     100    interpolate_axis_hdl->extrapolate.setValue(extrapolate); 
     101    CTimer::get("XIOS").suspend(); 
     102  } 
     103 
     104  void cxios_get_interpolate_axis_extrapolate(interpolate_axis_Ptr interpolate_axis_hdl, bool* extrapolate) 
     105  { 
     106    CTimer::get("XIOS").resume(); 
     107    *extrapolate = interpolate_axis_hdl->extrapolate.getInheritedValue(); 
     108    CTimer::get("XIOS").suspend(); 
     109  } 
     110 
     111  bool cxios_is_defined_interpolate_axis_extrapolate(interpolate_axis_Ptr interpolate_axis_hdl) 
     112  { 
     113     CTimer::get("XIOS").resume(); 
     114     bool isDefined = interpolate_axis_hdl->extrapolate.hasInheritedValue(); 
    40115     CTimer::get("XIOS").suspend(); 
    41116     return isDefined; 
  • XIOS2/trunk/src/interface/fortran_attr/axis_interface_attr.F90

    r1492 r2618  
    134134 
    135135 
     136    SUBROUTINE cxios_set_axis_convert_from_factor(axis_hdl, convert_from_factor) BIND(C) 
     137      USE ISO_C_BINDING 
     138      INTEGER (kind = C_INTPTR_T), VALUE :: axis_hdl 
     139      REAL (KIND=C_DOUBLE)      , VALUE :: convert_from_factor 
     140    END SUBROUTINE cxios_set_axis_convert_from_factor 
     141 
     142    SUBROUTINE cxios_get_axis_convert_from_factor(axis_hdl, convert_from_factor) BIND(C) 
     143      USE ISO_C_BINDING 
     144      INTEGER (kind = C_INTPTR_T), VALUE :: axis_hdl 
     145      REAL (KIND=C_DOUBLE)             :: convert_from_factor 
     146    END SUBROUTINE cxios_get_axis_convert_from_factor 
     147 
     148    FUNCTION cxios_is_defined_axis_convert_from_factor(axis_hdl) BIND(C) 
     149      USE ISO_C_BINDING 
     150      LOGICAL(kind=C_BOOL) :: cxios_is_defined_axis_convert_from_factor 
     151      INTEGER (kind = C_INTPTR_T), VALUE :: axis_hdl 
     152    END FUNCTION cxios_is_defined_axis_convert_from_factor 
     153 
     154 
    136155    SUBROUTINE cxios_set_axis_data_begin(axis_hdl, data_begin) BIND(C) 
    137156      USE ISO_C_BINDING 
  • XIOS2/trunk/src/interface/fortran_attr/axisgroup_interface_attr.F90

    r1492 r2618  
    134134 
    135135 
     136    SUBROUTINE cxios_set_axisgroup_convert_from_factor(axisgroup_hdl, convert_from_factor) BIND(C) 
     137      USE ISO_C_BINDING 
     138      INTEGER (kind = C_INTPTR_T), VALUE :: axisgroup_hdl 
     139      REAL (KIND=C_DOUBLE)      , VALUE :: convert_from_factor 
     140    END SUBROUTINE cxios_set_axisgroup_convert_from_factor 
     141 
     142    SUBROUTINE cxios_get_axisgroup_convert_from_factor(axisgroup_hdl, convert_from_factor) BIND(C) 
     143      USE ISO_C_BINDING 
     144      INTEGER (kind = C_INTPTR_T), VALUE :: axisgroup_hdl 
     145      REAL (KIND=C_DOUBLE)             :: convert_from_factor 
     146    END SUBROUTINE cxios_get_axisgroup_convert_from_factor 
     147 
     148    FUNCTION cxios_is_defined_axisgroup_convert_from_factor(axisgroup_hdl) BIND(C) 
     149      USE ISO_C_BINDING 
     150      LOGICAL(kind=C_BOOL) :: cxios_is_defined_axisgroup_convert_from_factor 
     151      INTEGER (kind = C_INTPTR_T), VALUE :: axisgroup_hdl 
     152    END FUNCTION cxios_is_defined_axisgroup_convert_from_factor 
     153 
     154 
    136155    SUBROUTINE cxios_set_axisgroup_data_begin(axisgroup_hdl, data_begin) BIND(C) 
    137156      USE ISO_C_BINDING 
  • XIOS2/trunk/src/interface/fortran_attr/domain_interface_attr.F90

    r2131 r2618  
    10091009 
    10101010 
     1011    SUBROUTINE cxios_set_domain_tile_only(domain_hdl, tile_only) BIND(C) 
     1012      USE ISO_C_BINDING 
     1013      INTEGER (kind = C_INTPTR_T), VALUE :: domain_hdl 
     1014      LOGICAL (KIND=C_BOOL)      , VALUE :: tile_only 
     1015    END SUBROUTINE cxios_set_domain_tile_only 
     1016 
     1017    SUBROUTINE cxios_get_domain_tile_only(domain_hdl, tile_only) BIND(C) 
     1018      USE ISO_C_BINDING 
     1019      INTEGER (kind = C_INTPTR_T), VALUE :: domain_hdl 
     1020      LOGICAL (KIND=C_BOOL)             :: tile_only 
     1021    END SUBROUTINE cxios_get_domain_tile_only 
     1022 
     1023    FUNCTION cxios_is_defined_domain_tile_only(domain_hdl) BIND(C) 
     1024      USE ISO_C_BINDING 
     1025      LOGICAL(kind=C_BOOL) :: cxios_is_defined_domain_tile_only 
     1026      INTEGER (kind = C_INTPTR_T), VALUE :: domain_hdl 
     1027    END FUNCTION cxios_is_defined_domain_tile_only 
     1028 
     1029 
    10111030    SUBROUTINE cxios_set_domain_type(domain_hdl, type, type_size) BIND(C) 
    10121031      USE ISO_C_BINDING 
  • XIOS2/trunk/src/interface/fortran_attr/domaingroup_interface_attr.F90

    r2131 r2618  
    10301030 
    10311031 
     1032    SUBROUTINE cxios_set_domaingroup_tile_only(domaingroup_hdl, tile_only) BIND(C) 
     1033      USE ISO_C_BINDING 
     1034      INTEGER (kind = C_INTPTR_T), VALUE :: domaingroup_hdl 
     1035      LOGICAL (KIND=C_BOOL)      , VALUE :: tile_only 
     1036    END SUBROUTINE cxios_set_domaingroup_tile_only 
     1037 
     1038    SUBROUTINE cxios_get_domaingroup_tile_only(domaingroup_hdl, tile_only) BIND(C) 
     1039      USE ISO_C_BINDING 
     1040      INTEGER (kind = C_INTPTR_T), VALUE :: domaingroup_hdl 
     1041      LOGICAL (KIND=C_BOOL)             :: tile_only 
     1042    END SUBROUTINE cxios_get_domaingroup_tile_only 
     1043 
     1044    FUNCTION cxios_is_defined_domaingroup_tile_only(domaingroup_hdl) BIND(C) 
     1045      USE ISO_C_BINDING 
     1046      LOGICAL(kind=C_BOOL) :: cxios_is_defined_domaingroup_tile_only 
     1047      INTEGER (kind = C_INTPTR_T), VALUE :: domaingroup_hdl 
     1048    END FUNCTION cxios_is_defined_domaingroup_tile_only 
     1049 
     1050 
    10321051    SUBROUTINE cxios_set_domaingroup_type(domaingroup_hdl, type, type_size) BIND(C) 
    10331052      USE ISO_C_BINDING 
  • XIOS2/trunk/src/interface/fortran_attr/field_interface_attr.F90

    r1492 r2618  
    5050 
    5151 
     52    SUBROUTINE cxios_set_field_build_workflow_graph(field_hdl, build_workflow_graph) BIND(C) 
     53      USE ISO_C_BINDING 
     54      INTEGER (kind = C_INTPTR_T), VALUE :: field_hdl 
     55      LOGICAL (KIND=C_BOOL)      , VALUE :: build_workflow_graph 
     56    END SUBROUTINE cxios_set_field_build_workflow_graph 
     57 
     58    SUBROUTINE cxios_get_field_build_workflow_graph(field_hdl, build_workflow_graph) BIND(C) 
     59      USE ISO_C_BINDING 
     60      INTEGER (kind = C_INTPTR_T), VALUE :: field_hdl 
     61      LOGICAL (KIND=C_BOOL)             :: build_workflow_graph 
     62    END SUBROUTINE cxios_get_field_build_workflow_graph 
     63 
     64    FUNCTION cxios_is_defined_field_build_workflow_graph(field_hdl) BIND(C) 
     65      USE ISO_C_BINDING 
     66      LOGICAL(kind=C_BOOL) :: cxios_is_defined_field_build_workflow_graph 
     67      INTEGER (kind = C_INTPTR_T), VALUE :: field_hdl 
     68    END FUNCTION cxios_is_defined_field_build_workflow_graph 
     69 
     70 
     71    SUBROUTINE cxios_set_field_build_workflow_graph_end(field_hdl, build_workflow_graph_end) BIND(C) 
     72      USE ISO_C_BINDING 
     73      USE IDURATION 
     74      INTEGER (kind = C_INTPTR_T), VALUE :: field_hdl 
     75      TYPE(txios(duration)), VALUE :: build_workflow_graph_end 
     76    END SUBROUTINE cxios_set_field_build_workflow_graph_end 
     77 
     78    SUBROUTINE cxios_get_field_build_workflow_graph_end(field_hdl, build_workflow_graph_end) BIND(C) 
     79      USE ISO_C_BINDING 
     80      USE IDURATION 
     81      INTEGER (kind = C_INTPTR_T), VALUE :: field_hdl 
     82      TYPE(txios(duration)) :: build_workflow_graph_end 
     83    END SUBROUTINE cxios_get_field_build_workflow_graph_end 
     84 
     85    FUNCTION cxios_is_defined_field_build_workflow_graph_end(field_hdl) BIND(C) 
     86      USE ISO_C_BINDING 
     87      LOGICAL(kind=C_BOOL) :: cxios_is_defined_field_build_workflow_graph_end 
     88      INTEGER (kind = C_INTPTR_T), VALUE :: field_hdl 
     89    END FUNCTION cxios_is_defined_field_build_workflow_graph_end 
     90 
     91 
     92    SUBROUTINE cxios_set_field_build_workflow_graph_start(field_hdl, build_workflow_graph_start) BIND(C) 
     93      USE ISO_C_BINDING 
     94      USE IDURATION 
     95      INTEGER (kind = C_INTPTR_T), VALUE :: field_hdl 
     96      TYPE(txios(duration)), VALUE :: build_workflow_graph_start 
     97    END SUBROUTINE cxios_set_field_build_workflow_graph_start 
     98 
     99    SUBROUTINE cxios_get_field_build_workflow_graph_start(field_hdl, build_workflow_graph_start) BIND(C) 
     100      USE ISO_C_BINDING 
     101      USE IDURATION 
     102      INTEGER (kind = C_INTPTR_T), VALUE :: field_hdl 
     103      TYPE(txios(duration)) :: build_workflow_graph_start 
     104    END SUBROUTINE cxios_get_field_build_workflow_graph_start 
     105 
     106    FUNCTION cxios_is_defined_field_build_workflow_graph_start(field_hdl) BIND(C) 
     107      USE ISO_C_BINDING 
     108      LOGICAL(kind=C_BOOL) :: cxios_is_defined_field_build_workflow_graph_start 
     109      INTEGER (kind = C_INTPTR_T), VALUE :: field_hdl 
     110    END FUNCTION cxios_is_defined_field_build_workflow_graph_start 
     111 
     112 
    52113    SUBROUTINE cxios_set_field_cell_methods(field_hdl, cell_methods, cell_methods_size) BIND(C) 
    53114      USE ISO_C_BINDING 
     
    151212 
    152213 
     214    SUBROUTINE cxios_set_field_conversion_by_netcdf(field_hdl, conversion_by_netcdf) BIND(C) 
     215      USE ISO_C_BINDING 
     216      INTEGER (kind = C_INTPTR_T), VALUE :: field_hdl 
     217      LOGICAL (KIND=C_BOOL)      , VALUE :: conversion_by_netcdf 
     218    END SUBROUTINE cxios_set_field_conversion_by_netcdf 
     219 
     220    SUBROUTINE cxios_get_field_conversion_by_netcdf(field_hdl, conversion_by_netcdf) BIND(C) 
     221      USE ISO_C_BINDING 
     222      INTEGER (kind = C_INTPTR_T), VALUE :: field_hdl 
     223      LOGICAL (KIND=C_BOOL)             :: conversion_by_netcdf 
     224    END SUBROUTINE cxios_get_field_conversion_by_netcdf 
     225 
     226    FUNCTION cxios_is_defined_field_conversion_by_netcdf(field_hdl) BIND(C) 
     227      USE ISO_C_BINDING 
     228      LOGICAL(kind=C_BOOL) :: cxios_is_defined_field_conversion_by_netcdf 
     229      INTEGER (kind = C_INTPTR_T), VALUE :: field_hdl 
     230    END FUNCTION cxios_is_defined_field_conversion_by_netcdf 
     231 
     232 
    153233    SUBROUTINE cxios_set_field_default_value(field_hdl, default_value) BIND(C) 
    154234      USE ISO_C_BINDING 
  • XIOS2/trunk/src/interface/fortran_attr/fieldgroup_interface_attr.F90

    r1492 r2618  
    5050 
    5151 
     52    SUBROUTINE cxios_set_fieldgroup_build_workflow_graph(fieldgroup_hdl, build_workflow_graph) BIND(C) 
     53      USE ISO_C_BINDING 
     54      INTEGER (kind = C_INTPTR_T), VALUE :: fieldgroup_hdl 
     55      LOGICAL (KIND=C_BOOL)      , VALUE :: build_workflow_graph 
     56    END SUBROUTINE cxios_set_fieldgroup_build_workflow_graph 
     57 
     58    SUBROUTINE cxios_get_fieldgroup_build_workflow_graph(fieldgroup_hdl, build_workflow_graph) BIND(C) 
     59      USE ISO_C_BINDING 
     60      INTEGER (kind = C_INTPTR_T), VALUE :: fieldgroup_hdl 
     61      LOGICAL (KIND=C_BOOL)             :: build_workflow_graph 
     62    END SUBROUTINE cxios_get_fieldgroup_build_workflow_graph 
     63 
     64    FUNCTION cxios_is_defined_fieldgroup_build_workflow_graph(fieldgroup_hdl) BIND(C) 
     65      USE ISO_C_BINDING 
     66      LOGICAL(kind=C_BOOL) :: cxios_is_defined_fieldgroup_build_workflow_graph 
     67      INTEGER (kind = C_INTPTR_T), VALUE :: fieldgroup_hdl 
     68    END FUNCTION cxios_is_defined_fieldgroup_build_workflow_graph 
     69 
     70 
     71    SUBROUTINE cxios_set_fieldgroup_build_workflow_graph_end(fieldgroup_hdl, build_workflow_graph_end) BIND(C) 
     72      USE ISO_C_BINDING 
     73      USE IDURATION 
     74      INTEGER (kind = C_INTPTR_T), VALUE :: fieldgroup_hdl 
     75      TYPE(txios(duration)), VALUE :: build_workflow_graph_end 
     76    END SUBROUTINE cxios_set_fieldgroup_build_workflow_graph_end 
     77 
     78    SUBROUTINE cxios_get_fieldgroup_build_workflow_graph_end(fieldgroup_hdl, build_workflow_graph_end) BIND(C) 
     79      USE ISO_C_BINDING 
     80      USE IDURATION 
     81      INTEGER (kind = C_INTPTR_T), VALUE :: fieldgroup_hdl 
     82      TYPE(txios(duration)) :: build_workflow_graph_end 
     83    END SUBROUTINE cxios_get_fieldgroup_build_workflow_graph_end 
     84 
     85    FUNCTION cxios_is_defined_fieldgroup_build_workflow_graph_end(fieldgroup_hdl) BIND(C) 
     86      USE ISO_C_BINDING 
     87      LOGICAL(kind=C_BOOL) :: cxios_is_defined_fieldgroup_build_workflow_graph_end 
     88      INTEGER (kind = C_INTPTR_T), VALUE :: fieldgroup_hdl 
     89    END FUNCTION cxios_is_defined_fieldgroup_build_workflow_graph_end 
     90 
     91 
     92    SUBROUTINE cxios_set_fieldgroup_build_workflow_graph_start(fieldgroup_hdl, build_workflow_graph_start) BIND(C) 
     93      USE ISO_C_BINDING 
     94      USE IDURATION 
     95      INTEGER (kind = C_INTPTR_T), VALUE :: fieldgroup_hdl 
     96      TYPE(txios(duration)), VALUE :: build_workflow_graph_start 
     97    END SUBROUTINE cxios_set_fieldgroup_build_workflow_graph_start 
     98 
     99    SUBROUTINE cxios_get_fieldgroup_build_workflow_graph_start(fieldgroup_hdl, build_workflow_graph_start) BIND(C) 
     100      USE ISO_C_BINDING 
     101      USE IDURATION 
     102      INTEGER (kind = C_INTPTR_T), VALUE :: fieldgroup_hdl 
     103      TYPE(txios(duration)) :: build_workflow_graph_start 
     104    END SUBROUTINE cxios_get_fieldgroup_build_workflow_graph_start 
     105 
     106    FUNCTION cxios_is_defined_fieldgroup_build_workflow_graph_start(fieldgroup_hdl) BIND(C) 
     107      USE ISO_C_BINDING 
     108      LOGICAL(kind=C_BOOL) :: cxios_is_defined_fieldgroup_build_workflow_graph_start 
     109      INTEGER (kind = C_INTPTR_T), VALUE :: fieldgroup_hdl 
     110    END FUNCTION cxios_is_defined_fieldgroup_build_workflow_graph_start 
     111 
     112 
    52113    SUBROUTINE cxios_set_fieldgroup_cell_methods(fieldgroup_hdl, cell_methods, cell_methods_size) BIND(C) 
    53114      USE ISO_C_BINDING 
     
    151212 
    152213 
     214    SUBROUTINE cxios_set_fieldgroup_conversion_by_netcdf(fieldgroup_hdl, conversion_by_netcdf) BIND(C) 
     215      USE ISO_C_BINDING 
     216      INTEGER (kind = C_INTPTR_T), VALUE :: fieldgroup_hdl 
     217      LOGICAL (KIND=C_BOOL)      , VALUE :: conversion_by_netcdf 
     218    END SUBROUTINE cxios_set_fieldgroup_conversion_by_netcdf 
     219 
     220    SUBROUTINE cxios_get_fieldgroup_conversion_by_netcdf(fieldgroup_hdl, conversion_by_netcdf) BIND(C) 
     221      USE ISO_C_BINDING 
     222      INTEGER (kind = C_INTPTR_T), VALUE :: fieldgroup_hdl 
     223      LOGICAL (KIND=C_BOOL)             :: conversion_by_netcdf 
     224    END SUBROUTINE cxios_get_fieldgroup_conversion_by_netcdf 
     225 
     226    FUNCTION cxios_is_defined_fieldgroup_conversion_by_netcdf(fieldgroup_hdl) BIND(C) 
     227      USE ISO_C_BINDING 
     228      LOGICAL(kind=C_BOOL) :: cxios_is_defined_fieldgroup_conversion_by_netcdf 
     229      INTEGER (kind = C_INTPTR_T), VALUE :: fieldgroup_hdl 
     230    END FUNCTION cxios_is_defined_fieldgroup_conversion_by_netcdf 
     231 
     232 
    153233    SUBROUTINE cxios_set_fieldgroup_default_value(fieldgroup_hdl, default_value) BIND(C) 
    154234      USE ISO_C_BINDING 
  • XIOS2/trunk/src/interface/fortran_attr/iaxis_attr.F90

    r1492 r2618  
    1212 
    1313  SUBROUTINE xios(set_axis_attr)  & 
    14     ( axis_id, axis_ref, axis_type, begin, bounds, bounds_name, comment, data_begin, data_index  & 
    15     , data_n, dim_name, formula, formula_bounds, formula_term, formula_term_bounds, index, label  & 
    16     , long_name, mask, n, n_distributed_partition, n_glo, name, positive, prec, standard_name, unit  & 
    17     , value ) 
     14    ( axis_id, axis_ref, axis_type, begin, bounds, bounds_name, comment, convert_from_factor, data_begin  & 
     15    , data_index, data_n, dim_name, formula, formula_bounds, formula_term, formula_term_bounds, index  & 
     16    , label, long_name, mask, n, n_distributed_partition, n_glo, name, positive, prec, standard_name  & 
     17    , unit, value ) 
    1818 
    1919    IMPLICIT NONE 
     
    2626      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: bounds_name 
    2727      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: comment 
     28      REAL (KIND=8) , OPTIONAL, INTENT(IN) :: convert_from_factor 
    2829      INTEGER  , OPTIONAL, INTENT(IN) :: data_begin 
    2930      INTEGER  , OPTIONAL, INTENT(IN) :: data_index(:) 
     
    5253      (axis_id,axis_hdl) 
    5354      CALL xios(set_axis_attr_hdl_)   & 
    54       ( axis_hdl, axis_ref, axis_type, begin, bounds, bounds_name, comment, data_begin, data_index  & 
    55       , data_n, dim_name, formula, formula_bounds, formula_term, formula_term_bounds, index, label  & 
    56       , long_name, mask, n, n_distributed_partition, n_glo, name, positive, prec, standard_name, unit  & 
    57       , value ) 
     55      ( axis_hdl, axis_ref, axis_type, begin, bounds, bounds_name, comment, convert_from_factor, data_begin  & 
     56      , data_index, data_n, dim_name, formula, formula_bounds, formula_term, formula_term_bounds, index  & 
     57      , label, long_name, mask, n, n_distributed_partition, n_glo, name, positive, prec, standard_name  & 
     58      , unit, value ) 
    5859 
    5960  END SUBROUTINE xios(set_axis_attr) 
    6061 
    6162  SUBROUTINE xios(set_axis_attr_hdl)  & 
    62     ( axis_hdl, axis_ref, axis_type, begin, bounds, bounds_name, comment, data_begin, data_index  & 
    63     , data_n, dim_name, formula, formula_bounds, formula_term, formula_term_bounds, index, label  & 
    64     , long_name, mask, n, n_distributed_partition, n_glo, name, positive, prec, standard_name, unit  & 
    65     , value ) 
     63    ( axis_hdl, axis_ref, axis_type, begin, bounds, bounds_name, comment, convert_from_factor, data_begin  & 
     64    , data_index, data_n, dim_name, formula, formula_bounds, formula_term, formula_term_bounds, index  & 
     65    , label, long_name, mask, n, n_distributed_partition, n_glo, name, positive, prec, standard_name  & 
     66    , unit, value ) 
    6667 
    6768    IMPLICIT NONE 
     
    7374      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: bounds_name 
    7475      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: comment 
     76      REAL (KIND=8) , OPTIONAL, INTENT(IN) :: convert_from_factor 
    7577      INTEGER  , OPTIONAL, INTENT(IN) :: data_begin 
    7678      INTEGER  , OPTIONAL, INTENT(IN) :: data_index(:) 
     
    9799 
    98100      CALL xios(set_axis_attr_hdl_)  & 
    99       ( axis_hdl, axis_ref, axis_type, begin, bounds, bounds_name, comment, data_begin, data_index  & 
    100       , data_n, dim_name, formula, formula_bounds, formula_term, formula_term_bounds, index, label  & 
    101       , long_name, mask, n, n_distributed_partition, n_glo, name, positive, prec, standard_name, unit  & 
    102       , value ) 
     101      ( axis_hdl, axis_ref, axis_type, begin, bounds, bounds_name, comment, convert_from_factor, data_begin  & 
     102      , data_index, data_n, dim_name, formula, formula_bounds, formula_term, formula_term_bounds, index  & 
     103      , label, long_name, mask, n, n_distributed_partition, n_glo, name, positive, prec, standard_name  & 
     104      , unit, value ) 
    103105 
    104106  END SUBROUTINE xios(set_axis_attr_hdl) 
    105107 
    106108  SUBROUTINE xios(set_axis_attr_hdl_)   & 
    107     ( axis_hdl, axis_ref_, axis_type_, begin_, bounds_, bounds_name_, comment_, data_begin_, data_index_  & 
    108     , data_n_, dim_name_, formula_, formula_bounds_, formula_term_, formula_term_bounds_, index_  & 
    109     , label_, long_name_, mask_, n_, n_distributed_partition_, n_glo_, name_, positive_, prec_, standard_name_  & 
    110     , unit_, value_ ) 
     109    ( axis_hdl, axis_ref_, axis_type_, begin_, bounds_, bounds_name_, comment_, convert_from_factor_  & 
     110    , data_begin_, data_index_, data_n_, dim_name_, formula_, formula_bounds_, formula_term_, formula_term_bounds_  & 
     111    , index_, label_, long_name_, mask_, n_, n_distributed_partition_, n_glo_, name_, positive_  & 
     112    , prec_, standard_name_, unit_, value_ ) 
    111113 
    112114    IMPLICIT NONE 
     
    118120      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: bounds_name_ 
    119121      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: comment_ 
     122      REAL (KIND=8) , OPTIONAL, INTENT(IN) :: convert_from_factor_ 
    120123      INTEGER  , OPTIONAL, INTENT(IN) :: data_begin_ 
    121124      INTEGER  , OPTIONAL, INTENT(IN) :: data_index_(:) 
     
    171174      ENDIF 
    172175 
     176      IF (PRESENT(convert_from_factor_)) THEN 
     177        CALL cxios_set_axis_convert_from_factor & 
     178      (axis_hdl%daddr, convert_from_factor_) 
     179      ENDIF 
     180 
    173181      IF (PRESENT(data_begin_)) THEN 
    174182        CALL cxios_set_axis_data_begin & 
     
    281289 
    282290  SUBROUTINE xios(get_axis_attr)  & 
    283     ( axis_id, axis_ref, axis_type, begin, bounds, bounds_name, comment, data_begin, data_index  & 
    284     , data_n, dim_name, formula, formula_bounds, formula_term, formula_term_bounds, index, label  & 
    285     , long_name, mask, n, n_distributed_partition, n_glo, name, positive, prec, standard_name, unit  & 
    286     , value ) 
     291    ( axis_id, axis_ref, axis_type, begin, bounds, bounds_name, comment, convert_from_factor, data_begin  & 
     292    , data_index, data_n, dim_name, formula, formula_bounds, formula_term, formula_term_bounds, index  & 
     293    , label, long_name, mask, n, n_distributed_partition, n_glo, name, positive, prec, standard_name  & 
     294    , unit, value ) 
    287295 
    288296    IMPLICIT NONE 
     
    295303      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: bounds_name 
    296304      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: comment 
     305      REAL (KIND=8) , OPTIONAL, INTENT(OUT) :: convert_from_factor 
    297306      INTEGER  , OPTIONAL, INTENT(OUT) :: data_begin 
    298307      INTEGER  , OPTIONAL, INTENT(OUT) :: data_index(:) 
     
    321330      (axis_id,axis_hdl) 
    322331      CALL xios(get_axis_attr_hdl_)   & 
    323       ( axis_hdl, axis_ref, axis_type, begin, bounds, bounds_name, comment, data_begin, data_index  & 
    324       , data_n, dim_name, formula, formula_bounds, formula_term, formula_term_bounds, index, label  & 
    325       , long_name, mask, n, n_distributed_partition, n_glo, name, positive, prec, standard_name, unit  & 
    326       , value ) 
     332      ( axis_hdl, axis_ref, axis_type, begin, bounds, bounds_name, comment, convert_from_factor, data_begin  & 
     333      , data_index, data_n, dim_name, formula, formula_bounds, formula_term, formula_term_bounds, index  & 
     334      , label, long_name, mask, n, n_distributed_partition, n_glo, name, positive, prec, standard_name  & 
     335      , unit, value ) 
    327336 
    328337  END SUBROUTINE xios(get_axis_attr) 
    329338 
    330339  SUBROUTINE xios(get_axis_attr_hdl)  & 
    331     ( axis_hdl, axis_ref, axis_type, begin, bounds, bounds_name, comment, data_begin, data_index  & 
    332     , data_n, dim_name, formula, formula_bounds, formula_term, formula_term_bounds, index, label  & 
    333     , long_name, mask, n, n_distributed_partition, n_glo, name, positive, prec, standard_name, unit  & 
    334     , value ) 
     340    ( axis_hdl, axis_ref, axis_type, begin, bounds, bounds_name, comment, convert_from_factor, data_begin  & 
     341    , data_index, data_n, dim_name, formula, formula_bounds, formula_term, formula_term_bounds, index  & 
     342    , label, long_name, mask, n, n_distributed_partition, n_glo, name, positive, prec, standard_name  & 
     343    , unit, value ) 
    335344 
    336345    IMPLICIT NONE 
     
    342351      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: bounds_name 
    343352      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: comment 
     353      REAL (KIND=8) , OPTIONAL, INTENT(OUT) :: convert_from_factor 
    344354      INTEGER  , OPTIONAL, INTENT(OUT) :: data_begin 
    345355      INTEGER  , OPTIONAL, INTENT(OUT) :: data_index(:) 
     
    366376 
    367377      CALL xios(get_axis_attr_hdl_)  & 
    368       ( axis_hdl, axis_ref, axis_type, begin, bounds, bounds_name, comment, data_begin, data_index  & 
    369       , data_n, dim_name, formula, formula_bounds, formula_term, formula_term_bounds, index, label  & 
    370       , long_name, mask, n, n_distributed_partition, n_glo, name, positive, prec, standard_name, unit  & 
    371       , value ) 
     378      ( axis_hdl, axis_ref, axis_type, begin, bounds, bounds_name, comment, convert_from_factor, data_begin  & 
     379      , data_index, data_n, dim_name, formula, formula_bounds, formula_term, formula_term_bounds, index  & 
     380      , label, long_name, mask, n, n_distributed_partition, n_glo, name, positive, prec, standard_name  & 
     381      , unit, value ) 
    372382 
    373383  END SUBROUTINE xios(get_axis_attr_hdl) 
    374384 
    375385  SUBROUTINE xios(get_axis_attr_hdl_)   & 
    376     ( axis_hdl, axis_ref_, axis_type_, begin_, bounds_, bounds_name_, comment_, data_begin_, data_index_  & 
    377     , data_n_, dim_name_, formula_, formula_bounds_, formula_term_, formula_term_bounds_, index_  & 
    378     , label_, long_name_, mask_, n_, n_distributed_partition_, n_glo_, name_, positive_, prec_, standard_name_  & 
    379     , unit_, value_ ) 
     386    ( axis_hdl, axis_ref_, axis_type_, begin_, bounds_, bounds_name_, comment_, convert_from_factor_  & 
     387    , data_begin_, data_index_, data_n_, dim_name_, formula_, formula_bounds_, formula_term_, formula_term_bounds_  & 
     388    , index_, label_, long_name_, mask_, n_, n_distributed_partition_, n_glo_, name_, positive_  & 
     389    , prec_, standard_name_, unit_, value_ ) 
    380390 
    381391    IMPLICIT NONE 
     
    387397      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: bounds_name_ 
    388398      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: comment_ 
     399      REAL (KIND=8) , OPTIONAL, INTENT(OUT) :: convert_from_factor_ 
    389400      INTEGER  , OPTIONAL, INTENT(OUT) :: data_begin_ 
    390401      INTEGER  , OPTIONAL, INTENT(OUT) :: data_index_(:) 
     
    440451      ENDIF 
    441452 
     453      IF (PRESENT(convert_from_factor_)) THEN 
     454        CALL cxios_get_axis_convert_from_factor & 
     455      (axis_hdl%daddr, convert_from_factor_) 
     456      ENDIF 
     457 
    442458      IF (PRESENT(data_begin_)) THEN 
    443459        CALL cxios_get_axis_data_begin & 
     
    550566 
    551567  SUBROUTINE xios(is_defined_axis_attr)  & 
    552     ( axis_id, axis_ref, axis_type, begin, bounds, bounds_name, comment, data_begin, data_index  & 
    553     , data_n, dim_name, formula, formula_bounds, formula_term, formula_term_bounds, index, label  & 
    554     , long_name, mask, n, n_distributed_partition, n_glo, name, positive, prec, standard_name, unit  & 
    555     , value ) 
     568    ( axis_id, axis_ref, axis_type, begin, bounds, bounds_name, comment, convert_from_factor, data_begin  & 
     569    , data_index, data_n, dim_name, formula, formula_bounds, formula_term, formula_term_bounds, index  & 
     570    , label, long_name, mask, n, n_distributed_partition, n_glo, name, positive, prec, standard_name  & 
     571    , unit, value ) 
    556572 
    557573    IMPLICIT NONE 
     
    570586      LOGICAL, OPTIONAL, INTENT(OUT) :: comment 
    571587      LOGICAL(KIND=C_BOOL) :: comment_tmp 
     588      LOGICAL, OPTIONAL, INTENT(OUT) :: convert_from_factor 
     589      LOGICAL(KIND=C_BOOL) :: convert_from_factor_tmp 
    572590      LOGICAL, OPTIONAL, INTENT(OUT) :: data_begin 
    573591      LOGICAL(KIND=C_BOOL) :: data_begin_tmp 
     
    616634      (axis_id,axis_hdl) 
    617635      CALL xios(is_defined_axis_attr_hdl_)   & 
    618       ( axis_hdl, axis_ref, axis_type, begin, bounds, bounds_name, comment, data_begin, data_index  & 
    619       , data_n, dim_name, formula, formula_bounds, formula_term, formula_term_bounds, index, label  & 
    620       , long_name, mask, n, n_distributed_partition, n_glo, name, positive, prec, standard_name, unit  & 
    621       , value ) 
     636      ( axis_hdl, axis_ref, axis_type, begin, bounds, bounds_name, comment, convert_from_factor, data_begin  & 
     637      , data_index, data_n, dim_name, formula, formula_bounds, formula_term, formula_term_bounds, index  & 
     638      , label, long_name, mask, n, n_distributed_partition, n_glo, name, positive, prec, standard_name  & 
     639      , unit, value ) 
    622640 
    623641  END SUBROUTINE xios(is_defined_axis_attr) 
    624642 
    625643  SUBROUTINE xios(is_defined_axis_attr_hdl)  & 
    626     ( axis_hdl, axis_ref, axis_type, begin, bounds, bounds_name, comment, data_begin, data_index  & 
    627     , data_n, dim_name, formula, formula_bounds, formula_term, formula_term_bounds, index, label  & 
    628     , long_name, mask, n, n_distributed_partition, n_glo, name, positive, prec, standard_name, unit  & 
    629     , value ) 
     644    ( axis_hdl, axis_ref, axis_type, begin, bounds, bounds_name, comment, convert_from_factor, data_begin  & 
     645    , data_index, data_n, dim_name, formula, formula_bounds, formula_term, formula_term_bounds, index  & 
     646    , label, long_name, mask, n, n_distributed_partition, n_glo, name, positive, prec, standard_name  & 
     647    , unit, value ) 
    630648 
    631649    IMPLICIT NONE 
     
    643661      LOGICAL, OPTIONAL, INTENT(OUT) :: comment 
    644662      LOGICAL(KIND=C_BOOL) :: comment_tmp 
     663      LOGICAL, OPTIONAL, INTENT(OUT) :: convert_from_factor 
     664      LOGICAL(KIND=C_BOOL) :: convert_from_factor_tmp 
    645665      LOGICAL, OPTIONAL, INTENT(OUT) :: data_begin 
    646666      LOGICAL(KIND=C_BOOL) :: data_begin_tmp 
     
    687707 
    688708      CALL xios(is_defined_axis_attr_hdl_)  & 
    689       ( axis_hdl, axis_ref, axis_type, begin, bounds, bounds_name, comment, data_begin, data_index  & 
    690       , data_n, dim_name, formula, formula_bounds, formula_term, formula_term_bounds, index, label  & 
    691       , long_name, mask, n, n_distributed_partition, n_glo, name, positive, prec, standard_name, unit  & 
    692       , value ) 
     709      ( axis_hdl, axis_ref, axis_type, begin, bounds, bounds_name, comment, convert_from_factor, data_begin  & 
     710      , data_index, data_n, dim_name, formula, formula_bounds, formula_term, formula_term_bounds, index  & 
     711      , label, long_name, mask, n, n_distributed_partition, n_glo, name, positive, prec, standard_name  & 
     712      , unit, value ) 
    693713 
    694714  END SUBROUTINE xios(is_defined_axis_attr_hdl) 
    695715 
    696716  SUBROUTINE xios(is_defined_axis_attr_hdl_)   & 
    697     ( axis_hdl, axis_ref_, axis_type_, begin_, bounds_, bounds_name_, comment_, data_begin_, data_index_  & 
    698     , data_n_, dim_name_, formula_, formula_bounds_, formula_term_, formula_term_bounds_, index_  & 
    699     , label_, long_name_, mask_, n_, n_distributed_partition_, n_glo_, name_, positive_, prec_, standard_name_  & 
    700     , unit_, value_ ) 
     717    ( axis_hdl, axis_ref_, axis_type_, begin_, bounds_, bounds_name_, comment_, convert_from_factor_  & 
     718    , data_begin_, data_index_, data_n_, dim_name_, formula_, formula_bounds_, formula_term_, formula_term_bounds_  & 
     719    , index_, label_, long_name_, mask_, n_, n_distributed_partition_, n_glo_, name_, positive_  & 
     720    , prec_, standard_name_, unit_, value_ ) 
    701721 
    702722    IMPLICIT NONE 
     
    714734      LOGICAL, OPTIONAL, INTENT(OUT) :: comment_ 
    715735      LOGICAL(KIND=C_BOOL) :: comment__tmp 
     736      LOGICAL, OPTIONAL, INTENT(OUT) :: convert_from_factor_ 
     737      LOGICAL(KIND=C_BOOL) :: convert_from_factor__tmp 
    716738      LOGICAL, OPTIONAL, INTENT(OUT) :: data_begin_ 
    717739      LOGICAL(KIND=C_BOOL) :: data_begin__tmp 
     
    793815      ENDIF 
    794816 
     817      IF (PRESENT(convert_from_factor_)) THEN 
     818        convert_from_factor__tmp = cxios_is_defined_axis_convert_from_factor & 
     819      (axis_hdl%daddr) 
     820        convert_from_factor_ = convert_from_factor__tmp 
     821      ENDIF 
     822 
    795823      IF (PRESENT(data_begin_)) THEN 
    796824        data_begin__tmp = cxios_is_defined_axis_data_begin & 
  • XIOS2/trunk/src/interface/fortran_attr/iaxisgroup_attr.F90

    r1492 r2618  
    1212 
    1313  SUBROUTINE xios(set_axisgroup_attr)  & 
    14     ( axisgroup_id, axis_ref, axis_type, begin, bounds, bounds_name, comment, data_begin, data_index  & 
    15     , data_n, dim_name, formula, formula_bounds, formula_term, formula_term_bounds, group_ref, index  & 
    16     , label, long_name, mask, n, n_distributed_partition, n_glo, name, positive, prec, standard_name  & 
    17     , unit, value ) 
     14    ( axisgroup_id, axis_ref, axis_type, begin, bounds, bounds_name, comment, convert_from_factor  & 
     15    , data_begin, data_index, data_n, dim_name, formula, formula_bounds, formula_term, formula_term_bounds  & 
     16    , group_ref, index, label, long_name, mask, n, n_distributed_partition, n_glo, name, positive  & 
     17    , prec, standard_name, unit, value ) 
    1818 
    1919    IMPLICIT NONE 
     
    2626      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: bounds_name 
    2727      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: comment 
     28      REAL (KIND=8) , OPTIONAL, INTENT(IN) :: convert_from_factor 
    2829      INTEGER  , OPTIONAL, INTENT(IN) :: data_begin 
    2930      INTEGER  , OPTIONAL, INTENT(IN) :: data_index(:) 
     
    5354      (axisgroup_id,axisgroup_hdl) 
    5455      CALL xios(set_axisgroup_attr_hdl_)   & 
    55       ( axisgroup_hdl, axis_ref, axis_type, begin, bounds, bounds_name, comment, data_begin, data_index  & 
    56       , data_n, dim_name, formula, formula_bounds, formula_term, formula_term_bounds, group_ref, index  & 
    57       , label, long_name, mask, n, n_distributed_partition, n_glo, name, positive, prec, standard_name  & 
    58       , unit, value ) 
     56      ( axisgroup_hdl, axis_ref, axis_type, begin, bounds, bounds_name, comment, convert_from_factor  & 
     57      , data_begin, data_index, data_n, dim_name, formula, formula_bounds, formula_term, formula_term_bounds  & 
     58      , group_ref, index, label, long_name, mask, n, n_distributed_partition, n_glo, name, positive  & 
     59      , prec, standard_name, unit, value ) 
    5960 
    6061  END SUBROUTINE xios(set_axisgroup_attr) 
    6162 
    6263  SUBROUTINE xios(set_axisgroup_attr_hdl)  & 
    63     ( axisgroup_hdl, axis_ref, axis_type, begin, bounds, bounds_name, comment, data_begin, data_index  & 
    64     , data_n, dim_name, formula, formula_bounds, formula_term, formula_term_bounds, group_ref, index  & 
    65     , label, long_name, mask, n, n_distributed_partition, n_glo, name, positive, prec, standard_name  & 
    66     , unit, value ) 
     64    ( axisgroup_hdl, axis_ref, axis_type, begin, bounds, bounds_name, comment, convert_from_factor  & 
     65    , data_begin, data_index, data_n, dim_name, formula, formula_bounds, formula_term, formula_term_bounds  & 
     66    , group_ref, index, label, long_name, mask, n, n_distributed_partition, n_glo, name, positive  & 
     67    , prec, standard_name, unit, value ) 
    6768 
    6869    IMPLICIT NONE 
     
    7475      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: bounds_name 
    7576      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: comment 
     77      REAL (KIND=8) , OPTIONAL, INTENT(IN) :: convert_from_factor 
    7678      INTEGER  , OPTIONAL, INTENT(IN) :: data_begin 
    7779      INTEGER  , OPTIONAL, INTENT(IN) :: data_index(:) 
     
    99101 
    100102      CALL xios(set_axisgroup_attr_hdl_)  & 
    101       ( axisgroup_hdl, axis_ref, axis_type, begin, bounds, bounds_name, comment, data_begin, data_index  & 
    102       , data_n, dim_name, formula, formula_bounds, formula_term, formula_term_bounds, group_ref, index  & 
    103       , label, long_name, mask, n, n_distributed_partition, n_glo, name, positive, prec, standard_name  & 
    104       , unit, value ) 
     103      ( axisgroup_hdl, axis_ref, axis_type, begin, bounds, bounds_name, comment, convert_from_factor  & 
     104      , data_begin, data_index, data_n, dim_name, formula, formula_bounds, formula_term, formula_term_bounds  & 
     105      , group_ref, index, label, long_name, mask, n, n_distributed_partition, n_glo, name, positive  & 
     106      , prec, standard_name, unit, value ) 
    105107 
    106108  END SUBROUTINE xios(set_axisgroup_attr_hdl) 
    107109 
    108110  SUBROUTINE xios(set_axisgroup_attr_hdl_)   & 
    109     ( axisgroup_hdl, axis_ref_, axis_type_, begin_, bounds_, bounds_name_, comment_, data_begin_  & 
    110     , data_index_, data_n_, dim_name_, formula_, formula_bounds_, formula_term_, formula_term_bounds_  & 
     111    ( axisgroup_hdl, axis_ref_, axis_type_, begin_, bounds_, bounds_name_, comment_, convert_from_factor_  & 
     112    , data_begin_, data_index_, data_n_, dim_name_, formula_, formula_bounds_, formula_term_, formula_term_bounds_  & 
    111113    , group_ref_, index_, label_, long_name_, mask_, n_, n_distributed_partition_, n_glo_, name_  & 
    112114    , positive_, prec_, standard_name_, unit_, value_ ) 
     
    120122      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: bounds_name_ 
    121123      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: comment_ 
     124      REAL (KIND=8) , OPTIONAL, INTENT(IN) :: convert_from_factor_ 
    122125      INTEGER  , OPTIONAL, INTENT(IN) :: data_begin_ 
    123126      INTEGER  , OPTIONAL, INTENT(IN) :: data_index_(:) 
     
    174177      ENDIF 
    175178 
     179      IF (PRESENT(convert_from_factor_)) THEN 
     180        CALL cxios_set_axisgroup_convert_from_factor & 
     181      (axisgroup_hdl%daddr, convert_from_factor_) 
     182      ENDIF 
     183 
    176184      IF (PRESENT(data_begin_)) THEN 
    177185        CALL cxios_set_axisgroup_data_begin & 
     
    289297 
    290298  SUBROUTINE xios(get_axisgroup_attr)  & 
    291     ( axisgroup_id, axis_ref, axis_type, begin, bounds, bounds_name, comment, data_begin, data_index  & 
    292     , data_n, dim_name, formula, formula_bounds, formula_term, formula_term_bounds, group_ref, index  & 
    293     , label, long_name, mask, n, n_distributed_partition, n_glo, name, positive, prec, standard_name  & 
    294     , unit, value ) 
     299    ( axisgroup_id, axis_ref, axis_type, begin, bounds, bounds_name, comment, convert_from_factor  & 
     300    , data_begin, data_index, data_n, dim_name, formula, formula_bounds, formula_term, formula_term_bounds  & 
     301    , group_ref, index, label, long_name, mask, n, n_distributed_partition, n_glo, name, positive  & 
     302    , prec, standard_name, unit, value ) 
    295303 
    296304    IMPLICIT NONE 
     
    303311      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: bounds_name 
    304312      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: comment 
     313      REAL (KIND=8) , OPTIONAL, INTENT(OUT) :: convert_from_factor 
    305314      INTEGER  , OPTIONAL, INTENT(OUT) :: data_begin 
    306315      INTEGER  , OPTIONAL, INTENT(OUT) :: data_index(:) 
     
    330339      (axisgroup_id,axisgroup_hdl) 
    331340      CALL xios(get_axisgroup_attr_hdl_)   & 
    332       ( axisgroup_hdl, axis_ref, axis_type, begin, bounds, bounds_name, comment, data_begin, data_index  & 
    333       , data_n, dim_name, formula, formula_bounds, formula_term, formula_term_bounds, group_ref, index  & 
    334       , label, long_name, mask, n, n_distributed_partition, n_glo, name, positive, prec, standard_name  & 
    335       , unit, value ) 
     341      ( axisgroup_hdl, axis_ref, axis_type, begin, bounds, bounds_name, comment, convert_from_factor  & 
     342      , data_begin, data_index, data_n, dim_name, formula, formula_bounds, formula_term, formula_term_bounds  & 
     343      , group_ref, index, label, long_name, mask, n, n_distributed_partition, n_glo, name, positive  & 
     344      , prec, standard_name, unit, value ) 
    336345 
    337346  END SUBROUTINE xios(get_axisgroup_attr) 
    338347 
    339348  SUBROUTINE xios(get_axisgroup_attr_hdl)  & 
    340     ( axisgroup_hdl, axis_ref, axis_type, begin, bounds, bounds_name, comment, data_begin, data_index  & 
    341     , data_n, dim_name, formula, formula_bounds, formula_term, formula_term_bounds, group_ref, index  & 
    342     , label, long_name, mask, n, n_distributed_partition, n_glo, name, positive, prec, standard_name  & 
    343     , unit, value ) 
     349    ( axisgroup_hdl, axis_ref, axis_type, begin, bounds, bounds_name, comment, convert_from_factor  & 
     350    , data_begin, data_index, data_n, dim_name, formula, formula_bounds, formula_term, formula_term_bounds  & 
     351    , group_ref, index, label, long_name, mask, n, n_distributed_partition, n_glo, name, positive  & 
     352    , prec, standard_name, unit, value ) 
    344353 
    345354    IMPLICIT NONE 
     
    351360      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: bounds_name 
    352361      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: comment 
     362      REAL (KIND=8) , OPTIONAL, INTENT(OUT) :: convert_from_factor 
    353363      INTEGER  , OPTIONAL, INTENT(OUT) :: data_begin 
    354364      INTEGER  , OPTIONAL, INTENT(OUT) :: data_index(:) 
     
    376386 
    377387      CALL xios(get_axisgroup_attr_hdl_)  & 
    378       ( axisgroup_hdl, axis_ref, axis_type, begin, bounds, bounds_name, comment, data_begin, data_index  & 
    379       , data_n, dim_name, formula, formula_bounds, formula_term, formula_term_bounds, group_ref, index  & 
    380       , label, long_name, mask, n, n_distributed_partition, n_glo, name, positive, prec, standard_name  & 
    381       , unit, value ) 
     388      ( axisgroup_hdl, axis_ref, axis_type, begin, bounds, bounds_name, comment, convert_from_factor  & 
     389      , data_begin, data_index, data_n, dim_name, formula, formula_bounds, formula_term, formula_term_bounds  & 
     390      , group_ref, index, label, long_name, mask, n, n_distributed_partition, n_glo, name, positive  & 
     391      , prec, standard_name, unit, value ) 
    382392 
    383393  END SUBROUTINE xios(get_axisgroup_attr_hdl) 
    384394 
    385395  SUBROUTINE xios(get_axisgroup_attr_hdl_)   & 
    386     ( axisgroup_hdl, axis_ref_, axis_type_, begin_, bounds_, bounds_name_, comment_, data_begin_  & 
    387     , data_index_, data_n_, dim_name_, formula_, formula_bounds_, formula_term_, formula_term_bounds_  & 
     396    ( axisgroup_hdl, axis_ref_, axis_type_, begin_, bounds_, bounds_name_, comment_, convert_from_factor_  & 
     397    , data_begin_, data_index_, data_n_, dim_name_, formula_, formula_bounds_, formula_term_, formula_term_bounds_  & 
    388398    , group_ref_, index_, label_, long_name_, mask_, n_, n_distributed_partition_, n_glo_, name_  & 
    389399    , positive_, prec_, standard_name_, unit_, value_ ) 
     
    397407      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: bounds_name_ 
    398408      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: comment_ 
     409      REAL (KIND=8) , OPTIONAL, INTENT(OUT) :: convert_from_factor_ 
    399410      INTEGER  , OPTIONAL, INTENT(OUT) :: data_begin_ 
    400411      INTEGER  , OPTIONAL, INTENT(OUT) :: data_index_(:) 
     
    451462      ENDIF 
    452463 
     464      IF (PRESENT(convert_from_factor_)) THEN 
     465        CALL cxios_get_axisgroup_convert_from_factor & 
     466      (axisgroup_hdl%daddr, convert_from_factor_) 
     467      ENDIF 
     468 
    453469      IF (PRESENT(data_begin_)) THEN 
    454470        CALL cxios_get_axisgroup_data_begin & 
     
    566582 
    567583  SUBROUTINE xios(is_defined_axisgroup_attr)  & 
    568     ( axisgroup_id, axis_ref, axis_type, begin, bounds, bounds_name, comment, data_begin, data_index  & 
    569     , data_n, dim_name, formula, formula_bounds, formula_term, formula_term_bounds, group_ref, index  & 
    570     , label, long_name, mask, n, n_distributed_partition, n_glo, name, positive, prec, standard_name  & 
    571     , unit, value ) 
     584    ( axisgroup_id, axis_ref, axis_type, begin, bounds, bounds_name, comment, convert_from_factor  & 
     585    , data_begin, data_index, data_n, dim_name, formula, formula_bounds, formula_term, formula_term_bounds  & 
     586    , group_ref, index, label, long_name, mask, n, n_distributed_partition, n_glo, name, positive  & 
     587    , prec, standard_name, unit, value ) 
    572588 
    573589    IMPLICIT NONE 
     
    586602      LOGICAL, OPTIONAL, INTENT(OUT) :: comment 
    587603      LOGICAL(KIND=C_BOOL) :: comment_tmp 
     604      LOGICAL, OPTIONAL, INTENT(OUT) :: convert_from_factor 
     605      LOGICAL(KIND=C_BOOL) :: convert_from_factor_tmp 
    588606      LOGICAL, OPTIONAL, INTENT(OUT) :: data_begin 
    589607      LOGICAL(KIND=C_BOOL) :: data_begin_tmp 
     
    634652      (axisgroup_id,axisgroup_hdl) 
    635653      CALL xios(is_defined_axisgroup_attr_hdl_)   & 
    636       ( axisgroup_hdl, axis_ref, axis_type, begin, bounds, bounds_name, comment, data_begin, data_index  & 
    637       , data_n, dim_name, formula, formula_bounds, formula_term, formula_term_bounds, group_ref, index  & 
    638       , label, long_name, mask, n, n_distributed_partition, n_glo, name, positive, prec, standard_name  & 
    639       , unit, value ) 
     654      ( axisgroup_hdl, axis_ref, axis_type, begin, bounds, bounds_name, comment, convert_from_factor  & 
     655      , data_begin, data_index, data_n, dim_name, formula, formula_bounds, formula_term, formula_term_bounds  & 
     656      , group_ref, index, label, long_name, mask, n, n_distributed_partition, n_glo, name, positive  & 
     657      , prec, standard_name, unit, value ) 
    640658 
    641659  END SUBROUTINE xios(is_defined_axisgroup_attr) 
    642660 
    643661  SUBROUTINE xios(is_defined_axisgroup_attr_hdl)  & 
    644     ( axisgroup_hdl, axis_ref, axis_type, begin, bounds, bounds_name, comment, data_begin, data_index  & 
    645     , data_n, dim_name, formula, formula_bounds, formula_term, formula_term_bounds, group_ref, index  & 
    646     , label, long_name, mask, n, n_distributed_partition, n_glo, name, positive, prec, standard_name  & 
    647     , unit, value ) 
     662    ( axisgroup_hdl, axis_ref, axis_type, begin, bounds, bounds_name, comment, convert_from_factor  & 
     663    , data_begin, data_index, data_n, dim_name, formula, formula_bounds, formula_term, formula_term_bounds  & 
     664    , group_ref, index, label, long_name, mask, n, n_distributed_partition, n_glo, name, positive  & 
     665    , prec, standard_name, unit, value ) 
    648666 
    649667    IMPLICIT NONE 
     
    661679      LOGICAL, OPTIONAL, INTENT(OUT) :: comment 
    662680      LOGICAL(KIND=C_BOOL) :: comment_tmp 
     681      LOGICAL, OPTIONAL, INTENT(OUT) :: convert_from_factor 
     682      LOGICAL(KIND=C_BOOL) :: convert_from_factor_tmp 
    663683      LOGICAL, OPTIONAL, INTENT(OUT) :: data_begin 
    664684      LOGICAL(KIND=C_BOOL) :: data_begin_tmp 
     
    707727 
    708728      CALL xios(is_defined_axisgroup_attr_hdl_)  & 
    709       ( axisgroup_hdl, axis_ref, axis_type, begin, bounds, bounds_name, comment, data_begin, data_index  & 
    710       , data_n, dim_name, formula, formula_bounds, formula_term, formula_term_bounds, group_ref, index  & 
    711       , label, long_name, mask, n, n_distributed_partition, n_glo, name, positive, prec, standard_name  & 
    712       , unit, value ) 
     729      ( axisgroup_hdl, axis_ref, axis_type, begin, bounds, bounds_name, comment, convert_from_factor  & 
     730      , data_begin, data_index, data_n, dim_name, formula, formula_bounds, formula_term, formula_term_bounds  & 
     731      , group_ref, index, label, long_name, mask, n, n_distributed_partition, n_glo, name, positive  & 
     732      , prec, standard_name, unit, value ) 
    713733 
    714734  END SUBROUTINE xios(is_defined_axisgroup_attr_hdl) 
    715735 
    716736  SUBROUTINE xios(is_defined_axisgroup_attr_hdl_)   & 
    717     ( axisgroup_hdl, axis_ref_, axis_type_, begin_, bounds_, bounds_name_, comment_, data_begin_  & 
    718     , data_index_, data_n_, dim_name_, formula_, formula_bounds_, formula_term_, formula_term_bounds_  & 
     737    ( axisgroup_hdl, axis_ref_, axis_type_, begin_, bounds_, bounds_name_, comment_, convert_from_factor_  & 
     738    , data_begin_, data_index_, data_n_, dim_name_, formula_, formula_bounds_, formula_term_, formula_term_bounds_  & 
    719739    , group_ref_, index_, label_, long_name_, mask_, n_, n_distributed_partition_, n_glo_, name_  & 
    720740    , positive_, prec_, standard_name_, unit_, value_ ) 
     
    734754      LOGICAL, OPTIONAL, INTENT(OUT) :: comment_ 
    735755      LOGICAL(KIND=C_BOOL) :: comment__tmp 
     756      LOGICAL, OPTIONAL, INTENT(OUT) :: convert_from_factor_ 
     757      LOGICAL(KIND=C_BOOL) :: convert_from_factor__tmp 
    736758      LOGICAL, OPTIONAL, INTENT(OUT) :: data_begin_ 
    737759      LOGICAL(KIND=C_BOOL) :: data_begin__tmp 
     
    815837      ENDIF 
    816838 
     839      IF (PRESENT(convert_from_factor_)) THEN 
     840        convert_from_factor__tmp = cxios_is_defined_axisgroup_convert_from_factor & 
     841      (axisgroup_hdl%daddr) 
     842        convert_from_factor_ = convert_from_factor__tmp 
     843      ENDIF 
     844 
    817845      IF (PRESENT(data_begin_)) THEN 
    818846        data_begin__tmp = cxios_is_defined_axisgroup_data_begin & 
  • XIOS2/trunk/src/interface/fortran_attr/idomain_attr.F90

    r2131 r2618  
    1717    , latvalue_2d, lon_name, long_name, lonvalue_1d, lonvalue_2d, mask_1d, mask_2d, name, ni, ni_glo  & 
    1818    , nj, nj_glo, ntiles, nvertex, prec, radius, standard_name, tile_data_ibegin, tile_data_jbegin  & 
    19     , tile_data_ni, tile_data_nj, tile_ibegin, tile_jbegin, tile_ni, tile_nj, type ) 
     19    , tile_data_ni, tile_data_nj, tile_ibegin, tile_jbegin, tile_ni, tile_nj, tile_only, type ) 
    2020 
    2121    IMPLICIT NONE 
     
    7373      INTEGER  , OPTIONAL, INTENT(IN) :: tile_ni(:) 
    7474      INTEGER  , OPTIONAL, INTENT(IN) :: tile_nj(:) 
     75      LOGICAL  , OPTIONAL, INTENT(IN) :: tile_only 
     76      LOGICAL (KIND=C_BOOL) :: tile_only_tmp 
    7577      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: type 
    7678 
     
    8385      , latvalue_2d, lon_name, long_name, lonvalue_1d, lonvalue_2d, mask_1d, mask_2d, name, ni, ni_glo  & 
    8486      , nj, nj_glo, ntiles, nvertex, prec, radius, standard_name, tile_data_ibegin, tile_data_jbegin  & 
    85       , tile_data_ni, tile_data_nj, tile_ibegin, tile_jbegin, tile_ni, tile_nj, type ) 
     87      , tile_data_ni, tile_data_nj, tile_ibegin, tile_jbegin, tile_ni, tile_nj, tile_only, type ) 
    8688 
    8789  END SUBROUTINE xios(set_domain_attr) 
     
    9395    , latvalue_2d, lon_name, long_name, lonvalue_1d, lonvalue_2d, mask_1d, mask_2d, name, ni, ni_glo  & 
    9496    , nj, nj_glo, ntiles, nvertex, prec, radius, standard_name, tile_data_ibegin, tile_data_jbegin  & 
    95     , tile_data_ni, tile_data_nj, tile_ibegin, tile_jbegin, tile_ni, tile_nj, type ) 
     97    , tile_data_ni, tile_data_nj, tile_ibegin, tile_jbegin, tile_ni, tile_nj, tile_only, type ) 
    9698 
    9799    IMPLICIT NONE 
     
    148150      INTEGER  , OPTIONAL, INTENT(IN) :: tile_ni(:) 
    149151      INTEGER  , OPTIONAL, INTENT(IN) :: tile_nj(:) 
     152      LOGICAL  , OPTIONAL, INTENT(IN) :: tile_only 
     153      LOGICAL (KIND=C_BOOL) :: tile_only_tmp 
    150154      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: type 
    151155 
     
    156160      , latvalue_2d, lon_name, long_name, lonvalue_1d, lonvalue_2d, mask_1d, mask_2d, name, ni, ni_glo  & 
    157161      , nj, nj_glo, ntiles, nvertex, prec, radius, standard_name, tile_data_ibegin, tile_data_jbegin  & 
    158       , tile_data_ni, tile_data_nj, tile_ibegin, tile_jbegin, tile_ni, tile_nj, type ) 
     162      , tile_data_ni, tile_data_nj, tile_ibegin, tile_jbegin, tile_ni, tile_nj, tile_only, type ) 
    159163 
    160164  END SUBROUTINE xios(set_domain_attr_hdl) 
     
    167171    , mask_2d_, name_, ni_, ni_glo_, nj_, nj_glo_, ntiles_, nvertex_, prec_, radius_, standard_name_  & 
    168172    , tile_data_ibegin_, tile_data_jbegin_, tile_data_ni_, tile_data_nj_, tile_ibegin_, tile_jbegin_  & 
    169     , tile_ni_, tile_nj_, type_ ) 
     173    , tile_ni_, tile_nj_, tile_only_, type_ ) 
    170174 
    171175    IMPLICIT NONE 
     
    222226      INTEGER  , OPTIONAL, INTENT(IN) :: tile_ni_(:) 
    223227      INTEGER  , OPTIONAL, INTENT(IN) :: tile_nj_(:) 
     228      LOGICAL  , OPTIONAL, INTENT(IN) :: tile_only_ 
     229      LOGICAL (KIND=C_BOOL) :: tile_only__tmp 
    224230      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: type_ 
    225231 
     
    471477        CALL cxios_set_domain_tile_nj & 
    472478      (domain_hdl%daddr, tile_nj_, SHAPE(tile_nj_)) 
     479      ENDIF 
     480 
     481      IF (PRESENT(tile_only_)) THEN 
     482        tile_only__tmp = tile_only_ 
     483        CALL cxios_set_domain_tile_only & 
     484      (domain_hdl%daddr, tile_only__tmp) 
    473485      ENDIF 
    474486 
     
    486498    , latvalue_2d, lon_name, long_name, lonvalue_1d, lonvalue_2d, mask_1d, mask_2d, name, ni, ni_glo  & 
    487499    , nj, nj_glo, ntiles, nvertex, prec, radius, standard_name, tile_data_ibegin, tile_data_jbegin  & 
    488     , tile_data_ni, tile_data_nj, tile_ibegin, tile_jbegin, tile_ni, tile_nj, type ) 
     500    , tile_data_ni, tile_data_nj, tile_ibegin, tile_jbegin, tile_ni, tile_nj, tile_only, type ) 
    489501 
    490502    IMPLICIT NONE 
     
    542554      INTEGER  , OPTIONAL, INTENT(OUT) :: tile_ni(:) 
    543555      INTEGER  , OPTIONAL, INTENT(OUT) :: tile_nj(:) 
     556      LOGICAL  , OPTIONAL, INTENT(OUT) :: tile_only 
     557      LOGICAL (KIND=C_BOOL) :: tile_only_tmp 
    544558      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: type 
    545559 
     
    552566      , latvalue_2d, lon_name, long_name, lonvalue_1d, lonvalue_2d, mask_1d, mask_2d, name, ni, ni_glo  & 
    553567      , nj, nj_glo, ntiles, nvertex, prec, radius, standard_name, tile_data_ibegin, tile_data_jbegin  & 
    554       , tile_data_ni, tile_data_nj, tile_ibegin, tile_jbegin, tile_ni, tile_nj, type ) 
     568      , tile_data_ni, tile_data_nj, tile_ibegin, tile_jbegin, tile_ni, tile_nj, tile_only, type ) 
    555569 
    556570  END SUBROUTINE xios(get_domain_attr) 
     
    562576    , latvalue_2d, lon_name, long_name, lonvalue_1d, lonvalue_2d, mask_1d, mask_2d, name, ni, ni_glo  & 
    563577    , nj, nj_glo, ntiles, nvertex, prec, radius, standard_name, tile_data_ibegin, tile_data_jbegin  & 
    564     , tile_data_ni, tile_data_nj, tile_ibegin, tile_jbegin, tile_ni, tile_nj, type ) 
     578    , tile_data_ni, tile_data_nj, tile_ibegin, tile_jbegin, tile_ni, tile_nj, tile_only, type ) 
    565579 
    566580    IMPLICIT NONE 
     
    617631      INTEGER  , OPTIONAL, INTENT(OUT) :: tile_ni(:) 
    618632      INTEGER  , OPTIONAL, INTENT(OUT) :: tile_nj(:) 
     633      LOGICAL  , OPTIONAL, INTENT(OUT) :: tile_only 
     634      LOGICAL (KIND=C_BOOL) :: tile_only_tmp 
    619635      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: type 
    620636 
     
    625641      , latvalue_2d, lon_name, long_name, lonvalue_1d, lonvalue_2d, mask_1d, mask_2d, name, ni, ni_glo  & 
    626642      , nj, nj_glo, ntiles, nvertex, prec, radius, standard_name, tile_data_ibegin, tile_data_jbegin  & 
    627       , tile_data_ni, tile_data_nj, tile_ibegin, tile_jbegin, tile_ni, tile_nj, type ) 
     643      , tile_data_ni, tile_data_nj, tile_ibegin, tile_jbegin, tile_ni, tile_nj, tile_only, type ) 
    628644 
    629645  END SUBROUTINE xios(get_domain_attr_hdl) 
     
    636652    , mask_2d_, name_, ni_, ni_glo_, nj_, nj_glo_, ntiles_, nvertex_, prec_, radius_, standard_name_  & 
    637653    , tile_data_ibegin_, tile_data_jbegin_, tile_data_ni_, tile_data_nj_, tile_ibegin_, tile_jbegin_  & 
    638     , tile_ni_, tile_nj_, type_ ) 
     654    , tile_ni_, tile_nj_, tile_only_, type_ ) 
    639655 
    640656    IMPLICIT NONE 
     
    691707      INTEGER  , OPTIONAL, INTENT(OUT) :: tile_ni_(:) 
    692708      INTEGER  , OPTIONAL, INTENT(OUT) :: tile_nj_(:) 
     709      LOGICAL  , OPTIONAL, INTENT(OUT) :: tile_only_ 
     710      LOGICAL (KIND=C_BOOL) :: tile_only__tmp 
    693711      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: type_ 
    694712 
     
    940958        CALL cxios_get_domain_tile_nj & 
    941959      (domain_hdl%daddr, tile_nj_, SHAPE(tile_nj_)) 
     960      ENDIF 
     961 
     962      IF (PRESENT(tile_only_)) THEN 
     963        CALL cxios_get_domain_tile_only & 
     964      (domain_hdl%daddr, tile_only__tmp) 
     965        tile_only_ = tile_only__tmp 
    942966      ENDIF 
    943967 
     
    955979    , latvalue_2d, lon_name, long_name, lonvalue_1d, lonvalue_2d, mask_1d, mask_2d, name, ni, ni_glo  & 
    956980    , nj, nj_glo, ntiles, nvertex, prec, radius, standard_name, tile_data_ibegin, tile_data_jbegin  & 
    957     , tile_data_ni, tile_data_nj, tile_ibegin, tile_jbegin, tile_ni, tile_nj, type ) 
     981    , tile_data_ni, tile_data_nj, tile_ibegin, tile_jbegin, tile_ni, tile_nj, tile_only, type ) 
    958982 
    959983    IMPLICIT NONE 
     
    10581082      LOGICAL, OPTIONAL, INTENT(OUT) :: tile_nj 
    10591083      LOGICAL(KIND=C_BOOL) :: tile_nj_tmp 
     1084      LOGICAL, OPTIONAL, INTENT(OUT) :: tile_only 
     1085      LOGICAL(KIND=C_BOOL) :: tile_only_tmp 
    10601086      LOGICAL, OPTIONAL, INTENT(OUT) :: type 
    10611087      LOGICAL(KIND=C_BOOL) :: type_tmp 
     
    10691095      , latvalue_2d, lon_name, long_name, lonvalue_1d, lonvalue_2d, mask_1d, mask_2d, name, ni, ni_glo  & 
    10701096      , nj, nj_glo, ntiles, nvertex, prec, radius, standard_name, tile_data_ibegin, tile_data_jbegin  & 
    1071       , tile_data_ni, tile_data_nj, tile_ibegin, tile_jbegin, tile_ni, tile_nj, type ) 
     1097      , tile_data_ni, tile_data_nj, tile_ibegin, tile_jbegin, tile_ni, tile_nj, tile_only, type ) 
    10721098 
    10731099  END SUBROUTINE xios(is_defined_domain_attr) 
     
    10791105    , latvalue_2d, lon_name, long_name, lonvalue_1d, lonvalue_2d, mask_1d, mask_2d, name, ni, ni_glo  & 
    10801106    , nj, nj_glo, ntiles, nvertex, prec, radius, standard_name, tile_data_ibegin, tile_data_jbegin  & 
    1081     , tile_data_ni, tile_data_nj, tile_ibegin, tile_jbegin, tile_ni, tile_nj, type ) 
     1107    , tile_data_ni, tile_data_nj, tile_ibegin, tile_jbegin, tile_ni, tile_nj, tile_only, type ) 
    10821108 
    10831109    IMPLICIT NONE 
     
    11811207      LOGICAL, OPTIONAL, INTENT(OUT) :: tile_nj 
    11821208      LOGICAL(KIND=C_BOOL) :: tile_nj_tmp 
     1209      LOGICAL, OPTIONAL, INTENT(OUT) :: tile_only 
     1210      LOGICAL(KIND=C_BOOL) :: tile_only_tmp 
    11831211      LOGICAL, OPTIONAL, INTENT(OUT) :: type 
    11841212      LOGICAL(KIND=C_BOOL) :: type_tmp 
     
    11901218      , latvalue_2d, lon_name, long_name, lonvalue_1d, lonvalue_2d, mask_1d, mask_2d, name, ni, ni_glo  & 
    11911219      , nj, nj_glo, ntiles, nvertex, prec, radius, standard_name, tile_data_ibegin, tile_data_jbegin  & 
    1192       , tile_data_ni, tile_data_nj, tile_ibegin, tile_jbegin, tile_ni, tile_nj, type ) 
     1220      , tile_data_ni, tile_data_nj, tile_ibegin, tile_jbegin, tile_ni, tile_nj, tile_only, type ) 
    11931221 
    11941222  END SUBROUTINE xios(is_defined_domain_attr_hdl) 
     
    12011229    , mask_2d_, name_, ni_, ni_glo_, nj_, nj_glo_, ntiles_, nvertex_, prec_, radius_, standard_name_  & 
    12021230    , tile_data_ibegin_, tile_data_jbegin_, tile_data_ni_, tile_data_nj_, tile_ibegin_, tile_jbegin_  & 
    1203     , tile_ni_, tile_nj_, type_ ) 
     1231    , tile_ni_, tile_nj_, tile_only_, type_ ) 
    12041232 
    12051233    IMPLICIT NONE 
     
    13031331      LOGICAL, OPTIONAL, INTENT(OUT) :: tile_nj_ 
    13041332      LOGICAL(KIND=C_BOOL) :: tile_nj__tmp 
     1333      LOGICAL, OPTIONAL, INTENT(OUT) :: tile_only_ 
     1334      LOGICAL(KIND=C_BOOL) :: tile_only__tmp 
    13051335      LOGICAL, OPTIONAL, INTENT(OUT) :: type_ 
    13061336      LOGICAL(KIND=C_BOOL) :: type__tmp 
     
    16001630      ENDIF 
    16011631 
     1632      IF (PRESENT(tile_only_)) THEN 
     1633        tile_only__tmp = cxios_is_defined_domain_tile_only & 
     1634      (domain_hdl%daddr) 
     1635        tile_only_ = tile_only__tmp 
     1636      ENDIF 
     1637 
    16021638      IF (PRESENT(type_)) THEN 
    16031639        type__tmp = cxios_is_defined_domain_type & 
  • XIOS2/trunk/src/interface/fortran_attr/idomaingroup_attr.F90

    r2131 r2618  
    1717    , latvalue_1d, latvalue_2d, lon_name, long_name, lonvalue_1d, lonvalue_2d, mask_1d, mask_2d  & 
    1818    , name, ni, ni_glo, nj, nj_glo, ntiles, nvertex, prec, radius, standard_name, tile_data_ibegin  & 
    19     , tile_data_jbegin, tile_data_ni, tile_data_nj, tile_ibegin, tile_jbegin, tile_ni, tile_nj, type  & 
    20     ) 
     19    , tile_data_jbegin, tile_data_ni, tile_data_nj, tile_ibegin, tile_jbegin, tile_ni, tile_nj, tile_only  & 
     20    , type ) 
    2121 
    2222    IMPLICIT NONE 
     
    7575      INTEGER  , OPTIONAL, INTENT(IN) :: tile_ni(:) 
    7676      INTEGER  , OPTIONAL, INTENT(IN) :: tile_nj(:) 
     77      LOGICAL  , OPTIONAL, INTENT(IN) :: tile_only 
     78      LOGICAL (KIND=C_BOOL) :: tile_only_tmp 
    7779      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: type 
    7880 
     
    8587      , latvalue_1d, latvalue_2d, lon_name, long_name, lonvalue_1d, lonvalue_2d, mask_1d, mask_2d  & 
    8688      , name, ni, ni_glo, nj, nj_glo, ntiles, nvertex, prec, radius, standard_name, tile_data_ibegin  & 
    87       , tile_data_jbegin, tile_data_ni, tile_data_nj, tile_ibegin, tile_jbegin, tile_ni, tile_nj, type  & 
    88       ) 
     89      , tile_data_jbegin, tile_data_ni, tile_data_nj, tile_ibegin, tile_jbegin, tile_ni, tile_nj, tile_only  & 
     90      , type ) 
    8991 
    9092  END SUBROUTINE xios(set_domaingroup_attr) 
     
    9698    , latvalue_1d, latvalue_2d, lon_name, long_name, lonvalue_1d, lonvalue_2d, mask_1d, mask_2d  & 
    9799    , name, ni, ni_glo, nj, nj_glo, ntiles, nvertex, prec, radius, standard_name, tile_data_ibegin  & 
    98     , tile_data_jbegin, tile_data_ni, tile_data_nj, tile_ibegin, tile_jbegin, tile_ni, tile_nj, type  & 
    99     ) 
     100    , tile_data_jbegin, tile_data_ni, tile_data_nj, tile_ibegin, tile_jbegin, tile_ni, tile_nj, tile_only  & 
     101    , type ) 
    100102 
    101103    IMPLICIT NONE 
     
    153155      INTEGER  , OPTIONAL, INTENT(IN) :: tile_ni(:) 
    154156      INTEGER  , OPTIONAL, INTENT(IN) :: tile_nj(:) 
     157      LOGICAL  , OPTIONAL, INTENT(IN) :: tile_only 
     158      LOGICAL (KIND=C_BOOL) :: tile_only_tmp 
    155159      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: type 
    156160 
     
    161165      , latvalue_1d, latvalue_2d, lon_name, long_name, lonvalue_1d, lonvalue_2d, mask_1d, mask_2d  & 
    162166      , name, ni, ni_glo, nj, nj_glo, ntiles, nvertex, prec, radius, standard_name, tile_data_ibegin  & 
    163       , tile_data_jbegin, tile_data_ni, tile_data_nj, tile_ibegin, tile_jbegin, tile_ni, tile_nj, type  & 
    164       ) 
     167      , tile_data_jbegin, tile_data_ni, tile_data_nj, tile_ibegin, tile_jbegin, tile_ni, tile_nj, tile_only  & 
     168      , type ) 
    165169 
    166170  END SUBROUTINE xios(set_domaingroup_attr_hdl) 
     
    173177    , mask_1d_, mask_2d_, name_, ni_, ni_glo_, nj_, nj_glo_, ntiles_, nvertex_, prec_, radius_, standard_name_  & 
    174178    , tile_data_ibegin_, tile_data_jbegin_, tile_data_ni_, tile_data_nj_, tile_ibegin_, tile_jbegin_  & 
    175     , tile_ni_, tile_nj_, type_ ) 
     179    , tile_ni_, tile_nj_, tile_only_, type_ ) 
    176180 
    177181    IMPLICIT NONE 
     
    229233      INTEGER  , OPTIONAL, INTENT(IN) :: tile_ni_(:) 
    230234      INTEGER  , OPTIONAL, INTENT(IN) :: tile_nj_(:) 
     235      LOGICAL  , OPTIONAL, INTENT(IN) :: tile_only_ 
     236      LOGICAL (KIND=C_BOOL) :: tile_only__tmp 
    231237      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: type_ 
    232238 
     
    483489        CALL cxios_set_domaingroup_tile_nj & 
    484490      (domaingroup_hdl%daddr, tile_nj_, SHAPE(tile_nj_)) 
     491      ENDIF 
     492 
     493      IF (PRESENT(tile_only_)) THEN 
     494        tile_only__tmp = tile_only_ 
     495        CALL cxios_set_domaingroup_tile_only & 
     496      (domaingroup_hdl%daddr, tile_only__tmp) 
    485497      ENDIF 
    486498 
     
    498510    , latvalue_1d, latvalue_2d, lon_name, long_name, lonvalue_1d, lonvalue_2d, mask_1d, mask_2d  & 
    499511    , name, ni, ni_glo, nj, nj_glo, ntiles, nvertex, prec, radius, standard_name, tile_data_ibegin  & 
    500     , tile_data_jbegin, tile_data_ni, tile_data_nj, tile_ibegin, tile_jbegin, tile_ni, tile_nj, type  & 
    501     ) 
     512    , tile_data_jbegin, tile_data_ni, tile_data_nj, tile_ibegin, tile_jbegin, tile_ni, tile_nj, tile_only  & 
     513    , type ) 
    502514 
    503515    IMPLICIT NONE 
     
    556568      INTEGER  , OPTIONAL, INTENT(OUT) :: tile_ni(:) 
    557569      INTEGER  , OPTIONAL, INTENT(OUT) :: tile_nj(:) 
     570      LOGICAL  , OPTIONAL, INTENT(OUT) :: tile_only 
     571      LOGICAL (KIND=C_BOOL) :: tile_only_tmp 
    558572      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: type 
    559573 
     
    566580      , latvalue_1d, latvalue_2d, lon_name, long_name, lonvalue_1d, lonvalue_2d, mask_1d, mask_2d  & 
    567581      , name, ni, ni_glo, nj, nj_glo, ntiles, nvertex, prec, radius, standard_name, tile_data_ibegin  & 
    568       , tile_data_jbegin, tile_data_ni, tile_data_nj, tile_ibegin, tile_jbegin, tile_ni, tile_nj, type  & 
    569       ) 
     582      , tile_data_jbegin, tile_data_ni, tile_data_nj, tile_ibegin, tile_jbegin, tile_ni, tile_nj, tile_only  & 
     583      , type ) 
    570584 
    571585  END SUBROUTINE xios(get_domaingroup_attr) 
     
    577591    , latvalue_1d, latvalue_2d, lon_name, long_name, lonvalue_1d, lonvalue_2d, mask_1d, mask_2d  & 
    578592    , name, ni, ni_glo, nj, nj_glo, ntiles, nvertex, prec, radius, standard_name, tile_data_ibegin  & 
    579     , tile_data_jbegin, tile_data_ni, tile_data_nj, tile_ibegin, tile_jbegin, tile_ni, tile_nj, type  & 
    580     ) 
     593    , tile_data_jbegin, tile_data_ni, tile_data_nj, tile_ibegin, tile_jbegin, tile_ni, tile_nj, tile_only  & 
     594    , type ) 
    581595 
    582596    IMPLICIT NONE 
     
    634648      INTEGER  , OPTIONAL, INTENT(OUT) :: tile_ni(:) 
    635649      INTEGER  , OPTIONAL, INTENT(OUT) :: tile_nj(:) 
     650      LOGICAL  , OPTIONAL, INTENT(OUT) :: tile_only 
     651      LOGICAL (KIND=C_BOOL) :: tile_only_tmp 
    636652      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: type 
    637653 
     
    642658      , latvalue_1d, latvalue_2d, lon_name, long_name, lonvalue_1d, lonvalue_2d, mask_1d, mask_2d  & 
    643659      , name, ni, ni_glo, nj, nj_glo, ntiles, nvertex, prec, radius, standard_name, tile_data_ibegin  & 
    644       , tile_data_jbegin, tile_data_ni, tile_data_nj, tile_ibegin, tile_jbegin, tile_ni, tile_nj, type  & 
    645       ) 
     660      , tile_data_jbegin, tile_data_ni, tile_data_nj, tile_ibegin, tile_jbegin, tile_ni, tile_nj, tile_only  & 
     661      , type ) 
    646662 
    647663  END SUBROUTINE xios(get_domaingroup_attr_hdl) 
     
    654670    , mask_1d_, mask_2d_, name_, ni_, ni_glo_, nj_, nj_glo_, ntiles_, nvertex_, prec_, radius_, standard_name_  & 
    655671    , tile_data_ibegin_, tile_data_jbegin_, tile_data_ni_, tile_data_nj_, tile_ibegin_, tile_jbegin_  & 
    656     , tile_ni_, tile_nj_, type_ ) 
     672    , tile_ni_, tile_nj_, tile_only_, type_ ) 
    657673 
    658674    IMPLICIT NONE 
     
    710726      INTEGER  , OPTIONAL, INTENT(OUT) :: tile_ni_(:) 
    711727      INTEGER  , OPTIONAL, INTENT(OUT) :: tile_nj_(:) 
     728      LOGICAL  , OPTIONAL, INTENT(OUT) :: tile_only_ 
     729      LOGICAL (KIND=C_BOOL) :: tile_only__tmp 
    712730      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: type_ 
    713731 
     
    964982        CALL cxios_get_domaingroup_tile_nj & 
    965983      (domaingroup_hdl%daddr, tile_nj_, SHAPE(tile_nj_)) 
     984      ENDIF 
     985 
     986      IF (PRESENT(tile_only_)) THEN 
     987        CALL cxios_get_domaingroup_tile_only & 
     988      (domaingroup_hdl%daddr, tile_only__tmp) 
     989        tile_only_ = tile_only__tmp 
    966990      ENDIF 
    967991 
     
    9791003    , latvalue_1d, latvalue_2d, lon_name, long_name, lonvalue_1d, lonvalue_2d, mask_1d, mask_2d  & 
    9801004    , name, ni, ni_glo, nj, nj_glo, ntiles, nvertex, prec, radius, standard_name, tile_data_ibegin  & 
    981     , tile_data_jbegin, tile_data_ni, tile_data_nj, tile_ibegin, tile_jbegin, tile_ni, tile_nj, type  & 
    982     ) 
     1005    , tile_data_jbegin, tile_data_ni, tile_data_nj, tile_ibegin, tile_jbegin, tile_ni, tile_nj, tile_only  & 
     1006    , type ) 
    9831007 
    9841008    IMPLICIT NONE 
     
    10851109      LOGICAL, OPTIONAL, INTENT(OUT) :: tile_nj 
    10861110      LOGICAL(KIND=C_BOOL) :: tile_nj_tmp 
     1111      LOGICAL, OPTIONAL, INTENT(OUT) :: tile_only 
     1112      LOGICAL(KIND=C_BOOL) :: tile_only_tmp 
    10871113      LOGICAL, OPTIONAL, INTENT(OUT) :: type 
    10881114      LOGICAL(KIND=C_BOOL) :: type_tmp 
     
    10961122      , latvalue_1d, latvalue_2d, lon_name, long_name, lonvalue_1d, lonvalue_2d, mask_1d, mask_2d  & 
    10971123      , name, ni, ni_glo, nj, nj_glo, ntiles, nvertex, prec, radius, standard_name, tile_data_ibegin  & 
    1098       , tile_data_jbegin, tile_data_ni, tile_data_nj, tile_ibegin, tile_jbegin, tile_ni, tile_nj, type  & 
    1099       ) 
     1124      , tile_data_jbegin, tile_data_ni, tile_data_nj, tile_ibegin, tile_jbegin, tile_ni, tile_nj, tile_only  & 
     1125      , type ) 
    11001126 
    11011127  END SUBROUTINE xios(is_defined_domaingroup_attr) 
     
    11071133    , latvalue_1d, latvalue_2d, lon_name, long_name, lonvalue_1d, lonvalue_2d, mask_1d, mask_2d  & 
    11081134    , name, ni, ni_glo, nj, nj_glo, ntiles, nvertex, prec, radius, standard_name, tile_data_ibegin  & 
    1109     , tile_data_jbegin, tile_data_ni, tile_data_nj, tile_ibegin, tile_jbegin, tile_ni, tile_nj, type  & 
    1110     ) 
     1135    , tile_data_jbegin, tile_data_ni, tile_data_nj, tile_ibegin, tile_jbegin, tile_ni, tile_nj, tile_only  & 
     1136    , type ) 
    11111137 
    11121138    IMPLICIT NONE 
     
    12121238      LOGICAL, OPTIONAL, INTENT(OUT) :: tile_nj 
    12131239      LOGICAL(KIND=C_BOOL) :: tile_nj_tmp 
     1240      LOGICAL, OPTIONAL, INTENT(OUT) :: tile_only 
     1241      LOGICAL(KIND=C_BOOL) :: tile_only_tmp 
    12141242      LOGICAL, OPTIONAL, INTENT(OUT) :: type 
    12151243      LOGICAL(KIND=C_BOOL) :: type_tmp 
     
    12211249      , latvalue_1d, latvalue_2d, lon_name, long_name, lonvalue_1d, lonvalue_2d, mask_1d, mask_2d  & 
    12221250      , name, ni, ni_glo, nj, nj_glo, ntiles, nvertex, prec, radius, standard_name, tile_data_ibegin  & 
    1223       , tile_data_jbegin, tile_data_ni, tile_data_nj, tile_ibegin, tile_jbegin, tile_ni, tile_nj, type  & 
    1224       ) 
     1251      , tile_data_jbegin, tile_data_ni, tile_data_nj, tile_ibegin, tile_jbegin, tile_ni, tile_nj, tile_only  & 
     1252      , type ) 
    12251253 
    12261254  END SUBROUTINE xios(is_defined_domaingroup_attr_hdl) 
     
    12331261    , mask_1d_, mask_2d_, name_, ni_, ni_glo_, nj_, nj_glo_, ntiles_, nvertex_, prec_, radius_, standard_name_  & 
    12341262    , tile_data_ibegin_, tile_data_jbegin_, tile_data_ni_, tile_data_nj_, tile_ibegin_, tile_jbegin_  & 
    1235     , tile_ni_, tile_nj_, type_ ) 
     1263    , tile_ni_, tile_nj_, tile_only_, type_ ) 
    12361264 
    12371265    IMPLICIT NONE 
     
    13371365      LOGICAL, OPTIONAL, INTENT(OUT) :: tile_nj_ 
    13381366      LOGICAL(KIND=C_BOOL) :: tile_nj__tmp 
     1367      LOGICAL, OPTIONAL, INTENT(OUT) :: tile_only_ 
     1368      LOGICAL(KIND=C_BOOL) :: tile_only__tmp 
    13391369      LOGICAL, OPTIONAL, INTENT(OUT) :: type_ 
    13401370      LOGICAL(KIND=C_BOOL) :: type__tmp 
     
    16401670      ENDIF 
    16411671 
     1672      IF (PRESENT(tile_only_)) THEN 
     1673        tile_only__tmp = cxios_is_defined_domaingroup_tile_only & 
     1674      (domaingroup_hdl%daddr) 
     1675        tile_only_ = tile_only__tmp 
     1676      ENDIF 
     1677 
    16421678      IF (PRESENT(type_)) THEN 
    16431679        type__tmp = cxios_is_defined_domaingroup_type & 
  • XIOS2/trunk/src/interface/fortran_attr/ifield_attr.F90

    r1492 r2618  
    1212 
    1313  SUBROUTINE xios(set_field_attr)  & 
    14     ( field_id, add_offset, axis_ref, cell_methods, cell_methods_mode, check_if_active, comment  & 
    15     , compression_level, default_value, detect_missing_value, domain_ref, enabled, expr, field_ref  & 
    16     , freq_offset, freq_op, grid_path, grid_ref, indexed_output, level, long_name, name, operation  & 
    17     , prec, read_access, scalar_ref, scale_factor, standard_name, ts_enabled, ts_split_freq, unit  & 
    18     , valid_max, valid_min ) 
     14    ( field_id, add_offset, axis_ref, build_workflow_graph, build_workflow_graph_end, build_workflow_graph_start  & 
     15    , cell_methods, cell_methods_mode, check_if_active, comment, compression_level, conversion_by_netcdf  & 
     16    , default_value, detect_missing_value, domain_ref, enabled, expr, field_ref, freq_offset, freq_op  & 
     17    , grid_path, grid_ref, indexed_output, level, long_name, name, operation, prec, read_access  & 
     18    , scalar_ref, scale_factor, standard_name, ts_enabled, ts_split_freq, unit, valid_max, valid_min  & 
     19     ) 
    1920 
    2021    IMPLICIT NONE 
     
    2324      REAL (KIND=8) , OPTIONAL, INTENT(IN) :: add_offset 
    2425      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: axis_ref 
     26      LOGICAL  , OPTIONAL, INTENT(IN) :: build_workflow_graph 
     27      LOGICAL (KIND=C_BOOL) :: build_workflow_graph_tmp 
     28      TYPE(txios(duration))  , OPTIONAL, INTENT(IN) :: build_workflow_graph_end 
     29      TYPE(txios(duration))  , OPTIONAL, INTENT(IN) :: build_workflow_graph_start 
    2530      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: cell_methods 
    2631      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: cell_methods_mode 
     
    2934      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: comment 
    3035      INTEGER  , OPTIONAL, INTENT(IN) :: compression_level 
     36      LOGICAL  , OPTIONAL, INTENT(IN) :: conversion_by_netcdf 
     37      LOGICAL (KIND=C_BOOL) :: conversion_by_netcdf_tmp 
    3138      REAL (KIND=8) , OPTIONAL, INTENT(IN) :: default_value 
    3239      LOGICAL  , OPTIONAL, INTENT(IN) :: detect_missing_value 
     
    6370      (field_id,field_hdl) 
    6471      CALL xios(set_field_attr_hdl_)   & 
    65       ( field_hdl, add_offset, axis_ref, cell_methods, cell_methods_mode, check_if_active, comment  & 
    66       , compression_level, default_value, detect_missing_value, domain_ref, enabled, expr, field_ref  & 
    67       , freq_offset, freq_op, grid_path, grid_ref, indexed_output, level, long_name, name, operation  & 
    68       , prec, read_access, scalar_ref, scale_factor, standard_name, ts_enabled, ts_split_freq, unit  & 
    69       , valid_max, valid_min ) 
     72      ( field_hdl, add_offset, axis_ref, build_workflow_graph, build_workflow_graph_end, build_workflow_graph_start  & 
     73      , cell_methods, cell_methods_mode, check_if_active, comment, compression_level, conversion_by_netcdf  & 
     74      , default_value, detect_missing_value, domain_ref, enabled, expr, field_ref, freq_offset, freq_op  & 
     75      , grid_path, grid_ref, indexed_output, level, long_name, name, operation, prec, read_access  & 
     76      , scalar_ref, scale_factor, standard_name, ts_enabled, ts_split_freq, unit, valid_max, valid_min  & 
     77       ) 
    7078 
    7179  END SUBROUTINE xios(set_field_attr) 
    7280 
    7381  SUBROUTINE xios(set_field_attr_hdl)  & 
    74     ( field_hdl, add_offset, axis_ref, cell_methods, cell_methods_mode, check_if_active, comment  & 
    75     , compression_level, default_value, detect_missing_value, domain_ref, enabled, expr, field_ref  & 
    76     , freq_offset, freq_op, grid_path, grid_ref, indexed_output, level, long_name, name, operation  & 
    77     , prec, read_access, scalar_ref, scale_factor, standard_name, ts_enabled, ts_split_freq, unit  & 
    78     , valid_max, valid_min ) 
     82    ( field_hdl, add_offset, axis_ref, build_workflow_graph, build_workflow_graph_end, build_workflow_graph_start  & 
     83    , cell_methods, cell_methods_mode, check_if_active, comment, compression_level, conversion_by_netcdf  & 
     84    , default_value, detect_missing_value, domain_ref, enabled, expr, field_ref, freq_offset, freq_op  & 
     85    , grid_path, grid_ref, indexed_output, level, long_name, name, operation, prec, read_access  & 
     86    , scalar_ref, scale_factor, standard_name, ts_enabled, ts_split_freq, unit, valid_max, valid_min  & 
     87     ) 
    7988 
    8089    IMPLICIT NONE 
     
    8291      REAL (KIND=8) , OPTIONAL, INTENT(IN) :: add_offset 
    8392      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: axis_ref 
     93      LOGICAL  , OPTIONAL, INTENT(IN) :: build_workflow_graph 
     94      LOGICAL (KIND=C_BOOL) :: build_workflow_graph_tmp 
     95      TYPE(txios(duration))  , OPTIONAL, INTENT(IN) :: build_workflow_graph_end 
     96      TYPE(txios(duration))  , OPTIONAL, INTENT(IN) :: build_workflow_graph_start 
    8497      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: cell_methods 
    8598      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: cell_methods_mode 
     
    88101      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: comment 
    89102      INTEGER  , OPTIONAL, INTENT(IN) :: compression_level 
     103      LOGICAL  , OPTIONAL, INTENT(IN) :: conversion_by_netcdf 
     104      LOGICAL (KIND=C_BOOL) :: conversion_by_netcdf_tmp 
    90105      REAL (KIND=8) , OPTIONAL, INTENT(IN) :: default_value 
    91106      LOGICAL  , OPTIONAL, INTENT(IN) :: detect_missing_value 
     
    120135 
    121136      CALL xios(set_field_attr_hdl_)  & 
    122       ( field_hdl, add_offset, axis_ref, cell_methods, cell_methods_mode, check_if_active, comment  & 
    123       , compression_level, default_value, detect_missing_value, domain_ref, enabled, expr, field_ref  & 
    124       , freq_offset, freq_op, grid_path, grid_ref, indexed_output, level, long_name, name, operation  & 
    125       , prec, read_access, scalar_ref, scale_factor, standard_name, ts_enabled, ts_split_freq, unit  & 
    126       , valid_max, valid_min ) 
     137      ( field_hdl, add_offset, axis_ref, build_workflow_graph, build_workflow_graph_end, build_workflow_graph_start  & 
     138      , cell_methods, cell_methods_mode, check_if_active, comment, compression_level, conversion_by_netcdf  & 
     139      , default_value, detect_missing_value, domain_ref, enabled, expr, field_ref, freq_offset, freq_op  & 
     140      , grid_path, grid_ref, indexed_output, level, long_name, name, operation, prec, read_access  & 
     141      , scalar_ref, scale_factor, standard_name, ts_enabled, ts_split_freq, unit, valid_max, valid_min  & 
     142       ) 
    127143 
    128144  END SUBROUTINE xios(set_field_attr_hdl) 
    129145 
    130146  SUBROUTINE xios(set_field_attr_hdl_)   & 
    131     ( field_hdl, add_offset_, axis_ref_, cell_methods_, cell_methods_mode_, check_if_active_, comment_  & 
    132     , compression_level_, default_value_, detect_missing_value_, domain_ref_, enabled_, expr_, field_ref_  & 
    133     , freq_offset_, freq_op_, grid_path_, grid_ref_, indexed_output_, level_, long_name_, name_  & 
    134     , operation_, prec_, read_access_, scalar_ref_, scale_factor_, standard_name_, ts_enabled_, ts_split_freq_  & 
    135     , unit_, valid_max_, valid_min_ ) 
     147    ( field_hdl, add_offset_, axis_ref_, build_workflow_graph_, build_workflow_graph_end_, build_workflow_graph_start_  & 
     148    , cell_methods_, cell_methods_mode_, check_if_active_, comment_, compression_level_, conversion_by_netcdf_  & 
     149    , default_value_, detect_missing_value_, domain_ref_, enabled_, expr_, field_ref_, freq_offset_  & 
     150    , freq_op_, grid_path_, grid_ref_, indexed_output_, level_, long_name_, name_, operation_, prec_  & 
     151    , read_access_, scalar_ref_, scale_factor_, standard_name_, ts_enabled_, ts_split_freq_, unit_  & 
     152    , valid_max_, valid_min_ ) 
    136153 
    137154    IMPLICIT NONE 
     
    139156      REAL (KIND=8) , OPTIONAL, INTENT(IN) :: add_offset_ 
    140157      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: axis_ref_ 
     158      LOGICAL  , OPTIONAL, INTENT(IN) :: build_workflow_graph_ 
     159      LOGICAL (KIND=C_BOOL) :: build_workflow_graph__tmp 
     160      TYPE(txios(duration))  , OPTIONAL, INTENT(IN) :: build_workflow_graph_end_ 
     161      TYPE(txios(duration))  , OPTIONAL, INTENT(IN) :: build_workflow_graph_start_ 
    141162      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: cell_methods_ 
    142163      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: cell_methods_mode_ 
     
    145166      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: comment_ 
    146167      INTEGER  , OPTIONAL, INTENT(IN) :: compression_level_ 
     168      LOGICAL  , OPTIONAL, INTENT(IN) :: conversion_by_netcdf_ 
     169      LOGICAL (KIND=C_BOOL) :: conversion_by_netcdf__tmp 
    147170      REAL (KIND=8) , OPTIONAL, INTENT(IN) :: default_value_ 
    148171      LOGICAL  , OPTIONAL, INTENT(IN) :: detect_missing_value_ 
     
    186209      ENDIF 
    187210 
     211      IF (PRESENT(build_workflow_graph_)) THEN 
     212        build_workflow_graph__tmp = build_workflow_graph_ 
     213        CALL cxios_set_field_build_workflow_graph & 
     214      (field_hdl%daddr, build_workflow_graph__tmp) 
     215      ENDIF 
     216 
     217      IF (PRESENT(build_workflow_graph_end_)) THEN 
     218        CALL cxios_set_field_build_workflow_graph_end & 
     219      (field_hdl%daddr, build_workflow_graph_end_) 
     220      ENDIF 
     221 
     222      IF (PRESENT(build_workflow_graph_start_)) THEN 
     223        CALL cxios_set_field_build_workflow_graph_start & 
     224      (field_hdl%daddr, build_workflow_graph_start_) 
     225      ENDIF 
     226 
    188227      IF (PRESENT(cell_methods_)) THEN 
    189228        CALL cxios_set_field_cell_methods & 
     
    212251      ENDIF 
    213252 
     253      IF (PRESENT(conversion_by_netcdf_)) THEN 
     254        conversion_by_netcdf__tmp = conversion_by_netcdf_ 
     255        CALL cxios_set_field_conversion_by_netcdf & 
     256      (field_hdl%daddr, conversion_by_netcdf__tmp) 
     257      ENDIF 
     258 
    214259      IF (PRESENT(default_value_)) THEN 
    215260        CALL cxios_set_field_default_value & 
     
    345390 
    346391  SUBROUTINE xios(get_field_attr)  & 
    347     ( field_id, add_offset, axis_ref, cell_methods, cell_methods_mode, check_if_active, comment  & 
    348     , compression_level, default_value, detect_missing_value, domain_ref, enabled, expr, field_ref  & 
    349     , freq_offset, freq_op, grid_path, grid_ref, indexed_output, level, long_name, name, operation  & 
    350     , prec, read_access, scalar_ref, scale_factor, standard_name, ts_enabled, ts_split_freq, unit  & 
    351     , valid_max, valid_min ) 
     392    ( field_id, add_offset, axis_ref, build_workflow_graph, build_workflow_graph_end, build_workflow_graph_start  & 
     393    , cell_methods, cell_methods_mode, check_if_active, comment, compression_level, conversion_by_netcdf  & 
     394    , default_value, detect_missing_value, domain_ref, enabled, expr, field_ref, freq_offset, freq_op  & 
     395    , grid_path, grid_ref, indexed_output, level, long_name, name, operation, prec, read_access  & 
     396    , scalar_ref, scale_factor, standard_name, ts_enabled, ts_split_freq, unit, valid_max, valid_min  & 
     397     ) 
    352398 
    353399    IMPLICIT NONE 
     
    356402      REAL (KIND=8) , OPTIONAL, INTENT(OUT) :: add_offset 
    357403      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: axis_ref 
     404      LOGICAL  , OPTIONAL, INTENT(OUT) :: build_workflow_graph 
     405      LOGICAL (KIND=C_BOOL) :: build_workflow_graph_tmp 
     406      TYPE(txios(duration))  , OPTIONAL, INTENT(OUT) :: build_workflow_graph_end 
     407      TYPE(txios(duration))  , OPTIONAL, INTENT(OUT) :: build_workflow_graph_start 
    358408      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: cell_methods 
    359409      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: cell_methods_mode 
     
    362412      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: comment 
    363413      INTEGER  , OPTIONAL, INTENT(OUT) :: compression_level 
     414      LOGICAL  , OPTIONAL, INTENT(OUT) :: conversion_by_netcdf 
     415      LOGICAL (KIND=C_BOOL) :: conversion_by_netcdf_tmp 
    364416      REAL (KIND=8) , OPTIONAL, INTENT(OUT) :: default_value 
    365417      LOGICAL  , OPTIONAL, INTENT(OUT) :: detect_missing_value 
     
    396448      (field_id,field_hdl) 
    397449      CALL xios(get_field_attr_hdl_)   & 
    398       ( field_hdl, add_offset, axis_ref, cell_methods, cell_methods_mode, check_if_active, comment  & 
    399       , compression_level, default_value, detect_missing_value, domain_ref, enabled, expr, field_ref  & 
    400       , freq_offset, freq_op, grid_path, grid_ref, indexed_output, level, long_name, name, operation  & 
    401       , prec, read_access, scalar_ref, scale_factor, standard_name, ts_enabled, ts_split_freq, unit  & 
    402       , valid_max, valid_min ) 
     450      ( field_hdl, add_offset, axis_ref, build_workflow_graph, build_workflow_graph_end, build_workflow_graph_start  & 
     451      , cell_methods, cell_methods_mode, check_if_active, comment, compression_level, conversion_by_netcdf  & 
     452      , default_value, detect_missing_value, domain_ref, enabled, expr, field_ref, freq_offset, freq_op  & 
     453      , grid_path, grid_ref, indexed_output, level, long_name, name, operation, prec, read_access  & 
     454      , scalar_ref, scale_factor, standard_name, ts_enabled, ts_split_freq, unit, valid_max, valid_min  & 
     455       ) 
    403456 
    404457  END SUBROUTINE xios(get_field_attr) 
    405458 
    406459  SUBROUTINE xios(get_field_attr_hdl)  & 
    407     ( field_hdl, add_offset, axis_ref, cell_methods, cell_methods_mode, check_if_active, comment  & 
    408     , compression_level, default_value, detect_missing_value, domain_ref, enabled, expr, field_ref  & 
    409     , freq_offset, freq_op, grid_path, grid_ref, indexed_output, level, long_name, name, operation  & 
    410     , prec, read_access, scalar_ref, scale_factor, standard_name, ts_enabled, ts_split_freq, unit  & 
    411     , valid_max, valid_min ) 
     460    ( field_hdl, add_offset, axis_ref, build_workflow_graph, build_workflow_graph_end, build_workflow_graph_start  & 
     461    , cell_methods, cell_methods_mode, check_if_active, comment, compression_level, conversion_by_netcdf  & 
     462    , default_value, detect_missing_value, domain_ref, enabled, expr, field_ref, freq_offset, freq_op  & 
     463    , grid_path, grid_ref, indexed_output, level, long_name, name, operation, prec, read_access  & 
     464    , scalar_ref, scale_factor, standard_name, ts_enabled, ts_split_freq, unit, valid_max, valid_min  & 
     465     ) 
    412466 
    413467    IMPLICIT NONE 
     
    415469      REAL (KIND=8) , OPTIONAL, INTENT(OUT) :: add_offset 
    416470      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: axis_ref 
     471      LOGICAL  , OPTIONAL, INTENT(OUT) :: build_workflow_graph 
     472      LOGICAL (KIND=C_BOOL) :: build_workflow_graph_tmp 
     473      TYPE(txios(duration))  , OPTIONAL, INTENT(OUT) :: build_workflow_graph_end 
     474      TYPE(txios(duration))  , OPTIONAL, INTENT(OUT) :: build_workflow_graph_start 
    417475      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: cell_methods 
    418476      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: cell_methods_mode 
     
    421479      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: comment 
    422480      INTEGER  , OPTIONAL, INTENT(OUT) :: compression_level 
     481      LOGICAL  , OPTIONAL, INTENT(OUT) :: conversion_by_netcdf 
     482      LOGICAL (KIND=C_BOOL) :: conversion_by_netcdf_tmp 
    423483      REAL (KIND=8) , OPTIONAL, INTENT(OUT) :: default_value 
    424484      LOGICAL  , OPTIONAL, INTENT(OUT) :: detect_missing_value 
     
    453513 
    454514      CALL xios(get_field_attr_hdl_)  & 
    455       ( field_hdl, add_offset, axis_ref, cell_methods, cell_methods_mode, check_if_active, comment  & 
    456       , compression_level, default_value, detect_missing_value, domain_ref, enabled, expr, field_ref  & 
    457       , freq_offset, freq_op, grid_path, grid_ref, indexed_output, level, long_name, name, operation  & 
    458       , prec, read_access, scalar_ref, scale_factor, standard_name, ts_enabled, ts_split_freq, unit  & 
    459       , valid_max, valid_min ) 
     515      ( field_hdl, add_offset, axis_ref, build_workflow_graph, build_workflow_graph_end, build_workflow_graph_start  & 
     516      , cell_methods, cell_methods_mode, check_if_active, comment, compression_level, conversion_by_netcdf  & 
     517      , default_value, detect_missing_value, domain_ref, enabled, expr, field_ref, freq_offset, freq_op  & 
     518      , grid_path, grid_ref, indexed_output, level, long_name, name, operation, prec, read_access  & 
     519      , scalar_ref, scale_factor, standard_name, ts_enabled, ts_split_freq, unit, valid_max, valid_min  & 
     520       ) 
    460521 
    461522  END SUBROUTINE xios(get_field_attr_hdl) 
    462523 
    463524  SUBROUTINE xios(get_field_attr_hdl_)   & 
    464     ( field_hdl, add_offset_, axis_ref_, cell_methods_, cell_methods_mode_, check_if_active_, comment_  & 
    465     , compression_level_, default_value_, detect_missing_value_, domain_ref_, enabled_, expr_, field_ref_  & 
    466     , freq_offset_, freq_op_, grid_path_, grid_ref_, indexed_output_, level_, long_name_, name_  & 
    467     , operation_, prec_, read_access_, scalar_ref_, scale_factor_, standard_name_, ts_enabled_, ts_split_freq_  & 
    468     , unit_, valid_max_, valid_min_ ) 
     525    ( field_hdl, add_offset_, axis_ref_, build_workflow_graph_, build_workflow_graph_end_, build_workflow_graph_start_  & 
     526    , cell_methods_, cell_methods_mode_, check_if_active_, comment_, compression_level_, conversion_by_netcdf_  & 
     527    , default_value_, detect_missing_value_, domain_ref_, enabled_, expr_, field_ref_, freq_offset_  & 
     528    , freq_op_, grid_path_, grid_ref_, indexed_output_, level_, long_name_, name_, operation_, prec_  & 
     529    , read_access_, scalar_ref_, scale_factor_, standard_name_, ts_enabled_, ts_split_freq_, unit_  & 
     530    , valid_max_, valid_min_ ) 
    469531 
    470532    IMPLICIT NONE 
     
    472534      REAL (KIND=8) , OPTIONAL, INTENT(OUT) :: add_offset_ 
    473535      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: axis_ref_ 
     536      LOGICAL  , OPTIONAL, INTENT(OUT) :: build_workflow_graph_ 
     537      LOGICAL (KIND=C_BOOL) :: build_workflow_graph__tmp 
     538      TYPE(txios(duration))  , OPTIONAL, INTENT(OUT) :: build_workflow_graph_end_ 
     539      TYPE(txios(duration))  , OPTIONAL, INTENT(OUT) :: build_workflow_graph_start_ 
    474540      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: cell_methods_ 
    475541      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: cell_methods_mode_ 
     
    478544      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: comment_ 
    479545      INTEGER  , OPTIONAL, INTENT(OUT) :: compression_level_ 
     546      LOGICAL  , OPTIONAL, INTENT(OUT) :: conversion_by_netcdf_ 
     547      LOGICAL (KIND=C_BOOL) :: conversion_by_netcdf__tmp 
    480548      REAL (KIND=8) , OPTIONAL, INTENT(OUT) :: default_value_ 
    481549      LOGICAL  , OPTIONAL, INTENT(OUT) :: detect_missing_value_ 
     
    519587      ENDIF 
    520588 
     589      IF (PRESENT(build_workflow_graph_)) THEN 
     590        CALL cxios_get_field_build_workflow_graph & 
     591      (field_hdl%daddr, build_workflow_graph__tmp) 
     592        build_workflow_graph_ = build_workflow_graph__tmp 
     593      ENDIF 
     594 
     595      IF (PRESENT(build_workflow_graph_end_)) THEN 
     596        CALL cxios_get_field_build_workflow_graph_end & 
     597      (field_hdl%daddr, build_workflow_graph_end_) 
     598      ENDIF 
     599 
     600      IF (PRESENT(build_workflow_graph_start_)) THEN 
     601        CALL cxios_get_field_build_workflow_graph_start & 
     602      (field_hdl%daddr, build_workflow_graph_start_) 
     603      ENDIF 
     604 
    521605      IF (PRESENT(cell_methods_)) THEN 
    522606        CALL cxios_get_field_cell_methods & 
     
    545629      ENDIF 
    546630 
     631      IF (PRESENT(conversion_by_netcdf_)) THEN 
     632        CALL cxios_get_field_conversion_by_netcdf & 
     633      (field_hdl%daddr, conversion_by_netcdf__tmp) 
     634        conversion_by_netcdf_ = conversion_by_netcdf__tmp 
     635      ENDIF 
     636 
    547637      IF (PRESENT(default_value_)) THEN 
    548638        CALL cxios_get_field_default_value & 
     
    678768 
    679769  SUBROUTINE xios(is_defined_field_attr)  & 
    680     ( field_id, add_offset, axis_ref, cell_methods, cell_methods_mode, check_if_active, comment  & 
    681     , compression_level, default_value, detect_missing_value, domain_ref, enabled, expr, field_ref  & 
    682     , freq_offset, freq_op, grid_path, grid_ref, indexed_output, level, long_name, name, operation  & 
    683     , prec, read_access, scalar_ref, scale_factor, standard_name, ts_enabled, ts_split_freq, unit  & 
    684     , valid_max, valid_min ) 
     770    ( field_id, add_offset, axis_ref, build_workflow_graph, build_workflow_graph_end, build_workflow_graph_start  & 
     771    , cell_methods, cell_methods_mode, check_if_active, comment, compression_level, conversion_by_netcdf  & 
     772    , default_value, detect_missing_value, domain_ref, enabled, expr, field_ref, freq_offset, freq_op  & 
     773    , grid_path, grid_ref, indexed_output, level, long_name, name, operation, prec, read_access  & 
     774    , scalar_ref, scale_factor, standard_name, ts_enabled, ts_split_freq, unit, valid_max, valid_min  & 
     775     ) 
    685776 
    686777    IMPLICIT NONE 
     
    691782      LOGICAL, OPTIONAL, INTENT(OUT) :: axis_ref 
    692783      LOGICAL(KIND=C_BOOL) :: axis_ref_tmp 
     784      LOGICAL, OPTIONAL, INTENT(OUT) :: build_workflow_graph 
     785      LOGICAL(KIND=C_BOOL) :: build_workflow_graph_tmp 
     786      LOGICAL, OPTIONAL, INTENT(OUT) :: build_workflow_graph_end 
     787      LOGICAL(KIND=C_BOOL) :: build_workflow_graph_end_tmp 
     788      LOGICAL, OPTIONAL, INTENT(OUT) :: build_workflow_graph_start 
     789      LOGICAL(KIND=C_BOOL) :: build_workflow_graph_start_tmp 
    693790      LOGICAL, OPTIONAL, INTENT(OUT) :: cell_methods 
    694791      LOGICAL(KIND=C_BOOL) :: cell_methods_tmp 
     
    701798      LOGICAL, OPTIONAL, INTENT(OUT) :: compression_level 
    702799      LOGICAL(KIND=C_BOOL) :: compression_level_tmp 
     800      LOGICAL, OPTIONAL, INTENT(OUT) :: conversion_by_netcdf 
     801      LOGICAL(KIND=C_BOOL) :: conversion_by_netcdf_tmp 
    703802      LOGICAL, OPTIONAL, INTENT(OUT) :: default_value 
    704803      LOGICAL(KIND=C_BOOL) :: default_value_tmp 
     
    755854      (field_id,field_hdl) 
    756855      CALL xios(is_defined_field_attr_hdl_)   & 
    757       ( field_hdl, add_offset, axis_ref, cell_methods, cell_methods_mode, check_if_active, comment  & 
    758       , compression_level, default_value, detect_missing_value, domain_ref, enabled, expr, field_ref  & 
    759       , freq_offset, freq_op, grid_path, grid_ref, indexed_output, level, long_name, name, operation  & 
    760       , prec, read_access, scalar_ref, scale_factor, standard_name, ts_enabled, ts_split_freq, unit  & 
    761       , valid_max, valid_min ) 
     856      ( field_hdl, add_offset, axis_ref, build_workflow_graph, build_workflow_graph_end, build_workflow_graph_start  & 
     857      , cell_methods, cell_methods_mode, check_if_active, comment, compression_level, conversion_by_netcdf  & 
     858      , default_value, detect_missing_value, domain_ref, enabled, expr, field_ref, freq_offset, freq_op  & 
     859      , grid_path, grid_ref, indexed_output, level, long_name, name, operation, prec, read_access  & 
     860      , scalar_ref, scale_factor, standard_name, ts_enabled, ts_split_freq, unit, valid_max, valid_min  & 
     861       ) 
    762862 
    763863  END SUBROUTINE xios(is_defined_field_attr) 
    764864 
    765865  SUBROUTINE xios(is_defined_field_attr_hdl)  & 
    766     ( field_hdl, add_offset, axis_ref, cell_methods, cell_methods_mode, check_if_active, comment  & 
    767     , compression_level, default_value, detect_missing_value, domain_ref, enabled, expr, field_ref  & 
    768     , freq_offset, freq_op, grid_path, grid_ref, indexed_output, level, long_name, name, operation  & 
    769     , prec, read_access, scalar_ref, scale_factor, standard_name, ts_enabled, ts_split_freq, unit  & 
    770     , valid_max, valid_min ) 
     866    ( field_hdl, add_offset, axis_ref, build_workflow_graph, build_workflow_graph_end, build_workflow_graph_start  & 
     867    , cell_methods, cell_methods_mode, check_if_active, comment, compression_level, conversion_by_netcdf  & 
     868    , default_value, detect_missing_value, domain_ref, enabled, expr, field_ref, freq_offset, freq_op  & 
     869    , grid_path, grid_ref, indexed_output, level, long_name, name, operation, prec, read_access  & 
     870    , scalar_ref, scale_factor, standard_name, ts_enabled, ts_split_freq, unit, valid_max, valid_min  & 
     871     ) 
    771872 
    772873    IMPLICIT NONE 
     
    776877      LOGICAL, OPTIONAL, INTENT(OUT) :: axis_ref 
    777878      LOGICAL(KIND=C_BOOL) :: axis_ref_tmp 
     879      LOGICAL, OPTIONAL, INTENT(OUT) :: build_workflow_graph 
     880      LOGICAL(KIND=C_BOOL) :: build_workflow_graph_tmp 
     881      LOGICAL, OPTIONAL, INTENT(OUT) :: build_workflow_graph_end 
     882      LOGICAL(KIND=C_BOOL) :: build_workflow_graph_end_tmp 
     883      LOGICAL, OPTIONAL, INTENT(OUT) :: build_workflow_graph_start 
     884      LOGICAL(KIND=C_BOOL) :: build_workflow_graph_start_tmp 
    778885      LOGICAL, OPTIONAL, INTENT(OUT) :: cell_methods 
    779886      LOGICAL(KIND=C_BOOL) :: cell_methods_tmp 
     
    786893      LOGICAL, OPTIONAL, INTENT(OUT) :: compression_level 
    787894      LOGICAL(KIND=C_BOOL) :: compression_level_tmp 
     895      LOGICAL, OPTIONAL, INTENT(OUT) :: conversion_by_netcdf 
     896      LOGICAL(KIND=C_BOOL) :: conversion_by_netcdf_tmp 
    788897      LOGICAL, OPTIONAL, INTENT(OUT) :: default_value 
    789898      LOGICAL(KIND=C_BOOL) :: default_value_tmp 
     
    838947 
    839948      CALL xios(is_defined_field_attr_hdl_)  & 
    840       ( field_hdl, add_offset, axis_ref, cell_methods, cell_methods_mode, check_if_active, comment  & 
    841       , compression_level, default_value, detect_missing_value, domain_ref, enabled, expr, field_ref  & 
    842       , freq_offset, freq_op, grid_path, grid_ref, indexed_output, level, long_name, name, operation  & 
    843       , prec, read_access, scalar_ref, scale_factor, standard_name, ts_enabled, ts_split_freq, unit  & 
    844       , valid_max, valid_min ) 
     949      ( field_hdl, add_offset, axis_ref, build_workflow_graph, build_workflow_graph_end, build_workflow_graph_start  & 
     950      , cell_methods, cell_methods_mode, check_if_active, comment, compression_level, conversion_by_netcdf  & 
     951      , default_value, detect_missing_value, domain_ref, enabled, expr, field_ref, freq_offset, freq_op  & 
     952      , grid_path, grid_ref, indexed_output, level, long_name, name, operation, prec, read_access  & 
     953      , scalar_ref, scale_factor, standard_name, ts_enabled, ts_split_freq, unit, valid_max, valid_min  & 
     954       ) 
    845955 
    846956  END SUBROUTINE xios(is_defined_field_attr_hdl) 
    847957 
    848958  SUBROUTINE xios(is_defined_field_attr_hdl_)   & 
    849     ( field_hdl, add_offset_, axis_ref_, cell_methods_, cell_methods_mode_, check_if_active_, comment_  & 
    850     , compression_level_, default_value_, detect_missing_value_, domain_ref_, enabled_, expr_, field_ref_  & 
    851     , freq_offset_, freq_op_, grid_path_, grid_ref_, indexed_output_, level_, long_name_, name_  & 
    852     , operation_, prec_, read_access_, scalar_ref_, scale_factor_, standard_name_, ts_enabled_, ts_split_freq_  & 
    853     , unit_, valid_max_, valid_min_ ) 
     959    ( field_hdl, add_offset_, axis_ref_, build_workflow_graph_, build_workflow_graph_end_, build_workflow_graph_start_  & 
     960    , cell_methods_, cell_methods_mode_, check_if_active_, comment_, compression_level_, conversion_by_netcdf_  & 
     961    , default_value_, detect_missing_value_, domain_ref_, enabled_, expr_, field_ref_, freq_offset_  & 
     962    , freq_op_, grid_path_, grid_ref_, indexed_output_, level_, long_name_, name_, operation_, prec_  & 
     963    , read_access_, scalar_ref_, scale_factor_, standard_name_, ts_enabled_, ts_split_freq_, unit_  & 
     964    , valid_max_, valid_min_ ) 
    854965 
    855966    IMPLICIT NONE 
     
    859970      LOGICAL, OPTIONAL, INTENT(OUT) :: axis_ref_ 
    860971      LOGICAL(KIND=C_BOOL) :: axis_ref__tmp 
     972      LOGICAL, OPTIONAL, INTENT(OUT) :: build_workflow_graph_ 
     973      LOGICAL(KIND=C_BOOL) :: build_workflow_graph__tmp 
     974      LOGICAL, OPTIONAL, INTENT(OUT) :: build_workflow_graph_end_ 
     975      LOGICAL(KIND=C_BOOL) :: build_workflow_graph_end__tmp 
     976      LOGICAL, OPTIONAL, INTENT(OUT) :: build_workflow_graph_start_ 
     977      LOGICAL(KIND=C_BOOL) :: build_workflow_graph_start__tmp 
    861978      LOGICAL, OPTIONAL, INTENT(OUT) :: cell_methods_ 
    862979      LOGICAL(KIND=C_BOOL) :: cell_methods__tmp 
     
    869986      LOGICAL, OPTIONAL, INTENT(OUT) :: compression_level_ 
    870987      LOGICAL(KIND=C_BOOL) :: compression_level__tmp 
     988      LOGICAL, OPTIONAL, INTENT(OUT) :: conversion_by_netcdf_ 
     989      LOGICAL(KIND=C_BOOL) :: conversion_by_netcdf__tmp 
    871990      LOGICAL, OPTIONAL, INTENT(OUT) :: default_value_ 
    872991      LOGICAL(KIND=C_BOOL) :: default_value__tmp 
     
    9321051      ENDIF 
    9331052 
     1053      IF (PRESENT(build_workflow_graph_)) THEN 
     1054        build_workflow_graph__tmp = cxios_is_defined_field_build_workflow_graph & 
     1055      (field_hdl%daddr) 
     1056        build_workflow_graph_ = build_workflow_graph__tmp 
     1057      ENDIF 
     1058 
     1059      IF (PRESENT(build_workflow_graph_end_)) THEN 
     1060        build_workflow_graph_end__tmp = cxios_is_defined_field_build_workflow_graph_end & 
     1061      (field_hdl%daddr) 
     1062        build_workflow_graph_end_ = build_workflow_graph_end__tmp 
     1063      ENDIF 
     1064 
     1065      IF (PRESENT(build_workflow_graph_start_)) THEN 
     1066        build_workflow_graph_start__tmp = cxios_is_defined_field_build_workflow_graph_start & 
     1067      (field_hdl%daddr) 
     1068        build_workflow_graph_start_ = build_workflow_graph_start__tmp 
     1069      ENDIF 
     1070 
    9341071      IF (PRESENT(cell_methods_)) THEN 
    9351072        cell_methods__tmp = cxios_is_defined_field_cell_methods & 
     
    9621099      ENDIF 
    9631100 
     1101      IF (PRESENT(conversion_by_netcdf_)) THEN 
     1102        conversion_by_netcdf__tmp = cxios_is_defined_field_conversion_by_netcdf & 
     1103      (field_hdl%daddr) 
     1104        conversion_by_netcdf_ = conversion_by_netcdf__tmp 
     1105      ENDIF 
     1106 
    9641107      IF (PRESENT(default_value_)) THEN 
    9651108        default_value__tmp = cxios_is_defined_field_default_value & 
  • XIOS2/trunk/src/interface/fortran_attr/ifieldgroup_attr.F90

    r1492 r2618  
    1212 
    1313  SUBROUTINE xios(set_fieldgroup_attr)  & 
    14     ( fieldgroup_id, add_offset, axis_ref, cell_methods, cell_methods_mode, check_if_active, comment  & 
    15     , compression_level, default_value, detect_missing_value, domain_ref, enabled, expr, field_ref  & 
    16     , freq_offset, freq_op, grid_path, grid_ref, group_ref, indexed_output, level, long_name, name  & 
    17     , operation, prec, read_access, scalar_ref, scale_factor, standard_name, ts_enabled, ts_split_freq  & 
    18     , unit, valid_max, valid_min ) 
     14    ( fieldgroup_id, add_offset, axis_ref, build_workflow_graph, build_workflow_graph_end, build_workflow_graph_start  & 
     15    , cell_methods, cell_methods_mode, check_if_active, comment, compression_level, conversion_by_netcdf  & 
     16    , default_value, detect_missing_value, domain_ref, enabled, expr, field_ref, freq_offset, freq_op  & 
     17    , grid_path, grid_ref, group_ref, indexed_output, level, long_name, name, operation, prec, read_access  & 
     18    , scalar_ref, scale_factor, standard_name, ts_enabled, ts_split_freq, unit, valid_max, valid_min  & 
     19     ) 
    1920 
    2021    IMPLICIT NONE 
     
    2324      REAL (KIND=8) , OPTIONAL, INTENT(IN) :: add_offset 
    2425      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: axis_ref 
     26      LOGICAL  , OPTIONAL, INTENT(IN) :: build_workflow_graph 
     27      LOGICAL (KIND=C_BOOL) :: build_workflow_graph_tmp 
     28      TYPE(txios(duration))  , OPTIONAL, INTENT(IN) :: build_workflow_graph_end 
     29      TYPE(txios(duration))  , OPTIONAL, INTENT(IN) :: build_workflow_graph_start 
    2530      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: cell_methods 
    2631      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: cell_methods_mode 
     
    2934      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: comment 
    3035      INTEGER  , OPTIONAL, INTENT(IN) :: compression_level 
     36      LOGICAL  , OPTIONAL, INTENT(IN) :: conversion_by_netcdf 
     37      LOGICAL (KIND=C_BOOL) :: conversion_by_netcdf_tmp 
    3138      REAL (KIND=8) , OPTIONAL, INTENT(IN) :: default_value 
    3239      LOGICAL  , OPTIONAL, INTENT(IN) :: detect_missing_value 
     
    6471      (fieldgroup_id,fieldgroup_hdl) 
    6572      CALL xios(set_fieldgroup_attr_hdl_)   & 
    66       ( fieldgroup_hdl, add_offset, axis_ref, cell_methods, cell_methods_mode, check_if_active, comment  & 
    67       , compression_level, default_value, detect_missing_value, domain_ref, enabled, expr, field_ref  & 
    68       , freq_offset, freq_op, grid_path, grid_ref, group_ref, indexed_output, level, long_name, name  & 
    69       , operation, prec, read_access, scalar_ref, scale_factor, standard_name, ts_enabled, ts_split_freq  & 
    70       , unit, valid_max, valid_min ) 
     73      ( fieldgroup_hdl, add_offset, axis_ref, build_workflow_graph, build_workflow_graph_end, build_workflow_graph_start  & 
     74      , cell_methods, cell_methods_mode, check_if_active, comment, compression_level, conversion_by_netcdf  & 
     75      , default_value, detect_missing_value, domain_ref, enabled, expr, field_ref, freq_offset, freq_op  & 
     76      , grid_path, grid_ref, group_ref, indexed_output, level, long_name, name, operation, prec, read_access  & 
     77      , scalar_ref, scale_factor, standard_name, ts_enabled, ts_split_freq, unit, valid_max, valid_min  & 
     78       ) 
    7179 
    7280  END SUBROUTINE xios(set_fieldgroup_attr) 
    7381 
    7482  SUBROUTINE xios(set_fieldgroup_attr_hdl)  & 
    75     ( fieldgroup_hdl, add_offset, axis_ref, cell_methods, cell_methods_mode, check_if_active, comment  & 
    76     , compression_level, default_value, detect_missing_value, domain_ref, enabled, expr, field_ref  & 
    77     , freq_offset, freq_op, grid_path, grid_ref, group_ref, indexed_output, level, long_name, name  & 
    78     , operation, prec, read_access, scalar_ref, scale_factor, standard_name, ts_enabled, ts_split_freq  & 
    79     , unit, valid_max, valid_min ) 
     83    ( fieldgroup_hdl, add_offset, axis_ref, build_workflow_graph, build_workflow_graph_end, build_workflow_graph_start  & 
     84    , cell_methods, cell_methods_mode, check_if_active, comment, compression_level, conversion_by_netcdf  & 
     85    , default_value, detect_missing_value, domain_ref, enabled, expr, field_ref, freq_offset, freq_op  & 
     86    , grid_path, grid_ref, group_ref, indexed_output, level, long_name, name, operation, prec, read_access  & 
     87    , scalar_ref, scale_factor, standard_name, ts_enabled, ts_split_freq, unit, valid_max, valid_min  & 
     88     ) 
    8089 
    8190    IMPLICIT NONE 
     
    8392      REAL (KIND=8) , OPTIONAL, INTENT(IN) :: add_offset 
    8493      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: axis_ref 
     94      LOGICAL  , OPTIONAL, INTENT(IN) :: build_workflow_graph 
     95      LOGICAL (KIND=C_BOOL) :: build_workflow_graph_tmp 
     96      TYPE(txios(duration))  , OPTIONAL, INTENT(IN) :: build_workflow_graph_end 
     97      TYPE(txios(duration))  , OPTIONAL, INTENT(IN) :: build_workflow_graph_start 
    8598      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: cell_methods 
    8699      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: cell_methods_mode 
     
    89102      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: comment 
    90103      INTEGER  , OPTIONAL, INTENT(IN) :: compression_level 
     104      LOGICAL  , OPTIONAL, INTENT(IN) :: conversion_by_netcdf 
     105      LOGICAL (KIND=C_BOOL) :: conversion_by_netcdf_tmp 
    91106      REAL (KIND=8) , OPTIONAL, INTENT(IN) :: default_value 
    92107      LOGICAL  , OPTIONAL, INTENT(IN) :: detect_missing_value 
     
    122137 
    123138      CALL xios(set_fieldgroup_attr_hdl_)  & 
    124       ( fieldgroup_hdl, add_offset, axis_ref, cell_methods, cell_methods_mode, check_if_active, comment  & 
    125       , compression_level, default_value, detect_missing_value, domain_ref, enabled, expr, field_ref  & 
    126       , freq_offset, freq_op, grid_path, grid_ref, group_ref, indexed_output, level, long_name, name  & 
    127       , operation, prec, read_access, scalar_ref, scale_factor, standard_name, ts_enabled, ts_split_freq  & 
    128       , unit, valid_max, valid_min ) 
     139      ( fieldgroup_hdl, add_offset, axis_ref, build_workflow_graph, build_workflow_graph_end, build_workflow_graph_start  & 
     140      , cell_methods, cell_methods_mode, check_if_active, comment, compression_level, conversion_by_netcdf  & 
     141      , default_value, detect_missing_value, domain_ref, enabled, expr, field_ref, freq_offset, freq_op  & 
     142      , grid_path, grid_ref, group_ref, indexed_output, level, long_name, name, operation, prec, read_access  & 
     143      , scalar_ref, scale_factor, standard_name, ts_enabled, ts_split_freq, unit, valid_max, valid_min  & 
     144       ) 
    129145 
    130146  END SUBROUTINE xios(set_fieldgroup_attr_hdl) 
    131147 
    132148  SUBROUTINE xios(set_fieldgroup_attr_hdl_)   & 
    133     ( fieldgroup_hdl, add_offset_, axis_ref_, cell_methods_, cell_methods_mode_, check_if_active_  & 
    134     , comment_, compression_level_, default_value_, detect_missing_value_, domain_ref_, enabled_  & 
    135     , expr_, field_ref_, freq_offset_, freq_op_, grid_path_, grid_ref_, group_ref_, indexed_output_  & 
    136     , level_, long_name_, name_, operation_, prec_, read_access_, scalar_ref_, scale_factor_, standard_name_  & 
    137     , ts_enabled_, ts_split_freq_, unit_, valid_max_, valid_min_ ) 
     149    ( fieldgroup_hdl, add_offset_, axis_ref_, build_workflow_graph_, build_workflow_graph_end_, build_workflow_graph_start_  & 
     150    , cell_methods_, cell_methods_mode_, check_if_active_, comment_, compression_level_, conversion_by_netcdf_  & 
     151    , default_value_, detect_missing_value_, domain_ref_, enabled_, expr_, field_ref_, freq_offset_  & 
     152    , freq_op_, grid_path_, grid_ref_, group_ref_, indexed_output_, level_, long_name_, name_, operation_  & 
     153    , prec_, read_access_, scalar_ref_, scale_factor_, standard_name_, ts_enabled_, ts_split_freq_  & 
     154    , unit_, valid_max_, valid_min_ ) 
    138155 
    139156    IMPLICIT NONE 
     
    141158      REAL (KIND=8) , OPTIONAL, INTENT(IN) :: add_offset_ 
    142159      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: axis_ref_ 
     160      LOGICAL  , OPTIONAL, INTENT(IN) :: build_workflow_graph_ 
     161      LOGICAL (KIND=C_BOOL) :: build_workflow_graph__tmp 
     162      TYPE(txios(duration))  , OPTIONAL, INTENT(IN) :: build_workflow_graph_end_ 
     163      TYPE(txios(duration))  , OPTIONAL, INTENT(IN) :: build_workflow_graph_start_ 
    143164      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: cell_methods_ 
    144165      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: cell_methods_mode_ 
     
    147168      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: comment_ 
    148169      INTEGER  , OPTIONAL, INTENT(IN) :: compression_level_ 
     170      LOGICAL  , OPTIONAL, INTENT(IN) :: conversion_by_netcdf_ 
     171      LOGICAL (KIND=C_BOOL) :: conversion_by_netcdf__tmp 
    149172      REAL (KIND=8) , OPTIONAL, INTENT(IN) :: default_value_ 
    150173      LOGICAL  , OPTIONAL, INTENT(IN) :: detect_missing_value_ 
     
    189212      ENDIF 
    190213 
     214      IF (PRESENT(build_workflow_graph_)) THEN 
     215        build_workflow_graph__tmp = build_workflow_graph_ 
     216        CALL cxios_set_fieldgroup_build_workflow_graph & 
     217      (fieldgroup_hdl%daddr, build_workflow_graph__tmp) 
     218      ENDIF 
     219 
     220      IF (PRESENT(build_workflow_graph_end_)) THEN 
     221        CALL cxios_set_fieldgroup_build_workflow_graph_end & 
     222      (fieldgroup_hdl%daddr, build_workflow_graph_end_) 
     223      ENDIF 
     224 
     225      IF (PRESENT(build_workflow_graph_start_)) THEN 
     226        CALL cxios_set_fieldgroup_build_workflow_graph_start & 
     227      (fieldgroup_hdl%daddr, build_workflow_graph_start_) 
     228      ENDIF 
     229 
    191230      IF (PRESENT(cell_methods_)) THEN 
    192231        CALL cxios_set_fieldgroup_cell_methods & 
     
    215254      ENDIF 
    216255 
     256      IF (PRESENT(conversion_by_netcdf_)) THEN 
     257        conversion_by_netcdf__tmp = conversion_by_netcdf_ 
     258        CALL cxios_set_fieldgroup_conversion_by_netcdf & 
     259      (fieldgroup_hdl%daddr, conversion_by_netcdf__tmp) 
     260      ENDIF 
     261 
    217262      IF (PRESENT(default_value_)) THEN 
    218263        CALL cxios_set_fieldgroup_default_value & 
     
    353398 
    354399  SUBROUTINE xios(get_fieldgroup_attr)  & 
    355     ( fieldgroup_id, add_offset, axis_ref, cell_methods, cell_methods_mode, check_if_active, comment  & 
    356     , compression_level, default_value, detect_missing_value, domain_ref, enabled, expr, field_ref  & 
    357     , freq_offset, freq_op, grid_path, grid_ref, group_ref, indexed_output, level, long_name, name  & 
    358     , operation, prec, read_access, scalar_ref, scale_factor, standard_name, ts_enabled, ts_split_freq  & 
    359     , unit, valid_max, valid_min ) 
     400    ( fieldgroup_id, add_offset, axis_ref, build_workflow_graph, build_workflow_graph_end, build_workflow_graph_start  & 
     401    , cell_methods, cell_methods_mode, check_if_active, comment, compression_level, conversion_by_netcdf  & 
     402    , default_value, detect_missing_value, domain_ref, enabled, expr, field_ref, freq_offset, freq_op  & 
     403    , grid_path, grid_ref, group_ref, indexed_output, level, long_name, name, operation, prec, read_access  & 
     404    , scalar_ref, scale_factor, standard_name, ts_enabled, ts_split_freq, unit, valid_max, valid_min  & 
     405     ) 
    360406 
    361407    IMPLICIT NONE 
     
    364410      REAL (KIND=8) , OPTIONAL, INTENT(OUT) :: add_offset 
    365411      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: axis_ref 
     412      LOGICAL  , OPTIONAL, INTENT(OUT) :: build_workflow_graph 
     413      LOGICAL (KIND=C_BOOL) :: build_workflow_graph_tmp 
     414      TYPE(txios(duration))  , OPTIONAL, INTENT(OUT) :: build_workflow_graph_end 
     415      TYPE(txios(duration))  , OPTIONAL, INTENT(OUT) :: build_workflow_graph_start 
    366416      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: cell_methods 
    367417      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: cell_methods_mode 
     
    370420      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: comment 
    371421      INTEGER  , OPTIONAL, INTENT(OUT) :: compression_level 
     422      LOGICAL  , OPTIONAL, INTENT(OUT) :: conversion_by_netcdf 
     423      LOGICAL (KIND=C_BOOL) :: conversion_by_netcdf_tmp 
    372424      REAL (KIND=8) , OPTIONAL, INTENT(OUT) :: default_value 
    373425      LOGICAL  , OPTIONAL, INTENT(OUT) :: detect_missing_value 
     
    405457      (fieldgroup_id,fieldgroup_hdl) 
    406458      CALL xios(get_fieldgroup_attr_hdl_)   & 
    407       ( fieldgroup_hdl, add_offset, axis_ref, cell_methods, cell_methods_mode, check_if_active, comment  & 
    408       , compression_level, default_value, detect_missing_value, domain_ref, enabled, expr, field_ref  & 
    409       , freq_offset, freq_op, grid_path, grid_ref, group_ref, indexed_output, level, long_name, name  & 
    410       , operation, prec, read_access, scalar_ref, scale_factor, standard_name, ts_enabled, ts_split_freq  & 
    411       , unit, valid_max, valid_min ) 
     459      ( fieldgroup_hdl, add_offset, axis_ref, build_workflow_graph, build_workflow_graph_end, build_workflow_graph_start  & 
     460      , cell_methods, cell_methods_mode, check_if_active, comment, compression_level, conversion_by_netcdf  & 
     461      , default_value, detect_missing_value, domain_ref, enabled, expr, field_ref, freq_offset, freq_op  & 
     462      , grid_path, grid_ref, group_ref, indexed_output, level, long_name, name, operation, prec, read_access  & 
     463      , scalar_ref, scale_factor, standard_name, ts_enabled, ts_split_freq, unit, valid_max, valid_min  & 
     464       ) 
    412465 
    413466  END SUBROUTINE xios(get_fieldgroup_attr) 
    414467 
    415468  SUBROUTINE xios(get_fieldgroup_attr_hdl)  & 
    416     ( fieldgroup_hdl, add_offset, axis_ref, cell_methods, cell_methods_mode, check_if_active, comment  & 
    417     , compression_level, default_value, detect_missing_value, domain_ref, enabled, expr, field_ref  & 
    418     , freq_offset, freq_op, grid_path, grid_ref, group_ref, indexed_output, level, long_name, name  & 
    419     , operation, prec, read_access, scalar_ref, scale_factor, standard_name, ts_enabled, ts_split_freq  & 
    420     , unit, valid_max, valid_min ) 
     469    ( fieldgroup_hdl, add_offset, axis_ref, build_workflow_graph, build_workflow_graph_end, build_workflow_graph_start  & 
     470    , cell_methods, cell_methods_mode, check_if_active, comment, compression_level, conversion_by_netcdf  & 
     471    , default_value, detect_missing_value, domain_ref, enabled, expr, field_ref, freq_offset, freq_op  & 
     472    , grid_path, grid_ref, group_ref, indexed_output, level, long_name, name, operation, prec, read_access  & 
     473    , scalar_ref, scale_factor, standard_name, ts_enabled, ts_split_freq, unit, valid_max, valid_min  & 
     474     ) 
    421475 
    422476    IMPLICIT NONE 
     
    424478      REAL (KIND=8) , OPTIONAL, INTENT(OUT) :: add_offset 
    425479      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: axis_ref 
     480      LOGICAL  , OPTIONAL, INTENT(OUT) :: build_workflow_graph 
     481      LOGICAL (KIND=C_BOOL) :: build_workflow_graph_tmp 
     482      TYPE(txios(duration))  , OPTIONAL, INTENT(OUT) :: build_workflow_graph_end 
     483      TYPE(txios(duration))  , OPTIONAL, INTENT(OUT) :: build_workflow_graph_start 
    426484      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: cell_methods 
    427485      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: cell_methods_mode 
     
    430488      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: comment 
    431489      INTEGER  , OPTIONAL, INTENT(OUT) :: compression_level 
     490      LOGICAL  , OPTIONAL, INTENT(OUT) :: conversion_by_netcdf 
     491      LOGICAL (KIND=C_BOOL) :: conversion_by_netcdf_tmp 
    432492      REAL (KIND=8) , OPTIONAL, INTENT(OUT) :: default_value 
    433493      LOGICAL  , OPTIONAL, INTENT(OUT) :: detect_missing_value 
     
    463523 
    464524      CALL xios(get_fieldgroup_attr_hdl_)  & 
    465       ( fieldgroup_hdl, add_offset, axis_ref, cell_methods, cell_methods_mode, check_if_active, comment  & 
    466       , compression_level, default_value, detect_missing_value, domain_ref, enabled, expr, field_ref  & 
    467       , freq_offset, freq_op, grid_path, grid_ref, group_ref, indexed_output, level, long_name, name  & 
    468       , operation, prec, read_access, scalar_ref, scale_factor, standard_name, ts_enabled, ts_split_freq  & 
    469       , unit, valid_max, valid_min ) 
     525      ( fieldgroup_hdl, add_offset, axis_ref, build_workflow_graph, build_workflow_graph_end, build_workflow_graph_start  & 
     526      , cell_methods, cell_methods_mode, check_if_active, comment, compression_level, conversion_by_netcdf  & 
     527      , default_value, detect_missing_value, domain_ref, enabled, expr, field_ref, freq_offset, freq_op  & 
     528      , grid_path, grid_ref, group_ref, indexed_output, level, long_name, name, operation, prec, read_access  & 
     529      , scalar_ref, scale_factor, standard_name, ts_enabled, ts_split_freq, unit, valid_max, valid_min  & 
     530       ) 
    470531 
    471532  END SUBROUTINE xios(get_fieldgroup_attr_hdl) 
    472533 
    473534  SUBROUTINE xios(get_fieldgroup_attr_hdl_)   & 
    474     ( fieldgroup_hdl, add_offset_, axis_ref_, cell_methods_, cell_methods_mode_, check_if_active_  & 
    475     , comment_, compression_level_, default_value_, detect_missing_value_, domain_ref_, enabled_  & 
    476     , expr_, field_ref_, freq_offset_, freq_op_, grid_path_, grid_ref_, group_ref_, indexed_output_  & 
    477     , level_, long_name_, name_, operation_, prec_, read_access_, scalar_ref_, scale_factor_, standard_name_  & 
    478     , ts_enabled_, ts_split_freq_, unit_, valid_max_, valid_min_ ) 
     535    ( fieldgroup_hdl, add_offset_, axis_ref_, build_workflow_graph_, build_workflow_graph_end_, build_workflow_graph_start_  & 
     536    , cell_methods_, cell_methods_mode_, check_if_active_, comment_, compression_level_, conversion_by_netcdf_  & 
     537    , default_value_, detect_missing_value_, domain_ref_, enabled_, expr_, field_ref_, freq_offset_  & 
     538    , freq_op_, grid_path_, grid_ref_, group_ref_, indexed_output_, level_, long_name_, name_, operation_  & 
     539    , prec_, read_access_, scalar_ref_, scale_factor_, standard_name_, ts_enabled_, ts_split_freq_  & 
     540    , unit_, valid_max_, valid_min_ ) 
    479541 
    480542    IMPLICIT NONE 
     
    482544      REAL (KIND=8) , OPTIONAL, INTENT(OUT) :: add_offset_ 
    483545      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: axis_ref_ 
     546      LOGICAL  , OPTIONAL, INTENT(OUT) :: build_workflow_graph_ 
     547      LOGICAL (KIND=C_BOOL) :: build_workflow_graph__tmp 
     548      TYPE(txios(duration))  , OPTIONAL, INTENT(OUT) :: build_workflow_graph_end_ 
     549      TYPE(txios(duration))  , OPTIONAL, INTENT(OUT) :: build_workflow_graph_start_ 
    484550      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: cell_methods_ 
    485551      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: cell_methods_mode_ 
     
    488554      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: comment_ 
    489555      INTEGER  , OPTIONAL, INTENT(OUT) :: compression_level_ 
     556      LOGICAL  , OPTIONAL, INTENT(OUT) :: conversion_by_netcdf_ 
     557      LOGICAL (KIND=C_BOOL) :: conversion_by_netcdf__tmp 
    490558      REAL (KIND=8) , OPTIONAL, INTENT(OUT) :: default_value_ 
    491559      LOGICAL  , OPTIONAL, INTENT(OUT) :: detect_missing_value_ 
     
    530598      ENDIF 
    531599 
     600      IF (PRESENT(build_workflow_graph_)) THEN 
     601        CALL cxios_get_fieldgroup_build_workflow_graph & 
     602      (fieldgroup_hdl%daddr, build_workflow_graph__tmp) 
     603        build_workflow_graph_ = build_workflow_graph__tmp 
     604      ENDIF 
     605 
     606      IF (PRESENT(build_workflow_graph_end_)) THEN 
     607        CALL cxios_get_fieldgroup_build_workflow_graph_end & 
     608      (fieldgroup_hdl%daddr, build_workflow_graph_end_) 
     609      ENDIF 
     610 
     611      IF (PRESENT(build_workflow_graph_start_)) THEN 
     612        CALL cxios_get_fieldgroup_build_workflow_graph_start & 
     613      (fieldgroup_hdl%daddr, build_workflow_graph_start_) 
     614      ENDIF 
     615 
    532616      IF (PRESENT(cell_methods_)) THEN 
    533617        CALL cxios_get_fieldgroup_cell_methods & 
     
    556640      ENDIF 
    557641 
     642      IF (PRESENT(conversion_by_netcdf_)) THEN 
     643        CALL cxios_get_fieldgroup_conversion_by_netcdf & 
     644      (fieldgroup_hdl%daddr, conversion_by_netcdf__tmp) 
     645        conversion_by_netcdf_ = conversion_by_netcdf__tmp 
     646      ENDIF 
     647 
    558648      IF (PRESENT(default_value_)) THEN 
    559649        CALL cxios_get_fieldgroup_default_value & 
     
    694784 
    695785  SUBROUTINE xios(is_defined_fieldgroup_attr)  & 
    696     ( fieldgroup_id, add_offset, axis_ref, cell_methods, cell_methods_mode, check_if_active, comment  & 
    697     , compression_level, default_value, detect_missing_value, domain_ref, enabled, expr, field_ref  & 
    698     , freq_offset, freq_op, grid_path, grid_ref, group_ref, indexed_output, level, long_name, name  & 
    699     , operation, prec, read_access, scalar_ref, scale_factor, standard_name, ts_enabled, ts_split_freq  & 
    700     , unit, valid_max, valid_min ) 
     786    ( fieldgroup_id, add_offset, axis_ref, build_workflow_graph, build_workflow_graph_end, build_workflow_graph_start  & 
     787    , cell_methods, cell_methods_mode, check_if_active, comment, compression_level, conversion_by_netcdf  & 
     788    , default_value, detect_missing_value, domain_ref, enabled, expr, field_ref, freq_offset, freq_op  & 
     789    , grid_path, grid_ref, group_ref, indexed_output, level, long_name, name, operation, prec, read_access  & 
     790    , scalar_ref, scale_factor, standard_name, ts_enabled, ts_split_freq, unit, valid_max, valid_min  & 
     791     ) 
    701792 
    702793    IMPLICIT NONE 
     
    707798      LOGICAL, OPTIONAL, INTENT(OUT) :: axis_ref 
    708799      LOGICAL(KIND=C_BOOL) :: axis_ref_tmp 
     800      LOGICAL, OPTIONAL, INTENT(OUT) :: build_workflow_graph 
     801      LOGICAL(KIND=C_BOOL) :: build_workflow_graph_tmp 
     802      LOGICAL, OPTIONAL, INTENT(OUT) :: build_workflow_graph_end 
     803      LOGICAL(KIND=C_BOOL) :: build_workflow_graph_end_tmp 
     804      LOGICAL, OPTIONAL, INTENT(OUT) :: build_workflow_graph_start 
     805      LOGICAL(KIND=C_BOOL) :: build_workflow_graph_start_tmp 
    709806      LOGICAL, OPTIONAL, INTENT(OUT) :: cell_methods 
    710807      LOGICAL(KIND=C_BOOL) :: cell_methods_tmp 
     
    717814      LOGICAL, OPTIONAL, INTENT(OUT) :: compression_level 
    718815      LOGICAL(KIND=C_BOOL) :: compression_level_tmp 
     816      LOGICAL, OPTIONAL, INTENT(OUT) :: conversion_by_netcdf 
     817      LOGICAL(KIND=C_BOOL) :: conversion_by_netcdf_tmp 
    719818      LOGICAL, OPTIONAL, INTENT(OUT) :: default_value 
    720819      LOGICAL(KIND=C_BOOL) :: default_value_tmp 
     
    773872      (fieldgroup_id,fieldgroup_hdl) 
    774873      CALL xios(is_defined_fieldgroup_attr_hdl_)   & 
    775       ( fieldgroup_hdl, add_offset, axis_ref, cell_methods, cell_methods_mode, check_if_active, comment  & 
    776       , compression_level, default_value, detect_missing_value, domain_ref, enabled, expr, field_ref  & 
    777       , freq_offset, freq_op, grid_path, grid_ref, group_ref, indexed_output, level, long_name, name  & 
    778       , operation, prec, read_access, scalar_ref, scale_factor, standard_name, ts_enabled, ts_split_freq  & 
    779       , unit, valid_max, valid_min ) 
     874      ( fieldgroup_hdl, add_offset, axis_ref, build_workflow_graph, build_workflow_graph_end, build_workflow_graph_start  & 
     875      , cell_methods, cell_methods_mode, check_if_active, comment, compression_level, conversion_by_netcdf  & 
     876      , default_value, detect_missing_value, domain_ref, enabled, expr, field_ref, freq_offset, freq_op  & 
     877      , grid_path, grid_ref, group_ref, indexed_output, level, long_name, name, operation, prec, read_access  & 
     878      , scalar_ref, scale_factor, standard_name, ts_enabled, ts_split_freq, unit, valid_max, valid_min  & 
     879       ) 
    780880 
    781881  END SUBROUTINE xios(is_defined_fieldgroup_attr) 
    782882 
    783883  SUBROUTINE xios(is_defined_fieldgroup_attr_hdl)  & 
    784     ( fieldgroup_hdl, add_offset, axis_ref, cell_methods, cell_methods_mode, check_if_active, comment  & 
    785     , compression_level, default_value, detect_missing_value, domain_ref, enabled, expr, field_ref  & 
    786     , freq_offset, freq_op, grid_path, grid_ref, group_ref, indexed_output, level, long_name, name  & 
    787     , operation, prec, read_access, scalar_ref, scale_factor, standard_name, ts_enabled, ts_split_freq  & 
    788     , unit, valid_max, valid_min ) 
     884    ( fieldgroup_hdl, add_offset, axis_ref, build_workflow_graph, build_workflow_graph_end, build_workflow_graph_start  & 
     885    , cell_methods, cell_methods_mode, check_if_active, comment, compression_level, conversion_by_netcdf  & 
     886    , default_value, detect_missing_value, domain_ref, enabled, expr, field_ref, freq_offset, freq_op  & 
     887    , grid_path, grid_ref, group_ref, indexed_output, level, long_name, name, operation, prec, read_access  & 
     888    , scalar_ref, scale_factor, standard_name, ts_enabled, ts_split_freq, unit, valid_max, valid_min  & 
     889     ) 
    789890 
    790891    IMPLICIT NONE 
     
    794895      LOGICAL, OPTIONAL, INTENT(OUT) :: axis_ref 
    795896      LOGICAL(KIND=C_BOOL) :: axis_ref_tmp 
     897      LOGICAL, OPTIONAL, INTENT(OUT) :: build_workflow_graph 
     898      LOGICAL(KIND=C_BOOL) :: build_workflow_graph_tmp 
     899      LOGICAL, OPTIONAL, INTENT(OUT) :: build_workflow_graph_end 
     900      LOGICAL(KIND=C_BOOL) :: build_workflow_graph_end_tmp 
     901      LOGICAL, OPTIONAL, INTENT(OUT) :: build_workflow_graph_start 
     902      LOGICAL(KIND=C_BOOL) :: build_workflow_graph_start_tmp 
    796903      LOGICAL, OPTIONAL, INTENT(OUT) :: cell_methods 
    797904      LOGICAL(KIND=C_BOOL) :: cell_methods_tmp 
     
    804911      LOGICAL, OPTIONAL, INTENT(OUT) :: compression_level 
    805912      LOGICAL(KIND=C_BOOL) :: compression_level_tmp 
     913      LOGICAL, OPTIONAL, INTENT(OUT) :: conversion_by_netcdf 
     914      LOGICAL(KIND=C_BOOL) :: conversion_by_netcdf_tmp 
    806915      LOGICAL, OPTIONAL, INTENT(OUT) :: default_value 
    807916      LOGICAL(KIND=C_BOOL) :: default_value_tmp 
     
    858967 
    859968      CALL xios(is_defined_fieldgroup_attr_hdl_)  & 
    860       ( fieldgroup_hdl, add_offset, axis_ref, cell_methods, cell_methods_mode, check_if_active, comment  & 
    861       , compression_level, default_value, detect_missing_value, domain_ref, enabled, expr, field_ref  & 
    862       , freq_offset, freq_op, grid_path, grid_ref, group_ref, indexed_output, level, long_name, name  & 
    863       , operation, prec, read_access, scalar_ref, scale_factor, standard_name, ts_enabled, ts_split_freq  & 
    864       , unit, valid_max, valid_min ) 
     969      ( fieldgroup_hdl, add_offset, axis_ref, build_workflow_graph, build_workflow_graph_end, build_workflow_graph_start  & 
     970      , cell_methods, cell_methods_mode, check_if_active, comment, compression_level, conversion_by_netcdf  & 
     971      , default_value, detect_missing_value, domain_ref, enabled, expr, field_ref, freq_offset, freq_op  & 
     972      , grid_path, grid_ref, group_ref, indexed_output, level, long_name, name, operation, prec, read_access  & 
     973      , scalar_ref, scale_factor, standard_name, ts_enabled, ts_split_freq, unit, valid_max, valid_min  & 
     974       ) 
    865975 
    866976  END SUBROUTINE xios(is_defined_fieldgroup_attr_hdl) 
    867977 
    868978  SUBROUTINE xios(is_defined_fieldgroup_attr_hdl_)   & 
    869     ( fieldgroup_hdl, add_offset_, axis_ref_, cell_methods_, cell_methods_mode_, check_if_active_  & 
    870     , comment_, compression_level_, default_value_, detect_missing_value_, domain_ref_, enabled_  & 
    871     , expr_, field_ref_, freq_offset_, freq_op_, grid_path_, grid_ref_, group_ref_, indexed_output_  & 
    872     , level_, long_name_, name_, operation_, prec_, read_access_, scalar_ref_, scale_factor_, standard_name_  & 
    873     , ts_enabled_, ts_split_freq_, unit_, valid_max_, valid_min_ ) 
     979    ( fieldgroup_hdl, add_offset_, axis_ref_, build_workflow_graph_, build_workflow_graph_end_, build_workflow_graph_start_  & 
     980    , cell_methods_, cell_methods_mode_, check_if_active_, comment_, compression_level_, conversion_by_netcdf_  & 
     981    , default_value_, detect_missing_value_, domain_ref_, enabled_, expr_, field_ref_, freq_offset_  & 
     982    , freq_op_, grid_path_, grid_ref_, group_ref_, indexed_output_, level_, long_name_, name_, operation_  & 
     983    , prec_, read_access_, scalar_ref_, scale_factor_, standard_name_, ts_enabled_, ts_split_freq_  & 
     984    , unit_, valid_max_, valid_min_ ) 
    874985 
    875986    IMPLICIT NONE 
     
    879990      LOGICAL, OPTIONAL, INTENT(OUT) :: axis_ref_ 
    880991      LOGICAL(KIND=C_BOOL) :: axis_ref__tmp 
     992      LOGICAL, OPTIONAL, INTENT(OUT) :: build_workflow_graph_ 
     993      LOGICAL(KIND=C_BOOL) :: build_workflow_graph__tmp 
     994      LOGICAL, OPTIONAL, INTENT(OUT) :: build_workflow_graph_end_ 
     995      LOGICAL(KIND=C_BOOL) :: build_workflow_graph_end__tmp 
     996      LOGICAL, OPTIONAL, INTENT(OUT) :: build_workflow_graph_start_ 
     997      LOGICAL(KIND=C_BOOL) :: build_workflow_graph_start__tmp 
    881998      LOGICAL, OPTIONAL, INTENT(OUT) :: cell_methods_ 
    882999      LOGICAL(KIND=C_BOOL) :: cell_methods__tmp 
     
    8891006      LOGICAL, OPTIONAL, INTENT(OUT) :: compression_level_ 
    8901007      LOGICAL(KIND=C_BOOL) :: compression_level__tmp 
     1008      LOGICAL, OPTIONAL, INTENT(OUT) :: conversion_by_netcdf_ 
     1009      LOGICAL(KIND=C_BOOL) :: conversion_by_netcdf__tmp 
    8911010      LOGICAL, OPTIONAL, INTENT(OUT) :: default_value_ 
    8921011      LOGICAL(KIND=C_BOOL) :: default_value__tmp 
     
    9541073      ENDIF 
    9551074 
     1075      IF (PRESENT(build_workflow_graph_)) THEN 
     1076        build_workflow_graph__tmp = cxios_is_defined_fieldgroup_build_workflow_graph & 
     1077      (fieldgroup_hdl%daddr) 
     1078        build_workflow_graph_ = build_workflow_graph__tmp 
     1079      ENDIF 
     1080 
     1081      IF (PRESENT(build_workflow_graph_end_)) THEN 
     1082        build_workflow_graph_end__tmp = cxios_is_defined_fieldgroup_build_workflow_graph_end & 
     1083      (fieldgroup_hdl%daddr) 
     1084        build_workflow_graph_end_ = build_workflow_graph_end__tmp 
     1085      ENDIF 
     1086 
     1087      IF (PRESENT(build_workflow_graph_start_)) THEN 
     1088        build_workflow_graph_start__tmp = cxios_is_defined_fieldgroup_build_workflow_graph_start & 
     1089      (fieldgroup_hdl%daddr) 
     1090        build_workflow_graph_start_ = build_workflow_graph_start__tmp 
     1091      ENDIF 
     1092 
    9561093      IF (PRESENT(cell_methods_)) THEN 
    9571094        cell_methods__tmp = cxios_is_defined_fieldgroup_cell_methods & 
     
    9841121      ENDIF 
    9851122 
     1123      IF (PRESENT(conversion_by_netcdf_)) THEN 
     1124        conversion_by_netcdf__tmp = cxios_is_defined_fieldgroup_conversion_by_netcdf & 
     1125      (fieldgroup_hdl%daddr) 
     1126        conversion_by_netcdf_ = conversion_by_netcdf__tmp 
     1127      ENDIF 
     1128 
    9861129      IF (PRESENT(default_value_)) THEN 
    9871130        default_value__tmp = cxios_is_defined_fieldgroup_default_value & 
  • XIOS2/trunk/src/interface/fortran_attr/iinterpolate_axis_attr.F90

    r966 r2618  
    1212 
    1313  SUBROUTINE xios(set_interpolate_axis_attr)  & 
    14     ( interpolate_axis_id, coordinate, order, type ) 
     14    ( interpolate_axis_id, coordinate, coordinate_dst, coordinate_src, extrapolate, order, type  & 
     15     ) 
    1516 
    1617    IMPLICIT NONE 
     
    1819      CHARACTER(LEN=*), INTENT(IN) ::interpolate_axis_id 
    1920      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: coordinate 
     21      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: coordinate_dst 
     22      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: coordinate_src 
     23      LOGICAL  , OPTIONAL, INTENT(IN) :: extrapolate 
     24      LOGICAL (KIND=C_BOOL) :: extrapolate_tmp 
    2025      INTEGER  , OPTIONAL, INTENT(IN) :: order 
    2126      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: type 
     
    2429      (interpolate_axis_id,interpolate_axis_hdl) 
    2530      CALL xios(set_interpolate_axis_attr_hdl_)   & 
    26       ( interpolate_axis_hdl, coordinate, order, type ) 
     31      ( interpolate_axis_hdl, coordinate, coordinate_dst, coordinate_src, extrapolate, order, type  & 
     32       ) 
    2733 
    2834  END SUBROUTINE xios(set_interpolate_axis_attr) 
    2935 
    3036  SUBROUTINE xios(set_interpolate_axis_attr_hdl)  & 
    31     ( interpolate_axis_hdl, coordinate, order, type ) 
     37    ( interpolate_axis_hdl, coordinate, coordinate_dst, coordinate_src, extrapolate, order, type  & 
     38     ) 
    3239 
    3340    IMPLICIT NONE 
    3441      TYPE(txios(interpolate_axis)) , INTENT(IN) :: interpolate_axis_hdl 
    3542      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: coordinate 
     43      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: coordinate_dst 
     44      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: coordinate_src 
     45      LOGICAL  , OPTIONAL, INTENT(IN) :: extrapolate 
     46      LOGICAL (KIND=C_BOOL) :: extrapolate_tmp 
    3647      INTEGER  , OPTIONAL, INTENT(IN) :: order 
    3748      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: type 
    3849 
    3950      CALL xios(set_interpolate_axis_attr_hdl_)  & 
    40       ( interpolate_axis_hdl, coordinate, order, type ) 
     51      ( interpolate_axis_hdl, coordinate, coordinate_dst, coordinate_src, extrapolate, order, type  & 
     52       ) 
    4153 
    4254  END SUBROUTINE xios(set_interpolate_axis_attr_hdl) 
    4355 
    4456  SUBROUTINE xios(set_interpolate_axis_attr_hdl_)   & 
    45     ( interpolate_axis_hdl, coordinate_, order_, type_ ) 
     57    ( interpolate_axis_hdl, coordinate_, coordinate_dst_, coordinate_src_, extrapolate_, order_  & 
     58    , type_ ) 
    4659 
    4760    IMPLICIT NONE 
    4861      TYPE(txios(interpolate_axis)) , INTENT(IN) :: interpolate_axis_hdl 
    4962      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: coordinate_ 
     63      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: coordinate_dst_ 
     64      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: coordinate_src_ 
     65      LOGICAL  , OPTIONAL, INTENT(IN) :: extrapolate_ 
     66      LOGICAL (KIND=C_BOOL) :: extrapolate__tmp 
    5067      INTEGER  , OPTIONAL, INTENT(IN) :: order_ 
    5168      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: type_ 
     
    5673      ENDIF 
    5774 
     75      IF (PRESENT(coordinate_dst_)) THEN 
     76        CALL cxios_set_interpolate_axis_coordinate_dst & 
     77      (interpolate_axis_hdl%daddr, coordinate_dst_, len(coordinate_dst_)) 
     78      ENDIF 
     79 
     80      IF (PRESENT(coordinate_src_)) THEN 
     81        CALL cxios_set_interpolate_axis_coordinate_src & 
     82      (interpolate_axis_hdl%daddr, coordinate_src_, len(coordinate_src_)) 
     83      ENDIF 
     84 
     85      IF (PRESENT(extrapolate_)) THEN 
     86        extrapolate__tmp = extrapolate_ 
     87        CALL cxios_set_interpolate_axis_extrapolate & 
     88      (interpolate_axis_hdl%daddr, extrapolate__tmp) 
     89      ENDIF 
     90 
    5891      IF (PRESENT(order_)) THEN 
    5992        CALL cxios_set_interpolate_axis_order & 
     
    69102 
    70103  SUBROUTINE xios(get_interpolate_axis_attr)  & 
    71     ( interpolate_axis_id, coordinate, order, type ) 
     104    ( interpolate_axis_id, coordinate, coordinate_dst, coordinate_src, extrapolate, order, type  & 
     105     ) 
    72106 
    73107    IMPLICIT NONE 
     
    75109      CHARACTER(LEN=*), INTENT(IN) ::interpolate_axis_id 
    76110      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: coordinate 
     111      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: coordinate_dst 
     112      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: coordinate_src 
     113      LOGICAL  , OPTIONAL, INTENT(OUT) :: extrapolate 
     114      LOGICAL (KIND=C_BOOL) :: extrapolate_tmp 
    77115      INTEGER  , OPTIONAL, INTENT(OUT) :: order 
    78116      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: type 
     
    81119      (interpolate_axis_id,interpolate_axis_hdl) 
    82120      CALL xios(get_interpolate_axis_attr_hdl_)   & 
    83       ( interpolate_axis_hdl, coordinate, order, type ) 
     121      ( interpolate_axis_hdl, coordinate, coordinate_dst, coordinate_src, extrapolate, order, type  & 
     122       ) 
    84123 
    85124  END SUBROUTINE xios(get_interpolate_axis_attr) 
    86125 
    87126  SUBROUTINE xios(get_interpolate_axis_attr_hdl)  & 
    88     ( interpolate_axis_hdl, coordinate, order, type ) 
     127    ( interpolate_axis_hdl, coordinate, coordinate_dst, coordinate_src, extrapolate, order, type  & 
     128     ) 
    89129 
    90130    IMPLICIT NONE 
    91131      TYPE(txios(interpolate_axis)) , INTENT(IN) :: interpolate_axis_hdl 
    92132      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: coordinate 
     133      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: coordinate_dst 
     134      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: coordinate_src 
     135      LOGICAL  , OPTIONAL, INTENT(OUT) :: extrapolate 
     136      LOGICAL (KIND=C_BOOL) :: extrapolate_tmp 
    93137      INTEGER  , OPTIONAL, INTENT(OUT) :: order 
    94138      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: type 
    95139 
    96140      CALL xios(get_interpolate_axis_attr_hdl_)  & 
    97       ( interpolate_axis_hdl, coordinate, order, type ) 
     141      ( interpolate_axis_hdl, coordinate, coordinate_dst, coordinate_src, extrapolate, order, type  & 
     142       ) 
    98143 
    99144  END SUBROUTINE xios(get_interpolate_axis_attr_hdl) 
    100145 
    101146  SUBROUTINE xios(get_interpolate_axis_attr_hdl_)   & 
    102     ( interpolate_axis_hdl, coordinate_, order_, type_ ) 
     147    ( interpolate_axis_hdl, coordinate_, coordinate_dst_, coordinate_src_, extrapolate_, order_  & 
     148    , type_ ) 
    103149 
    104150    IMPLICIT NONE 
    105151      TYPE(txios(interpolate_axis)) , INTENT(IN) :: interpolate_axis_hdl 
    106152      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: coordinate_ 
     153      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: coordinate_dst_ 
     154      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: coordinate_src_ 
     155      LOGICAL  , OPTIONAL, INTENT(OUT) :: extrapolate_ 
     156      LOGICAL (KIND=C_BOOL) :: extrapolate__tmp 
    107157      INTEGER  , OPTIONAL, INTENT(OUT) :: order_ 
    108158      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: type_ 
     
    113163      ENDIF 
    114164 
     165      IF (PRESENT(coordinate_dst_)) THEN 
     166        CALL cxios_get_interpolate_axis_coordinate_dst & 
     167      (interpolate_axis_hdl%daddr, coordinate_dst_, len(coordinate_dst_)) 
     168      ENDIF 
     169 
     170      IF (PRESENT(coordinate_src_)) THEN 
     171        CALL cxios_get_interpolate_axis_coordinate_src & 
     172      (interpolate_axis_hdl%daddr, coordinate_src_, len(coordinate_src_)) 
     173      ENDIF 
     174 
     175      IF (PRESENT(extrapolate_)) THEN 
     176        CALL cxios_get_interpolate_axis_extrapolate & 
     177      (interpolate_axis_hdl%daddr, extrapolate__tmp) 
     178        extrapolate_ = extrapolate__tmp 
     179      ENDIF 
     180 
    115181      IF (PRESENT(order_)) THEN 
    116182        CALL cxios_get_interpolate_axis_order & 
     
    126192 
    127193  SUBROUTINE xios(is_defined_interpolate_axis_attr)  & 
    128     ( interpolate_axis_id, coordinate, order, type ) 
     194    ( interpolate_axis_id, coordinate, coordinate_dst, coordinate_src, extrapolate, order, type  & 
     195     ) 
    129196 
    130197    IMPLICIT NONE 
     
    133200      LOGICAL, OPTIONAL, INTENT(OUT) :: coordinate 
    134201      LOGICAL(KIND=C_BOOL) :: coordinate_tmp 
     202      LOGICAL, OPTIONAL, INTENT(OUT) :: coordinate_dst 
     203      LOGICAL(KIND=C_BOOL) :: coordinate_dst_tmp 
     204      LOGICAL, OPTIONAL, INTENT(OUT) :: coordinate_src 
     205      LOGICAL(KIND=C_BOOL) :: coordinate_src_tmp 
     206      LOGICAL, OPTIONAL, INTENT(OUT) :: extrapolate 
     207      LOGICAL(KIND=C_BOOL) :: extrapolate_tmp 
    135208      LOGICAL, OPTIONAL, INTENT(OUT) :: order 
    136209      LOGICAL(KIND=C_BOOL) :: order_tmp 
     
    141214      (interpolate_axis_id,interpolate_axis_hdl) 
    142215      CALL xios(is_defined_interpolate_axis_attr_hdl_)   & 
    143       ( interpolate_axis_hdl, coordinate, order, type ) 
     216      ( interpolate_axis_hdl, coordinate, coordinate_dst, coordinate_src, extrapolate, order, type  & 
     217       ) 
    144218 
    145219  END SUBROUTINE xios(is_defined_interpolate_axis_attr) 
    146220 
    147221  SUBROUTINE xios(is_defined_interpolate_axis_attr_hdl)  & 
    148     ( interpolate_axis_hdl, coordinate, order, type ) 
     222    ( interpolate_axis_hdl, coordinate, coordinate_dst, coordinate_src, extrapolate, order, type  & 
     223     ) 
    149224 
    150225    IMPLICIT NONE 
     
    152227      LOGICAL, OPTIONAL, INTENT(OUT) :: coordinate 
    153228      LOGICAL(KIND=C_BOOL) :: coordinate_tmp 
     229      LOGICAL, OPTIONAL, INTENT(OUT) :: coordinate_dst 
     230      LOGICAL(KIND=C_BOOL) :: coordinate_dst_tmp 
     231      LOGICAL, OPTIONAL, INTENT(OUT) :: coordinate_src 
     232      LOGICAL(KIND=C_BOOL) :: coordinate_src_tmp 
     233      LOGICAL, OPTIONAL, INTENT(OUT) :: extrapolate 
     234      LOGICAL(KIND=C_BOOL) :: extrapolate_tmp 
    154235      LOGICAL, OPTIONAL, INTENT(OUT) :: order 
    155236      LOGICAL(KIND=C_BOOL) :: order_tmp 
     
    158239 
    159240      CALL xios(is_defined_interpolate_axis_attr_hdl_)  & 
    160       ( interpolate_axis_hdl, coordinate, order, type ) 
     241      ( interpolate_axis_hdl, coordinate, coordinate_dst, coordinate_src, extrapolate, order, type  & 
     242       ) 
    161243 
    162244  END SUBROUTINE xios(is_defined_interpolate_axis_attr_hdl) 
    163245 
    164246  SUBROUTINE xios(is_defined_interpolate_axis_attr_hdl_)   & 
    165     ( interpolate_axis_hdl, coordinate_, order_, type_ ) 
     247    ( interpolate_axis_hdl, coordinate_, coordinate_dst_, coordinate_src_, extrapolate_, order_  & 
     248    , type_ ) 
    166249 
    167250    IMPLICIT NONE 
     
    169252      LOGICAL, OPTIONAL, INTENT(OUT) :: coordinate_ 
    170253      LOGICAL(KIND=C_BOOL) :: coordinate__tmp 
     254      LOGICAL, OPTIONAL, INTENT(OUT) :: coordinate_dst_ 
     255      LOGICAL(KIND=C_BOOL) :: coordinate_dst__tmp 
     256      LOGICAL, OPTIONAL, INTENT(OUT) :: coordinate_src_ 
     257      LOGICAL(KIND=C_BOOL) :: coordinate_src__tmp 
     258      LOGICAL, OPTIONAL, INTENT(OUT) :: extrapolate_ 
     259      LOGICAL(KIND=C_BOOL) :: extrapolate__tmp 
    171260      LOGICAL, OPTIONAL, INTENT(OUT) :: order_ 
    172261      LOGICAL(KIND=C_BOOL) :: order__tmp 
     
    180269      ENDIF 
    181270 
     271      IF (PRESENT(coordinate_dst_)) THEN 
     272        coordinate_dst__tmp = cxios_is_defined_interpolate_axis_coordinate_dst & 
     273      (interpolate_axis_hdl%daddr) 
     274        coordinate_dst_ = coordinate_dst__tmp 
     275      ENDIF 
     276 
     277      IF (PRESENT(coordinate_src_)) THEN 
     278        coordinate_src__tmp = cxios_is_defined_interpolate_axis_coordinate_src & 
     279      (interpolate_axis_hdl%daddr) 
     280        coordinate_src_ = coordinate_src__tmp 
     281      ENDIF 
     282 
     283      IF (PRESENT(extrapolate_)) THEN 
     284        extrapolate__tmp = cxios_is_defined_interpolate_axis_extrapolate & 
     285      (interpolate_axis_hdl%daddr) 
     286        extrapolate_ = extrapolate__tmp 
     287      ENDIF 
     288 
    182289      IF (PRESENT(order_)) THEN 
    183290        order__tmp = cxios_is_defined_interpolate_axis_order & 
  • XIOS2/trunk/src/interface/fortran_attr/interpolate_axis_interface_attr.F90

    r891 r2618  
    2929      INTEGER (kind = C_INTPTR_T), VALUE :: interpolate_axis_hdl 
    3030    END FUNCTION cxios_is_defined_interpolate_axis_coordinate 
     31 
     32 
     33    SUBROUTINE cxios_set_interpolate_axis_coordinate_dst(interpolate_axis_hdl, coordinate_dst, coordinate_dst_size) BIND(C) 
     34      USE ISO_C_BINDING 
     35      INTEGER (kind = C_INTPTR_T), VALUE :: interpolate_axis_hdl 
     36      CHARACTER(kind = C_CHAR)    , DIMENSION(*) :: coordinate_dst 
     37      INTEGER  (kind = C_INT)     , VALUE        :: coordinate_dst_size 
     38    END SUBROUTINE cxios_set_interpolate_axis_coordinate_dst 
     39 
     40    SUBROUTINE cxios_get_interpolate_axis_coordinate_dst(interpolate_axis_hdl, coordinate_dst, coordinate_dst_size) BIND(C) 
     41      USE ISO_C_BINDING 
     42      INTEGER (kind = C_INTPTR_T), VALUE :: interpolate_axis_hdl 
     43      CHARACTER(kind = C_CHAR)    , DIMENSION(*) :: coordinate_dst 
     44      INTEGER  (kind = C_INT)     , VALUE        :: coordinate_dst_size 
     45    END SUBROUTINE cxios_get_interpolate_axis_coordinate_dst 
     46 
     47    FUNCTION cxios_is_defined_interpolate_axis_coordinate_dst(interpolate_axis_hdl) BIND(C) 
     48      USE ISO_C_BINDING 
     49      LOGICAL(kind=C_BOOL) :: cxios_is_defined_interpolate_axis_coordinate_dst 
     50      INTEGER (kind = C_INTPTR_T), VALUE :: interpolate_axis_hdl 
     51    END FUNCTION cxios_is_defined_interpolate_axis_coordinate_dst 
     52 
     53 
     54    SUBROUTINE cxios_set_interpolate_axis_coordinate_src(interpolate_axis_hdl, coordinate_src, coordinate_src_size) BIND(C) 
     55      USE ISO_C_BINDING 
     56      INTEGER (kind = C_INTPTR_T), VALUE :: interpolate_axis_hdl 
     57      CHARACTER(kind = C_CHAR)    , DIMENSION(*) :: coordinate_src 
     58      INTEGER  (kind = C_INT)     , VALUE        :: coordinate_src_size 
     59    END SUBROUTINE cxios_set_interpolate_axis_coordinate_src 
     60 
     61    SUBROUTINE cxios_get_interpolate_axis_coordinate_src(interpolate_axis_hdl, coordinate_src, coordinate_src_size) BIND(C) 
     62      USE ISO_C_BINDING 
     63      INTEGER (kind = C_INTPTR_T), VALUE :: interpolate_axis_hdl 
     64      CHARACTER(kind = C_CHAR)    , DIMENSION(*) :: coordinate_src 
     65      INTEGER  (kind = C_INT)     , VALUE        :: coordinate_src_size 
     66    END SUBROUTINE cxios_get_interpolate_axis_coordinate_src 
     67 
     68    FUNCTION cxios_is_defined_interpolate_axis_coordinate_src(interpolate_axis_hdl) BIND(C) 
     69      USE ISO_C_BINDING 
     70      LOGICAL(kind=C_BOOL) :: cxios_is_defined_interpolate_axis_coordinate_src 
     71      INTEGER (kind = C_INTPTR_T), VALUE :: interpolate_axis_hdl 
     72    END FUNCTION cxios_is_defined_interpolate_axis_coordinate_src 
     73 
     74 
     75    SUBROUTINE cxios_set_interpolate_axis_extrapolate(interpolate_axis_hdl, extrapolate) BIND(C) 
     76      USE ISO_C_BINDING 
     77      INTEGER (kind = C_INTPTR_T), VALUE :: interpolate_axis_hdl 
     78      LOGICAL (KIND=C_BOOL)      , VALUE :: extrapolate 
     79    END SUBROUTINE cxios_set_interpolate_axis_extrapolate 
     80 
     81    SUBROUTINE cxios_get_interpolate_axis_extrapolate(interpolate_axis_hdl, extrapolate) BIND(C) 
     82      USE ISO_C_BINDING 
     83      INTEGER (kind = C_INTPTR_T), VALUE :: interpolate_axis_hdl 
     84      LOGICAL (KIND=C_BOOL)             :: extrapolate 
     85    END SUBROUTINE cxios_get_interpolate_axis_extrapolate 
     86 
     87    FUNCTION cxios_is_defined_interpolate_axis_extrapolate(interpolate_axis_hdl) BIND(C) 
     88      USE ISO_C_BINDING 
     89      LOGICAL(kind=C_BOOL) :: cxios_is_defined_interpolate_axis_extrapolate 
     90      INTEGER (kind = C_INTPTR_T), VALUE :: interpolate_axis_hdl 
     91    END FUNCTION cxios_is_defined_interpolate_axis_extrapolate 
    3192 
    3293 
  • XIOS2/trunk/src/io/nc4_data_output.cpp

    r2599 r2618  
    27102710 
    27112711        bool conversionByNetCDF = true; // default : conversion operated by NetCDF for now (legacy behaviour) 
    2712         if (!field->conversion_by_NetCDF.isEmpty()) 
     2712        if (!field->conversion_by_netcdf.isEmpty()) 
    27132713        { 
    2714           // use conversion_by_NetCDF = ".false." to  bypass NetCDF conversion 
     2714          // use conversion_by_netcdf = ".false." to  bypass NetCDF conversion 
    27152715          //   poor performances from NC_DOUBLE to NC_FLOAT with isgreater/isless in recent NetCDF available at TGCC 
    2716           conversionByNetCDF = field->conversion_by_NetCDF; 
     2716          conversionByNetCDF = field->conversion_by_netcdf; 
    27172717        } 
    27182718        if ( ( type == NC_DOUBLE ) || ( conversionByNetCDF ) ) 
Note: See TracChangeset for help on using the changeset viewer.