Ignore:
Timestamp:
06/03/13 11:21:19 (11 years ago)
Author:
ymipsl
Message:

Enhancement : Add fortran interface to know if an attribute is set or not
ex : CALL xios_is_defined_field_attr("field_A",enabled=ok)

YM

File:
1 edited

Legend:

Unmodified
Added
Removed
  • XIOS/trunk/src/interface/c_attr/icfield_attr.cpp

    r369 r432  
    3535  } 
    3636   
     37  bool cxios_is_defined_field_axis_ref(field_Ptr field_hdl ) 
     38  { 
     39     CTimer::get("XIOS").resume(); 
     40    return !field_hdl->axis_ref.isEmpty(); 
     41     CTimer::get("XIOS").suspend(); 
     42  } 
     43   
     44   
    3745   
    3846  void cxios_set_field_default_value(field_Ptr field_hdl, double default_value) 
     
    4957  } 
    5058   
     59  bool cxios_is_defined_field_default_value(field_Ptr field_hdl ) 
     60  { 
     61     CTimer::get("XIOS").resume(); 
     62    return !field_hdl->default_value.isEmpty(); 
     63     CTimer::get("XIOS").suspend(); 
     64  } 
     65   
     66   
    5167   
    5268  void cxios_set_field_domain_ref(field_Ptr field_hdl, const char * domain_ref, int domain_ref_size) 
     
    6884  } 
    6985   
     86  bool cxios_is_defined_field_domain_ref(field_Ptr field_hdl ) 
     87  { 
     88     CTimer::get("XIOS").resume(); 
     89    return !field_hdl->domain_ref.isEmpty(); 
     90     CTimer::get("XIOS").suspend(); 
     91  } 
     92   
     93   
    7094   
    7195  void cxios_set_field_enabled(field_Ptr field_hdl, bool enabled) 
     
    82106  } 
    83107   
     108  bool cxios_is_defined_field_enabled(field_Ptr field_hdl ) 
     109  { 
     110     CTimer::get("XIOS").resume(); 
     111    return !field_hdl->enabled.isEmpty(); 
     112     CTimer::get("XIOS").suspend(); 
     113  } 
     114   
     115   
    84116   
    85117  void cxios_set_field_field_ref(field_Ptr field_hdl, const char * field_ref, int field_ref_size) 
     
    101133  } 
    102134   
     135  bool cxios_is_defined_field_field_ref(field_Ptr field_hdl ) 
     136  { 
     137     CTimer::get("XIOS").resume(); 
     138    return !field_hdl->field_ref.isEmpty(); 
     139     CTimer::get("XIOS").suspend(); 
     140  } 
     141   
     142   
    103143   
    104144  void cxios_set_field_freq_offset(field_Ptr field_hdl, const char * freq_offset, int freq_offset_size) 
     
    120160  } 
    121161   
     162  bool cxios_is_defined_field_freq_offset(field_Ptr field_hdl ) 
     163  { 
     164     CTimer::get("XIOS").resume(); 
     165    return !field_hdl->freq_offset.isEmpty(); 
     166     CTimer::get("XIOS").suspend(); 
     167  } 
     168   
     169   
    122170   
    123171  void cxios_set_field_freq_op(field_Ptr field_hdl, const char * freq_op, int freq_op_size) 
     
    139187  } 
    140188   
     189  bool cxios_is_defined_field_freq_op(field_Ptr field_hdl ) 
     190  { 
     191     CTimer::get("XIOS").resume(); 
     192    return !field_hdl->freq_op.isEmpty(); 
     193     CTimer::get("XIOS").suspend(); 
     194  } 
     195   
     196   
    141197   
    142198  void cxios_set_field_grid_ref(field_Ptr field_hdl, const char * grid_ref, int grid_ref_size) 
     
    158214  } 
    159215   
     216  bool cxios_is_defined_field_grid_ref(field_Ptr field_hdl ) 
     217  { 
     218     CTimer::get("XIOS").resume(); 
     219    return !field_hdl->grid_ref.isEmpty(); 
     220     CTimer::get("XIOS").suspend(); 
     221  } 
     222   
     223   
    160224   
    161225  void cxios_set_field_level(field_Ptr field_hdl, int level) 
     
    172236  } 
    173237   
     238  bool cxios_is_defined_field_level(field_Ptr field_hdl ) 
     239  { 
     240     CTimer::get("XIOS").resume(); 
     241    return !field_hdl->level.isEmpty(); 
     242     CTimer::get("XIOS").suspend(); 
     243  } 
     244   
     245   
    174246   
    175247  void cxios_set_field_long_name(field_Ptr field_hdl, const char * long_name, int long_name_size) 
     
    191263  } 
    192264   
     265  bool cxios_is_defined_field_long_name(field_Ptr field_hdl ) 
     266  { 
     267     CTimer::get("XIOS").resume(); 
     268    return !field_hdl->long_name.isEmpty(); 
     269     CTimer::get("XIOS").suspend(); 
     270  } 
     271   
     272   
    193273   
    194274  void cxios_set_field_name(field_Ptr field_hdl, const char * name, int name_size) 
     
    210290  } 
    211291   
     292  bool cxios_is_defined_field_name(field_Ptr field_hdl ) 
     293  { 
     294     CTimer::get("XIOS").resume(); 
     295    return !field_hdl->name.isEmpty(); 
     296     CTimer::get("XIOS").suspend(); 
     297  } 
     298   
     299   
    212300   
    213301  void cxios_set_field_operation(field_Ptr field_hdl, const char * operation, int operation_size) 
     
    229317  } 
    230318   
     319  bool cxios_is_defined_field_operation(field_Ptr field_hdl ) 
     320  { 
     321     CTimer::get("XIOS").resume(); 
     322    return !field_hdl->operation.isEmpty(); 
     323     CTimer::get("XIOS").suspend(); 
     324  } 
     325   
     326   
    231327   
    232328  void cxios_set_field_prec(field_Ptr field_hdl, int prec) 
     
    243339  } 
    244340   
     341  bool cxios_is_defined_field_prec(field_Ptr field_hdl ) 
     342  { 
     343     CTimer::get("XIOS").resume(); 
     344    return !field_hdl->prec.isEmpty(); 
     345     CTimer::get("XIOS").suspend(); 
     346  } 
     347   
     348   
    245349   
    246350  void cxios_set_field_standard_name(field_Ptr field_hdl, const char * standard_name, int standard_name_size) 
     
    262366  } 
    263367   
     368  bool cxios_is_defined_field_standard_name(field_Ptr field_hdl ) 
     369  { 
     370     CTimer::get("XIOS").resume(); 
     371    return !field_hdl->standard_name.isEmpty(); 
     372     CTimer::get("XIOS").suspend(); 
     373  } 
     374   
     375   
    264376   
    265377  void cxios_set_field_unit(field_Ptr field_hdl, const char * unit, int unit_size) 
     
    281393  } 
    282394   
     395  bool cxios_is_defined_field_unit(field_Ptr field_hdl ) 
     396  { 
     397     CTimer::get("XIOS").resume(); 
     398    return !field_hdl->unit.isEmpty(); 
     399     CTimer::get("XIOS").suspend(); 
     400  } 
     401   
     402   
    283403   
    284404   
Note: See TracChangeset for help on using the changeset viewer.