- Timestamp:
- 07/05/16 15:59:23 (8 years ago)
- Location:
- XIOS/trunk/src
- Files:
-
- 16 added
- 24 edited
Legend:
- Unmodified
- Added
- Removed
-
XIOS/trunk/src/generate_fortran_interface.cpp
r786 r891 5 5 #include "object_template.hpp" 6 6 #include "group_template.hpp" 7 //#include "context.hpp"8 //#include "file.hpp"9 //#include "zoom_domain.hpp"10 //#include "zoom_axis.hpp"11 //#include "interpolate_axis.hpp"12 //#include "interpolate_domain.hpp"13 7 #include "node_type.hpp" 14 8 … … 20 14 CContext* context=CContext::create("interface"); 21 15 CCalendarWrapper calendarWrapper; 16 CScalar scalar; 17 CScalarGroup scalargroup; 22 18 CAxis axis; 23 19 CAxisGroup axisgroup; … … 34 30 CFileGroup filegroup; 35 31 32 CInterpolateDomain interpolateDomain; 36 33 CZoomDomain zoomDomain; 34 CGenerateRectilinearDomain genDomain; 35 36 CInterpolateAxis interpolateAxis; 37 37 CZoomAxis zoomAxis; 38 39 CInterpolateAxis interpolateAxis;40 CInterpolateDomain interpolateDomain;41 42 CGenerateRectilinearDomain genDomain;43 38 CInverseAxis inverseAxis; 39 40 CReduceAxisToScalar reduceAxisToScalar; 44 41 45 42 ostringstream oss; 46 43 ofstream file; 47 44 45 file.open((path+"scalar_interface_attr.F90").c_str()); 46 scalar.generateFortran2003Interface(file); 47 file.close(); 48 49 file.open((path+"icscalar_attr.cpp").c_str()); 50 scalar.generateCInterface(file); 51 file.close(); 52 53 file.open((path+"iscalar_attr.F90").c_str()); 54 scalar.generateFortranInterface(file); 55 file.close(); 56 57 file.open((path+"scalargroup_interface_attr.F90").c_str()); 58 scalargroup.generateFortran2003Interface(file); 59 file.close(); 60 61 file.open((path+"icscalargroup_attr.cpp").c_str()); 62 scalargroup.generateCInterface(file); 63 file.close(); 64 65 file.open((path+"iscalargroup_attr.F90").c_str()); 66 scalargroup.generateFortranInterface(file); 67 file.close(); 68 48 69 file.open((path+"axis_interface_attr.F90").c_str()); 49 70 axis.generateFortran2003Interface(file); … … 281 302 file.close(); 282 303 304 file.open((path+"reduce_axis_to_scalar_interface_attr.F90").c_str()); 305 reduceAxisToScalar.generateFortran2003Interface(file); 306 file.close(); 307 308 file.open((path+"icreduce_axis_to_scalar_attr.cpp").c_str()); 309 reduceAxisToScalar.generateCInterface(file); 310 file.close(); 311 312 file.open((path+"ireduce_axis_to_scalar_attr.F90").c_str()); 313 reduceAxisToScalar.generateFortranInterface(file); 314 file.close(); 315 283 316 file.open((path+"context_interface_attr.F90").c_str()); 284 317 context->generateFortran2003Interface(file); -
XIOS/trunk/src/interface/c/icxml_tree.cpp
r836 r891 15 15 #include "timer.hpp" 16 16 #include "context.hpp" 17 #include "grid.hpp" 18 #include "file.hpp" 19 #include "field.hpp" 20 #include "axis.hpp" 21 #include "domain.hpp" 22 #include "variable.hpp" 23 #include "zoom_domain.hpp" 24 #include "interpolate_domain.hpp" 25 #include "generate_rectilinear_domain.hpp" 26 #include "zoom_axis.hpp" 27 #include "interpolate_axis.hpp" 28 #include "inverse_axis.hpp" 17 #include "node_type.hpp" 29 18 30 19 extern "C" … … 47 36 typedef xios::CDomain * XDomainPtr; 48 37 typedef xios::CDomainGroup * XDomainGroupPtr; 38 39 typedef xios::CScalar * XScalarPtr; 40 typedef xios::CScalarGroup * XScalarGroupPtr; 49 41 50 42 typedef xios::CAxis * XAxisPtr; … … 64 56 typedef xios::CInverseAxis * XInverseAxisPtr; 65 57 58 typedef xios::CTransformation<CScalar> * XTransformationScalarPtr; 59 typedef xios::CReduceAxisToScalar * XReduceAxisToScalarPtr; 60 66 61 // ----------------------- Ajout d'enfant à un parent ----------------------- 67 62 … … 130 125 } 131 126 127 void cxios_xml_tree_add_scalar 128 (XScalarGroupPtr parent_, XScalarPtr * child_, const char * child_id, int child_id_size) 129 { 130 std::string child_id_str; 131 CTimer::get("XIOS").resume() ; 132 if (cstr2string(child_id, child_id_size, child_id_str)) 133 { 134 *child_ = parent_->createChild(child_id_str) ; 135 } 136 else 137 { 138 *child_ = parent_->createChild() ; 139 } 140 CTimer::get("XIOS").suspend() ; 141 } 142 132 143 void cxios_xml_tree_add_domain 133 144 (XDomainGroupPtr parent_, XDomainPtr * child_, const char * child_id, int child_id_size) … … 246 257 } 247 258 259 void cxios_xml_tree_add_scalargroup 260 (XScalarGroupPtr parent_, XScalarGroupPtr * child_, const char * child_id, int child_id_size) 261 { 262 std::string child_id_str; 263 CTimer::get("XIOS").resume() ; 264 if (cstr2string(child_id, child_id_size, child_id_str)) 265 { 266 *child_ = parent_->createChildGroup(child_id_str) ; 267 } 268 else 269 { 270 *child_ = parent_->createChildGroup() ; 271 } 272 CTimer::get("XIOS").suspend() ; 273 } 274 248 275 void cxios_xml_tree_add_axisgroup 249 276 (XAxisGroupPtr parent_, XAxisGroupPtr * child_, const char * child_id, int child_id_size) … … 326 353 } 327 354 355 void cxios_xml_tree_add_scalartogrid 356 (XGridPtr parent_, XScalarPtr * child_, const char * child_id, int child_id_size) 357 { 358 std::string child_id_str; 359 CTimer::get("XIOS").resume() ; 360 if (cstr2string(child_id, child_id_size, child_id_str)) 361 { 362 *child_ = parent_->addScalar(child_id_str); 363 } 364 else 365 { 366 *child_ = parent_->addScalar(); 367 } 368 CTimer::get("XIOS").suspend() ; 369 } 370 328 371 void cxios_xml_tree_add_axistogrid 329 372 (XGridPtr parent_, XAxisPtr * child_, const char * child_id, int child_id_size) … … 463 506 } 464 507 *child_ = static_cast<XInverseAxisPtr>(tmpChild_); 508 CTimer::get("XIOS").suspend() ; 509 } 510 511 void cxios_xml_tree_add_reduceaxistoscalartoscalar 512 (XScalarPtr parent_, XReduceAxisToScalarPtr * child_, const char * child_id, int child_id_size) 513 { 514 std::string child_id_str; 515 XTransformationScalarPtr tmpChild_; 516 CTimer::get("XIOS").resume() ; 517 if (cstr2string(child_id, child_id_size, child_id_str)) 518 { 519 tmpChild_ = parent_->addTransformation(TRANS_REDUCE_AXIS_TO_SCALAR, child_id_str); 520 } 521 else 522 { 523 tmpChild_ = parent_->addTransformation(TRANS_REDUCE_AXIS_TO_SCALAR); 524 } 525 *child_ = static_cast<XReduceAxisToScalarPtr>(tmpChild_); 465 526 CTimer::get("XIOS").suspend() ; 466 527 } -
XIOS/trunk/src/interface/c_attr/icfield_attr.cpp
r790 r891 509 509 510 510 511 void cxios_set_field_scalar_ref(field_Ptr field_hdl, const char * scalar_ref, int scalar_ref_size) 512 { 513 std::string scalar_ref_str; 514 if (!cstr2string(scalar_ref, scalar_ref_size, scalar_ref_str)) return; 515 CTimer::get("XIOS").resume(); 516 field_hdl->scalar_ref.setValue(scalar_ref_str); 517 CTimer::get("XIOS").suspend(); 518 } 519 520 void cxios_get_field_scalar_ref(field_Ptr field_hdl, char * scalar_ref, int scalar_ref_size) 521 { 522 CTimer::get("XIOS").resume(); 523 if (!string_copy(field_hdl->scalar_ref.getInheritedValue(), scalar_ref, scalar_ref_size)) 524 ERROR("void cxios_get_field_scalar_ref(field_Ptr field_hdl, char * scalar_ref, int scalar_ref_size)", << "Input string is too short"); 525 CTimer::get("XIOS").suspend(); 526 } 527 528 bool cxios_is_defined_field_scalar_ref(field_Ptr field_hdl) 529 { 530 CTimer::get("XIOS").resume(); 531 bool isDefined = field_hdl->scalar_ref.hasInheritedValue(); 532 CTimer::get("XIOS").suspend(); 533 return isDefined; 534 } 535 536 511 537 void cxios_set_field_scale_factor(field_Ptr field_hdl, double scale_factor) 512 538 { -
XIOS/trunk/src/interface/c_attr/icfieldgroup_attr.cpp
r790 r891 535 535 536 536 537 void cxios_set_fieldgroup_scalar_ref(fieldgroup_Ptr fieldgroup_hdl, const char * scalar_ref, int scalar_ref_size) 538 { 539 std::string scalar_ref_str; 540 if (!cstr2string(scalar_ref, scalar_ref_size, scalar_ref_str)) return; 541 CTimer::get("XIOS").resume(); 542 fieldgroup_hdl->scalar_ref.setValue(scalar_ref_str); 543 CTimer::get("XIOS").suspend(); 544 } 545 546 void cxios_get_fieldgroup_scalar_ref(fieldgroup_Ptr fieldgroup_hdl, char * scalar_ref, int scalar_ref_size) 547 { 548 CTimer::get("XIOS").resume(); 549 if (!string_copy(fieldgroup_hdl->scalar_ref.getInheritedValue(), scalar_ref, scalar_ref_size)) 550 ERROR("void cxios_get_fieldgroup_scalar_ref(fieldgroup_Ptr fieldgroup_hdl, char * scalar_ref, int scalar_ref_size)", << "Input string is too short"); 551 CTimer::get("XIOS").suspend(); 552 } 553 554 bool cxios_is_defined_fieldgroup_scalar_ref(fieldgroup_Ptr fieldgroup_hdl) 555 { 556 CTimer::get("XIOS").resume(); 557 bool isDefined = fieldgroup_hdl->scalar_ref.hasInheritedValue(); 558 CTimer::get("XIOS").suspend(); 559 return isDefined; 560 } 561 562 537 563 void cxios_set_fieldgroup_scale_factor(fieldgroup_Ptr fieldgroup_hdl, double scale_factor) 538 564 { -
XIOS/trunk/src/interface/c_attr/icfile_attr.cpp
r802 r891 64 64 65 65 66 void cxios_set_file_cyclic(file_Ptr file_hdl, bool cyclic) 67 { 68 CTimer::get("XIOS").resume(); 69 file_hdl->cyclic.setValue(cyclic); 70 CTimer::get("XIOS").suspend(); 71 } 72 73 void cxios_get_file_cyclic(file_Ptr file_hdl, bool* cyclic) 74 { 75 CTimer::get("XIOS").resume(); 76 *cyclic = file_hdl->cyclic.getInheritedValue(); 77 CTimer::get("XIOS").suspend(); 78 } 79 80 bool cxios_is_defined_file_cyclic(file_Ptr file_hdl) 81 { 82 CTimer::get("XIOS").resume(); 83 bool isDefined = file_hdl->cyclic.hasInheritedValue(); 84 CTimer::get("XIOS").suspend(); 85 return isDefined; 86 } 87 88 66 89 void cxios_set_file_description(file_Ptr file_hdl, const char * description, int description_size) 67 90 { -
XIOS/trunk/src/interface/c_attr/icfilegroup_attr.cpp
r802 r891 64 64 65 65 66 void cxios_set_filegroup_cyclic(filegroup_Ptr filegroup_hdl, bool cyclic) 67 { 68 CTimer::get("XIOS").resume(); 69 filegroup_hdl->cyclic.setValue(cyclic); 70 CTimer::get("XIOS").suspend(); 71 } 72 73 void cxios_get_filegroup_cyclic(filegroup_Ptr filegroup_hdl, bool* cyclic) 74 { 75 CTimer::get("XIOS").resume(); 76 *cyclic = filegroup_hdl->cyclic.getInheritedValue(); 77 CTimer::get("XIOS").suspend(); 78 } 79 80 bool cxios_is_defined_filegroup_cyclic(filegroup_Ptr filegroup_hdl) 81 { 82 CTimer::get("XIOS").resume(); 83 bool isDefined = filegroup_hdl->cyclic.hasInheritedValue(); 84 CTimer::get("XIOS").suspend(); 85 return isDefined; 86 } 87 88 66 89 void cxios_set_filegroup_description(filegroup_Ptr filegroup_hdl, const char * description, int description_size) 67 90 { -
XIOS/trunk/src/interface/c_attr/icinterpolate_axis_attr.cpp
r786 r891 17 17 { 18 18 typedef xios::CInterpolateAxis* interpolate_axis_Ptr; 19 20 void cxios_set_interpolate_axis_coordinate(interpolate_axis_Ptr interpolate_axis_hdl, const char * coordinate, int coordinate_size) 21 { 22 std::string coordinate_str; 23 if (!cstr2string(coordinate, coordinate_size, coordinate_str)) return; 24 CTimer::get("XIOS").resume(); 25 interpolate_axis_hdl->coordinate.setValue(coordinate_str); 26 CTimer::get("XIOS").suspend(); 27 } 28 29 void cxios_get_interpolate_axis_coordinate(interpolate_axis_Ptr interpolate_axis_hdl, char * coordinate, int coordinate_size) 30 { 31 CTimer::get("XIOS").resume(); 32 if (!string_copy(interpolate_axis_hdl->coordinate.getInheritedValue(), coordinate, coordinate_size)) 33 ERROR("void cxios_get_interpolate_axis_coordinate(interpolate_axis_Ptr interpolate_axis_hdl, char * coordinate, int coordinate_size)", << "Input string is too short"); 34 CTimer::get("XIOS").suspend(); 35 } 36 37 bool cxios_is_defined_interpolate_axis_coordinate(interpolate_axis_Ptr interpolate_axis_hdl) 38 { 39 CTimer::get("XIOS").resume(); 40 bool isDefined = interpolate_axis_hdl->coordinate.hasInheritedValue(); 41 CTimer::get("XIOS").suspend(); 42 return isDefined; 43 } 44 19 45 20 46 void cxios_set_interpolate_axis_order(interpolate_axis_Ptr interpolate_axis_hdl, int order) -
XIOS/trunk/src/interface/c_attr/icinterpolate_domain_attr.cpp
r786 r891 65 65 return isDefined; 66 66 } 67 68 69 void cxios_set_interpolate_domain_renormalize(interpolate_domain_Ptr interpolate_domain_hdl, bool renormalize) 70 { 71 CTimer::get("XIOS").resume(); 72 interpolate_domain_hdl->renormalize.setValue(renormalize); 73 CTimer::get("XIOS").suspend(); 74 } 75 76 void cxios_get_interpolate_domain_renormalize(interpolate_domain_Ptr interpolate_domain_hdl, bool* renormalize) 77 { 78 CTimer::get("XIOS").resume(); 79 *renormalize = interpolate_domain_hdl->renormalize.getInheritedValue(); 80 CTimer::get("XIOS").suspend(); 81 } 82 83 bool cxios_is_defined_interpolate_domain_renormalize(interpolate_domain_Ptr interpolate_domain_hdl) 84 { 85 CTimer::get("XIOS").resume(); 86 bool isDefined = interpolate_domain_hdl->renormalize.hasInheritedValue(); 87 CTimer::get("XIOS").suspend(); 88 return isDefined; 89 } 67 90 } -
XIOS/trunk/src/interface/fortran/ixios.F90
r886 r891 68 68 USE iaxisgroup_attr, ONLY : xios(set_axisgroup_attr), xios(get_axisgroup_attr), xios(is_defined_axisgroup_attr) 69 69 70 USE iscalar, ONLY : txios(scalar), txios(scalargroup), xios(is_valid_scalar), xios(is_valid_scalargroup) 71 72 USE iscalar_attr, ONLY : xios(set_scalar_attr), xios(get_scalar_attr), xios(is_defined_scalar_attr) 73 74 USE iscalargroup_attr, ONLY : xios(set_scalargroup_attr), xios(get_scalargroup_attr), xios(is_defined_scalargroup_attr) 75 70 76 USE izoom_axis, ONLY : txios(zoom_axis), xios(is_valid_zoom_axis) 71 77 … … 95 101 xios(get_generate_rectilinear_domain_attr), & 96 102 xios(is_defined_generate_rectilinear_domain_attr) 103 USE ireduce_axis_to_scalar, ONLY : txios(reduce_axis_to_scalar), xios(is_valid_reduce_axis_to_scalar) 104 105 USE ireduce_axis_to_scalar_attr, ONLY : xios(set_reduce_axis_to_scalar_attr), xios(get_reduce_axis_to_scalar_attr), & 106 xios(is_defined_reduce_axis_to_scalar_attr) 97 107 98 108 USE XIOS_INTERFACES, ONLY : xios(set_attr), xios(get_attr), xios(is_defined_attr), xios(get_handle), xios(add_child), & -
XIOS/trunk/src/interface/fortran/ixios_interfaces.F90
r886 r891 51 51 USE iaxisgroup_attr, ONLY : xios(set_axisgroup_attr_hdl), xios(get_axisgroup_attr_hdl), xios(is_defined_axisgroup_attr_hdl) 52 52 53 USE iscalar, ONLY : xios(get_scalar_handle), xios(get_scalargroup_handle) 54 55 USE iscalar_attr, ONLY : xios(set_scalar_attr_hdl), xios(get_scalar_attr_hdl), xios(is_defined_scalar_attr_hdl) 56 57 USE iscalargroup_attr, ONLY : xios(set_scalargroup_attr_hdl), xios(get_scalargroup_attr_hdl), xios(is_defined_scalargroup_attr_hdl) 58 53 59 USE izoom_axis, ONLY : xios(get_zoom_axis_handle) 54 60 … … 79 85 xios(is_defined_generate_rectilinear_domain_attr_hdl) 80 86 87 USE ireduce_axis_to_scalar, ONLY : xios(get_reduce_axis_to_scalar_handle) 88 89 USE ireduce_axis_to_scalar_attr, ONLY : xios(set_reduce_axis_to_scalar_attr_hdl), xios(get_reduce_axis_to_scalar_attr_hdl), xios(is_defined_reduce_axis_to_scalar_attr_hdl) 90 81 91 USE ixml_tree, ONLY : xios(add_axis), xios(add_file), xios(add_grid), xios(add_field), xios(add_domain), & 82 92 xios(add_fieldtofile), xios(add_variabletofile), xios(add_variabletofield), & … … 86 96 xios(add_zoomdomaintodomain), xios(add_interpolatedomaintodomain), & 87 97 xios(add_generatedomaintodomain), xios(add_zoomaxistoaxis), & 88 xios(add_interpolateaxistoaxis), xios(add_inverseaxistoaxis) 98 xios(add_interpolateaxistoaxis), xios(add_inverseaxistoaxis), xios(add_scalar), & 99 xios(add_scalargroup), xios(add_scalartogrid), xios(add_reduceaxistoscalartoscalar) 89 100 90 101 PRIVATE … … 98 109 xios(set_zoom_domain_attr_hdl), xios(set_interpolate_axis_attr_hdl), & 99 110 xios(set_interpolate_domain_attr_hdl), xios(set_inverse_axis_attr_hdl), & 100 xios(set_generate_rectilinear_domain_attr_hdl) 111 xios(set_generate_rectilinear_domain_attr_hdl), xios(set_scalar_attr_hdl), & 112 xios(set_scalargroup_attr_hdl), xios(set_reduce_axis_to_scalar_attr_hdl) 101 113 END INTERFACE xios(set_attr) 102 114 … … 109 121 xios(get_zoom_domain_attr_hdl), xios(get_interpolate_axis_attr_hdl), & 110 122 xios(get_interpolate_domain_attr_hdl), xios(get_inverse_axis_attr_hdl), & 111 xios(get_generate_rectilinear_domain_attr_hdl) 123 xios(get_generate_rectilinear_domain_attr_hdl), xios(get_scalar_attr_hdl), & 124 xios(get_scalargroup_attr_hdl), xios(get_reduce_axis_to_scalar_attr_hdl) 112 125 END INTERFACE xios(get_attr) 113 126 … … 120 133 xios(is_defined_zoom_axis_attr_hdl), xios(is_defined_zoom_domain_attr_hdl), & 121 134 xios(is_defined_interpolate_axis_attr_hdl), xios(is_defined_interpolate_domain_attr_hdl), & 122 xios(is_defined_inverse_axis_attr_hdl), xios(is_defined_generate_rectilinear_domain_attr_hdl) 135 xios(is_defined_inverse_axis_attr_hdl), xios(is_defined_generate_rectilinear_domain_attr_hdl), & 136 xios(is_defined_scalar_attr_hdl), xios(is_defined_scalargroup_attr_hdl), & 137 xios(is_defined_reduce_axis_to_scalar_attr_hdl) 123 138 END INTERFACE xios(is_defined_attr) 124 139 … … 131 146 xios(get_zoom_domain_handle), xios(get_interpolate_axis_handle), & 132 147 xios(get_interpolate_domain_handle), xios(get_inverse_axis_handle), & 133 xios(get_generate_rectilinear_domain_handle) 148 xios(get_generate_rectilinear_domain_handle), xios(get_scalar_handle), & 149 xios(get_scalargroup_handle), xios(get_reduce_axis_to_scalar_handle) 134 150 END INTERFACE xios(get_handle) 135 151 … … 141 157 xios(add_axistogrid), xios(add_domaintogrid), xios(add_zoomdomaintodomain), & 142 158 xios(add_interpolatedomaintodomain), xios(add_generatedomaintodomain), & 143 xios(add_zoomaxistoaxis), xios(add_interpolateaxistoaxis), xios(add_inverseaxistoaxis) 159 xios(add_zoomaxistoaxis), xios(add_interpolateaxistoaxis), xios(add_inverseaxistoaxis), & 160 xios(add_scalar), xios(add_scalartogrid), xios(add_reduceaxistoscalartoscalar) 144 161 END INTERFACE xios(add_child) 145 162 -
XIOS/trunk/src/interface/fortran/ixml_tree.F90
r840 r891 3 3 MODULE IXML_TREE 4 4 USE, INTRINSIC :: ISO_C_BINDING 5 USE ISCALAR 5 6 USE IAXIS 6 7 USE IFILE … … 15 16 USE IINTERPOLATE_AXIS 16 17 USE IINVERSE_AXIS 18 USE IREDUCE_AXIS_TO_SCALAR 17 19 18 20 INTERFACE ! Ne pas appeler directement/Interface FORTRAN 2003 <-> C99 … … 42 44 END SUBROUTINE cxios_xml_tree_add_file 43 45 46 SUBROUTINE cxios_xml_tree_add_scalar(parent_, child_, child_id, child_id_size) BIND(C) 47 USE ISO_C_BINDING 48 INTEGER (kind = C_INTPTR_T), VALUE :: parent_ 49 INTEGER (kind = C_INTPTR_T) :: child_ 50 CHARACTER(kind = C_CHAR) , DIMENSION(*) :: child_id 51 INTEGER (kind = C_INT) , VALUE :: child_id_size 52 END SUBROUTINE cxios_xml_tree_add_scalar 53 44 54 SUBROUTINE cxios_xml_tree_add_axis(parent_, child_, child_id, child_id_size) BIND(C) 45 55 USE ISO_C_BINDING … … 108 118 END SUBROUTINE cxios_xml_tree_add_filegroup 109 119 120 SUBROUTINE cxios_xml_tree_add_scalargroup(parent_, child_, child_id, child_id_size) BIND(C) 121 USE ISO_C_BINDING 122 INTEGER (kind = C_INTPTR_T), VALUE :: parent_ 123 INTEGER (kind = C_INTPTR_T) :: child_ 124 CHARACTER(kind = C_CHAR) , DIMENSION(*) :: child_id 125 INTEGER (kind = C_INT) , VALUE :: child_id_size 126 END SUBROUTINE cxios_xml_tree_add_scalargroup 127 110 128 SUBROUTINE cxios_xml_tree_add_axisgroup(parent_, child_, child_id, child_id_size) BIND(C) 111 129 USE ISO_C_BINDING … … 148 166 END SUBROUTINE cxios_xml_tree_add_variablegrouptofield 149 167 168 SUBROUTINE cxios_xml_tree_add_scalartogrid(parent_, child_, child_id, child_id_size) BIND(C) 169 USE ISO_C_BINDING 170 INTEGER (kind = C_INTPTR_T), VALUE :: parent_ 171 INTEGER (kind = C_INTPTR_T) :: child_ 172 CHARACTER(kind = C_CHAR) , DIMENSION(*) :: child_id 173 INTEGER (kind = C_INT) , VALUE :: child_id_size 174 END SUBROUTINE cxios_xml_tree_add_scalartogrid 175 150 176 SUBROUTINE cxios_xml_tree_add_axistogrid(parent_, child_, child_id, child_id_size) BIND(C) 151 177 USE ISO_C_BINDING … … 211 237 INTEGER (kind = C_INT) , VALUE :: child_id_size 212 238 END SUBROUTINE cxios_xml_tree_add_inverseaxistoaxis 239 240 SUBROUTINE cxios_xml_tree_add_reduceaxistoscalartoscalar(parent_, child_, child_id, child_id_size) BIND(C) 241 USE ISO_C_BINDING 242 INTEGER (kind = C_INTPTR_T), VALUE :: parent_ 243 INTEGER (kind = C_INTPTR_T) :: child_ 244 CHARACTER(kind = C_CHAR) , DIMENSION(*) :: child_id 245 INTEGER (kind = C_INT) , VALUE :: child_id_size 246 END SUBROUTINE cxios_xml_tree_add_reduceaxistoscalartoscalar 213 247 214 248 SUBROUTINE cxios_xml_tree_show(filename, filename_size) BIND(C) … … 235 269 CONTAINS ! Fonctions disponibles pour les utilisateurs. 236 270 271 SUBROUTINE xios(add_scalar)(parent_hdl, child_hdl, child_id) 272 TYPE(txios(scalargroup)) , INTENT(IN) :: parent_hdl 273 TYPE(txios(scalar)) , INTENT(OUT):: child_hdl 274 CHARACTER(len = *), OPTIONAL, INTENT(IN) :: child_id 275 276 IF (PRESENT(child_id)) THEN 277 CALL cxios_xml_tree_add_scalar(parent_hdl%daddr, child_hdl%daddr, child_id, len(child_id)) 278 ELSE 279 CALL cxios_xml_tree_add_scalar(parent_hdl%daddr, child_hdl%daddr, "NONE", -1) 280 END IF 281 282 END SUBROUTINE xios(add_scalar) 237 283 238 284 SUBROUTINE xios(add_axis)(parent_hdl, child_hdl, child_id) … … 341 387 END SUBROUTINE xios(add_variabletofield) 342 388 389 SUBROUTINE xios(add_scalargroup)(parent_hdl, child_hdl, child_id) 390 TYPE(txios(scalargroup)) , INTENT(IN) :: parent_hdl 391 TYPE(txios(scalargroup)) , INTENT(OUT):: child_hdl 392 CHARACTER(len = *), OPTIONAL, INTENT(IN) :: child_id 393 394 IF (PRESENT(child_id)) THEN 395 CALL cxios_xml_tree_add_scalargroup(parent_hdl%daddr, child_hdl%daddr, child_id, len(child_id)) 396 ELSE 397 CALL cxios_xml_tree_add_scalargroup(parent_hdl%daddr, child_hdl%daddr, "NONE", -1) 398 END IF 399 400 END SUBROUTINE xios(add_scalargroup) 343 401 344 402 SUBROUTINE xios(add_axisgroup)(parent_hdl, child_hdl, child_id) … … 446 504 END SUBROUTINE xios(add_variablegrouptofield) 447 505 506 SUBROUTINE xios(add_scalartogrid)(parent_hdl, child_hdl, child_id) 507 TYPE(txios(grid)) , INTENT(IN) :: parent_hdl 508 TYPE(txios(scalar)) , INTENT(OUT):: child_hdl 509 CHARACTER(len = *), OPTIONAL , INTENT(IN) :: child_id 510 511 IF (PRESENT(child_id)) THEN 512 CALL cxios_xml_tree_add_scalartogrid(parent_hdl%daddr, child_hdl%daddr, child_id, len(child_id)) 513 ELSE 514 CALL cxios_xml_tree_add_scalartogrid(parent_hdl%daddr, child_hdl%daddr, "NONE", -1) 515 END IF 516 517 END SUBROUTINE xios(add_scalartogrid) 518 448 519 SUBROUTINE xios(add_axistogrid)(parent_hdl, child_hdl, child_id) 449 520 TYPE(txios(grid)) , INTENT(IN) :: parent_hdl … … 549 620 550 621 END SUBROUTINE xios(add_inverseaxistoaxis) 622 623 SUBROUTINE xios(add_reduceaxistoscalartoscalar)(parent_hdl, child_hdl, child_id) 624 TYPE(txios(axis)) , INTENT(IN) :: parent_hdl 625 TYPE(txios(inverse_axis)) , INTENT(OUT):: child_hdl 626 CHARACTER(len = *), OPTIONAL , INTENT(IN) :: child_id 627 628 IF (PRESENT(child_id)) THEN 629 CALL cxios_xml_tree_add_reduceaxistoscalartoscalar(parent_hdl%daddr, child_hdl%daddr, child_id, len(child_id)) 630 ELSE 631 CALL cxios_xml_tree_add_reduceaxistoscalartoscalar(parent_hdl%daddr, child_hdl%daddr, "NONE", -1) 632 END IF 633 634 END SUBROUTINE xios(add_reduceaxistoscalartoscalar) 551 635 END MODULE IXML_TREE -
XIOS/trunk/src/interface/fortran_attr/field_interface_attr.F90
r790 r891 391 391 392 392 393 SUBROUTINE cxios_set_field_scalar_ref(field_hdl, scalar_ref, scalar_ref_size) BIND(C) 394 USE ISO_C_BINDING 395 INTEGER (kind = C_INTPTR_T), VALUE :: field_hdl 396 CHARACTER(kind = C_CHAR) , DIMENSION(*) :: scalar_ref 397 INTEGER (kind = C_INT) , VALUE :: scalar_ref_size 398 END SUBROUTINE cxios_set_field_scalar_ref 399 400 SUBROUTINE cxios_get_field_scalar_ref(field_hdl, scalar_ref, scalar_ref_size) BIND(C) 401 USE ISO_C_BINDING 402 INTEGER (kind = C_INTPTR_T), VALUE :: field_hdl 403 CHARACTER(kind = C_CHAR) , DIMENSION(*) :: scalar_ref 404 INTEGER (kind = C_INT) , VALUE :: scalar_ref_size 405 END SUBROUTINE cxios_get_field_scalar_ref 406 407 FUNCTION cxios_is_defined_field_scalar_ref(field_hdl) BIND(C) 408 USE ISO_C_BINDING 409 LOGICAL(kind=C_BOOL) :: cxios_is_defined_field_scalar_ref 410 INTEGER (kind = C_INTPTR_T), VALUE :: field_hdl 411 END FUNCTION cxios_is_defined_field_scalar_ref 412 413 393 414 SUBROUTINE cxios_set_field_scale_factor(field_hdl, scale_factor) BIND(C) 394 415 USE ISO_C_BINDING -
XIOS/trunk/src/interface/fortran_attr/fieldgroup_interface_attr.F90
r790 r891 412 412 413 413 414 SUBROUTINE cxios_set_fieldgroup_scalar_ref(fieldgroup_hdl, scalar_ref, scalar_ref_size) BIND(C) 415 USE ISO_C_BINDING 416 INTEGER (kind = C_INTPTR_T), VALUE :: fieldgroup_hdl 417 CHARACTER(kind = C_CHAR) , DIMENSION(*) :: scalar_ref 418 INTEGER (kind = C_INT) , VALUE :: scalar_ref_size 419 END SUBROUTINE cxios_set_fieldgroup_scalar_ref 420 421 SUBROUTINE cxios_get_fieldgroup_scalar_ref(fieldgroup_hdl, scalar_ref, scalar_ref_size) BIND(C) 422 USE ISO_C_BINDING 423 INTEGER (kind = C_INTPTR_T), VALUE :: fieldgroup_hdl 424 CHARACTER(kind = C_CHAR) , DIMENSION(*) :: scalar_ref 425 INTEGER (kind = C_INT) , VALUE :: scalar_ref_size 426 END SUBROUTINE cxios_get_fieldgroup_scalar_ref 427 428 FUNCTION cxios_is_defined_fieldgroup_scalar_ref(fieldgroup_hdl) BIND(C) 429 USE ISO_C_BINDING 430 LOGICAL(kind=C_BOOL) :: cxios_is_defined_fieldgroup_scalar_ref 431 INTEGER (kind = C_INTPTR_T), VALUE :: fieldgroup_hdl 432 END FUNCTION cxios_is_defined_fieldgroup_scalar_ref 433 434 414 435 SUBROUTINE cxios_set_fieldgroup_scale_factor(fieldgroup_hdl, scale_factor) BIND(C) 415 436 USE ISO_C_BINDING -
XIOS/trunk/src/interface/fortran_attr/file_interface_attr.F90
r802 r891 48 48 49 49 50 SUBROUTINE cxios_set_file_cyclic(file_hdl, cyclic) BIND(C) 51 USE ISO_C_BINDING 52 INTEGER (kind = C_INTPTR_T), VALUE :: file_hdl 53 LOGICAL (KIND=C_BOOL) , VALUE :: cyclic 54 END SUBROUTINE cxios_set_file_cyclic 55 56 SUBROUTINE cxios_get_file_cyclic(file_hdl, cyclic) BIND(C) 57 USE ISO_C_BINDING 58 INTEGER (kind = C_INTPTR_T), VALUE :: file_hdl 59 LOGICAL (KIND=C_BOOL) :: cyclic 60 END SUBROUTINE cxios_get_file_cyclic 61 62 FUNCTION cxios_is_defined_file_cyclic(file_hdl) BIND(C) 63 USE ISO_C_BINDING 64 LOGICAL(kind=C_BOOL) :: cxios_is_defined_file_cyclic 65 INTEGER (kind = C_INTPTR_T), VALUE :: file_hdl 66 END FUNCTION cxios_is_defined_file_cyclic 67 68 50 69 SUBROUTINE cxios_set_file_description(file_hdl, description, description_size) BIND(C) 51 70 USE ISO_C_BINDING -
XIOS/trunk/src/interface/fortran_attr/filegroup_interface_attr.F90
r802 r891 48 48 49 49 50 SUBROUTINE cxios_set_filegroup_cyclic(filegroup_hdl, cyclic) BIND(C) 51 USE ISO_C_BINDING 52 INTEGER (kind = C_INTPTR_T), VALUE :: filegroup_hdl 53 LOGICAL (KIND=C_BOOL) , VALUE :: cyclic 54 END SUBROUTINE cxios_set_filegroup_cyclic 55 56 SUBROUTINE cxios_get_filegroup_cyclic(filegroup_hdl, cyclic) BIND(C) 57 USE ISO_C_BINDING 58 INTEGER (kind = C_INTPTR_T), VALUE :: filegroup_hdl 59 LOGICAL (KIND=C_BOOL) :: cyclic 60 END SUBROUTINE cxios_get_filegroup_cyclic 61 62 FUNCTION cxios_is_defined_filegroup_cyclic(filegroup_hdl) BIND(C) 63 USE ISO_C_BINDING 64 LOGICAL(kind=C_BOOL) :: cxios_is_defined_filegroup_cyclic 65 INTEGER (kind = C_INTPTR_T), VALUE :: filegroup_hdl 66 END FUNCTION cxios_is_defined_filegroup_cyclic 67 68 50 69 SUBROUTINE cxios_set_filegroup_description(filegroup_hdl, description, description_size) BIND(C) 51 70 USE ISO_C_BINDING -
XIOS/trunk/src/interface/fortran_attr/ifield_attr.F90
r790 r891 14 14 ( field_id, add_offset, axis_ref, compression_level, default_value, detect_missing_value, domain_ref & 15 15 , enabled, field_ref, freq_offset, freq_op, grid_path, grid_ref, indexed_output, level, long_name & 16 , name, operation, prec, read_access, scal e_factor, standard_name, ts_enabled, ts_split_freq &16 , name, operation, prec, read_access, scalar_ref, scale_factor, standard_name, ts_enabled, ts_split_freq & 17 17 , unit, valid_max, valid_min ) 18 18 … … 43 43 LOGICAL , OPTIONAL, INTENT(IN) :: read_access 44 44 LOGICAL (KIND=C_BOOL) :: read_access_tmp 45 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: scalar_ref 45 46 REAL (KIND=8) , OPTIONAL, INTENT(IN) :: scale_factor 46 47 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: standard_name … … 56 57 ( field_hdl, add_offset, axis_ref, compression_level, default_value, detect_missing_value, domain_ref & 57 58 , enabled, field_ref, freq_offset, freq_op, grid_path, grid_ref, indexed_output, level, long_name & 58 , name, operation, prec, read_access, scal e_factor, standard_name, ts_enabled, ts_split_freq &59 , name, operation, prec, read_access, scalar_ref, scale_factor, standard_name, ts_enabled, ts_split_freq & 59 60 , unit, valid_max, valid_min ) 60 61 … … 64 65 ( field_hdl, add_offset, axis_ref, compression_level, default_value, detect_missing_value, domain_ref & 65 66 , enabled, field_ref, freq_offset, freq_op, grid_path, grid_ref, indexed_output, level, long_name & 66 , name, operation, prec, read_access, scal e_factor, standard_name, ts_enabled, ts_split_freq &67 , name, operation, prec, read_access, scalar_ref, scale_factor, standard_name, ts_enabled, ts_split_freq & 67 68 , unit, valid_max, valid_min ) 68 69 … … 92 93 LOGICAL , OPTIONAL, INTENT(IN) :: read_access 93 94 LOGICAL (KIND=C_BOOL) :: read_access_tmp 95 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: scalar_ref 94 96 REAL (KIND=8) , OPTIONAL, INTENT(IN) :: scale_factor 95 97 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: standard_name … … 104 106 ( field_hdl, add_offset, axis_ref, compression_level, default_value, detect_missing_value, domain_ref & 105 107 , enabled, field_ref, freq_offset, freq_op, grid_path, grid_ref, indexed_output, level, long_name & 106 , name, operation, prec, read_access, scal e_factor, standard_name, ts_enabled, ts_split_freq &108 , name, operation, prec, read_access, scalar_ref, scale_factor, standard_name, ts_enabled, ts_split_freq & 107 109 , unit, valid_max, valid_min ) 108 110 … … 112 114 ( field_hdl, add_offset_, axis_ref_, compression_level_, default_value_, detect_missing_value_ & 113 115 , domain_ref_, enabled_, field_ref_, freq_offset_, freq_op_, grid_path_, grid_ref_, indexed_output_ & 114 , level_, long_name_, name_, operation_, prec_, read_access_, scal e_factor_, standard_name_ &116 , level_, long_name_, name_, operation_, prec_, read_access_, scalar_ref_, scale_factor_, standard_name_ & 115 117 , ts_enabled_, ts_split_freq_, unit_, valid_max_, valid_min_ ) 116 118 … … 140 142 LOGICAL , OPTIONAL, INTENT(IN) :: read_access_ 141 143 LOGICAL (KIND=C_BOOL) :: read_access__tmp 144 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: scalar_ref_ 142 145 REAL (KIND=8) , OPTIONAL, INTENT(IN) :: scale_factor_ 143 146 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: standard_name_ … … 229 232 ENDIF 230 233 234 IF (PRESENT(scalar_ref_)) THEN 235 CALL cxios_set_field_scalar_ref(field_hdl%daddr, scalar_ref_, len(scalar_ref_)) 236 ENDIF 237 231 238 IF (PRESENT(scale_factor_)) THEN 232 239 CALL cxios_set_field_scale_factor(field_hdl%daddr, scale_factor_) … … 263 270 ( field_id, add_offset, axis_ref, compression_level, default_value, detect_missing_value, domain_ref & 264 271 , enabled, field_ref, freq_offset, freq_op, grid_path, grid_ref, indexed_output, level, long_name & 265 , name, operation, prec, read_access, scal e_factor, standard_name, ts_enabled, ts_split_freq &272 , name, operation, prec, read_access, scalar_ref, scale_factor, standard_name, ts_enabled, ts_split_freq & 266 273 , unit, valid_max, valid_min ) 267 274 … … 292 299 LOGICAL , OPTIONAL, INTENT(OUT) :: read_access 293 300 LOGICAL (KIND=C_BOOL) :: read_access_tmp 301 CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: scalar_ref 294 302 REAL (KIND=8) , OPTIONAL, INTENT(OUT) :: scale_factor 295 303 CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: standard_name … … 305 313 ( field_hdl, add_offset, axis_ref, compression_level, default_value, detect_missing_value, domain_ref & 306 314 , enabled, field_ref, freq_offset, freq_op, grid_path, grid_ref, indexed_output, level, long_name & 307 , name, operation, prec, read_access, scal e_factor, standard_name, ts_enabled, ts_split_freq &315 , name, operation, prec, read_access, scalar_ref, scale_factor, standard_name, ts_enabled, ts_split_freq & 308 316 , unit, valid_max, valid_min ) 309 317 … … 313 321 ( field_hdl, add_offset, axis_ref, compression_level, default_value, detect_missing_value, domain_ref & 314 322 , enabled, field_ref, freq_offset, freq_op, grid_path, grid_ref, indexed_output, level, long_name & 315 , name, operation, prec, read_access, scal e_factor, standard_name, ts_enabled, ts_split_freq &323 , name, operation, prec, read_access, scalar_ref, scale_factor, standard_name, ts_enabled, ts_split_freq & 316 324 , unit, valid_max, valid_min ) 317 325 … … 341 349 LOGICAL , OPTIONAL, INTENT(OUT) :: read_access 342 350 LOGICAL (KIND=C_BOOL) :: read_access_tmp 351 CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: scalar_ref 343 352 REAL (KIND=8) , OPTIONAL, INTENT(OUT) :: scale_factor 344 353 CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: standard_name … … 353 362 ( field_hdl, add_offset, axis_ref, compression_level, default_value, detect_missing_value, domain_ref & 354 363 , enabled, field_ref, freq_offset, freq_op, grid_path, grid_ref, indexed_output, level, long_name & 355 , name, operation, prec, read_access, scal e_factor, standard_name, ts_enabled, ts_split_freq &364 , name, operation, prec, read_access, scalar_ref, scale_factor, standard_name, ts_enabled, ts_split_freq & 356 365 , unit, valid_max, valid_min ) 357 366 … … 361 370 ( field_hdl, add_offset_, axis_ref_, compression_level_, default_value_, detect_missing_value_ & 362 371 , domain_ref_, enabled_, field_ref_, freq_offset_, freq_op_, grid_path_, grid_ref_, indexed_output_ & 363 , level_, long_name_, name_, operation_, prec_, read_access_, scal e_factor_, standard_name_ &372 , level_, long_name_, name_, operation_, prec_, read_access_, scalar_ref_, scale_factor_, standard_name_ & 364 373 , ts_enabled_, ts_split_freq_, unit_, valid_max_, valid_min_ ) 365 374 … … 389 398 LOGICAL , OPTIONAL, INTENT(OUT) :: read_access_ 390 399 LOGICAL (KIND=C_BOOL) :: read_access__tmp 400 CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: scalar_ref_ 391 401 REAL (KIND=8) , OPTIONAL, INTENT(OUT) :: scale_factor_ 392 402 CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: standard_name_ … … 478 488 ENDIF 479 489 490 IF (PRESENT(scalar_ref_)) THEN 491 CALL cxios_get_field_scalar_ref(field_hdl%daddr, scalar_ref_, len(scalar_ref_)) 492 ENDIF 493 480 494 IF (PRESENT(scale_factor_)) THEN 481 495 CALL cxios_get_field_scale_factor(field_hdl%daddr, scale_factor_) … … 512 526 ( field_id, add_offset, axis_ref, compression_level, default_value, detect_missing_value, domain_ref & 513 527 , enabled, field_ref, freq_offset, freq_op, grid_path, grid_ref, indexed_output, level, long_name & 514 , name, operation, prec, read_access, scal e_factor, standard_name, ts_enabled, ts_split_freq &528 , name, operation, prec, read_access, scalar_ref, scale_factor, standard_name, ts_enabled, ts_split_freq & 515 529 , unit, valid_max, valid_min ) 516 530 … … 556 570 LOGICAL, OPTIONAL, INTENT(OUT) :: read_access 557 571 LOGICAL(KIND=C_BOOL) :: read_access_tmp 572 LOGICAL, OPTIONAL, INTENT(OUT) :: scalar_ref 573 LOGICAL(KIND=C_BOOL) :: scalar_ref_tmp 558 574 LOGICAL, OPTIONAL, INTENT(OUT) :: scale_factor 559 575 LOGICAL(KIND=C_BOOL) :: scale_factor_tmp … … 575 591 ( field_hdl, add_offset, axis_ref, compression_level, default_value, detect_missing_value, domain_ref & 576 592 , enabled, field_ref, freq_offset, freq_op, grid_path, grid_ref, indexed_output, level, long_name & 577 , name, operation, prec, read_access, scal e_factor, standard_name, ts_enabled, ts_split_freq &593 , name, operation, prec, read_access, scalar_ref, scale_factor, standard_name, ts_enabled, ts_split_freq & 578 594 , unit, valid_max, valid_min ) 579 595 … … 583 599 ( field_hdl, add_offset, axis_ref, compression_level, default_value, detect_missing_value, domain_ref & 584 600 , enabled, field_ref, freq_offset, freq_op, grid_path, grid_ref, indexed_output, level, long_name & 585 , name, operation, prec, read_access, scal e_factor, standard_name, ts_enabled, ts_split_freq &601 , name, operation, prec, read_access, scalar_ref, scale_factor, standard_name, ts_enabled, ts_split_freq & 586 602 , unit, valid_max, valid_min ) 587 603 … … 626 642 LOGICAL, OPTIONAL, INTENT(OUT) :: read_access 627 643 LOGICAL(KIND=C_BOOL) :: read_access_tmp 644 LOGICAL, OPTIONAL, INTENT(OUT) :: scalar_ref 645 LOGICAL(KIND=C_BOOL) :: scalar_ref_tmp 628 646 LOGICAL, OPTIONAL, INTENT(OUT) :: scale_factor 629 647 LOGICAL(KIND=C_BOOL) :: scale_factor_tmp … … 644 662 ( field_hdl, add_offset, axis_ref, compression_level, default_value, detect_missing_value, domain_ref & 645 663 , enabled, field_ref, freq_offset, freq_op, grid_path, grid_ref, indexed_output, level, long_name & 646 , name, operation, prec, read_access, scal e_factor, standard_name, ts_enabled, ts_split_freq &664 , name, operation, prec, read_access, scalar_ref, scale_factor, standard_name, ts_enabled, ts_split_freq & 647 665 , unit, valid_max, valid_min ) 648 666 … … 652 670 ( field_hdl, add_offset_, axis_ref_, compression_level_, default_value_, detect_missing_value_ & 653 671 , domain_ref_, enabled_, field_ref_, freq_offset_, freq_op_, grid_path_, grid_ref_, indexed_output_ & 654 , level_, long_name_, name_, operation_, prec_, read_access_, scal e_factor_, standard_name_ &672 , level_, long_name_, name_, operation_, prec_, read_access_, scalar_ref_, scale_factor_, standard_name_ & 655 673 , ts_enabled_, ts_split_freq_, unit_, valid_max_, valid_min_ ) 656 674 … … 695 713 LOGICAL, OPTIONAL, INTENT(OUT) :: read_access_ 696 714 LOGICAL(KIND=C_BOOL) :: read_access__tmp 715 LOGICAL, OPTIONAL, INTENT(OUT) :: scalar_ref_ 716 LOGICAL(KIND=C_BOOL) :: scalar_ref__tmp 697 717 LOGICAL, OPTIONAL, INTENT(OUT) :: scale_factor_ 698 718 LOGICAL(KIND=C_BOOL) :: scale_factor__tmp … … 805 825 ENDIF 806 826 827 IF (PRESENT(scalar_ref_)) THEN 828 scalar_ref__tmp = cxios_is_defined_field_scalar_ref(field_hdl%daddr) 829 scalar_ref_ = scalar_ref__tmp 830 ENDIF 831 807 832 IF (PRESENT(scale_factor_)) THEN 808 833 scale_factor__tmp = cxios_is_defined_field_scale_factor(field_hdl%daddr) -
XIOS/trunk/src/interface/fortran_attr/ifieldgroup_attr.F90
r790 r891 14 14 ( fieldgroup_id, add_offset, axis_ref, compression_level, default_value, detect_missing_value & 15 15 , domain_ref, enabled, field_ref, freq_offset, freq_op, grid_path, grid_ref, group_ref, indexed_output & 16 , level, long_name, name, operation, prec, read_access, scal e_factor, standard_name, ts_enabled&17 , ts_ split_freq, unit, valid_max, valid_min )16 , level, long_name, name, operation, prec, read_access, scalar_ref, scale_factor, standard_name & 17 , ts_enabled, ts_split_freq, unit, valid_max, valid_min ) 18 18 19 19 IMPLICIT NONE … … 44 44 LOGICAL , OPTIONAL, INTENT(IN) :: read_access 45 45 LOGICAL (KIND=C_BOOL) :: read_access_tmp 46 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: scalar_ref 46 47 REAL (KIND=8) , OPTIONAL, INTENT(IN) :: scale_factor 47 48 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: standard_name … … 57 58 ( fieldgroup_hdl, add_offset, axis_ref, compression_level, default_value, detect_missing_value & 58 59 , domain_ref, enabled, field_ref, freq_offset, freq_op, grid_path, grid_ref, group_ref, indexed_output & 59 , level, long_name, name, operation, prec, read_access, scal e_factor, standard_name, ts_enabled&60 , ts_ split_freq, unit, valid_max, valid_min )60 , level, long_name, name, operation, prec, read_access, scalar_ref, scale_factor, standard_name & 61 , ts_enabled, ts_split_freq, unit, valid_max, valid_min ) 61 62 62 63 END SUBROUTINE xios(set_fieldgroup_attr) … … 65 66 ( fieldgroup_hdl, add_offset, axis_ref, compression_level, default_value, detect_missing_value & 66 67 , domain_ref, enabled, field_ref, freq_offset, freq_op, grid_path, grid_ref, group_ref, indexed_output & 67 , level, long_name, name, operation, prec, read_access, scal e_factor, standard_name, ts_enabled&68 , ts_ split_freq, unit, valid_max, valid_min )68 , level, long_name, name, operation, prec, read_access, scalar_ref, scale_factor, standard_name & 69 , ts_enabled, ts_split_freq, unit, valid_max, valid_min ) 69 70 70 71 IMPLICIT NONE … … 94 95 LOGICAL , OPTIONAL, INTENT(IN) :: read_access 95 96 LOGICAL (KIND=C_BOOL) :: read_access_tmp 97 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: scalar_ref 96 98 REAL (KIND=8) , OPTIONAL, INTENT(IN) :: scale_factor 97 99 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: standard_name … … 106 108 ( fieldgroup_hdl, add_offset, axis_ref, compression_level, default_value, detect_missing_value & 107 109 , domain_ref, enabled, field_ref, freq_offset, freq_op, grid_path, grid_ref, group_ref, indexed_output & 108 , level, long_name, name, operation, prec, read_access, scal e_factor, standard_name, ts_enabled&109 , ts_ split_freq, unit, valid_max, valid_min )110 , level, long_name, name, operation, prec, read_access, scalar_ref, scale_factor, standard_name & 111 , ts_enabled, ts_split_freq, unit, valid_max, valid_min ) 110 112 111 113 END SUBROUTINE xios(set_fieldgroup_attr_hdl) … … 114 116 ( fieldgroup_hdl, add_offset_, axis_ref_, compression_level_, default_value_, detect_missing_value_ & 115 117 , domain_ref_, enabled_, field_ref_, freq_offset_, freq_op_, grid_path_, grid_ref_, group_ref_ & 116 , indexed_output_, level_, long_name_, name_, operation_, prec_, read_access_, scal e_factor_ &118 , indexed_output_, level_, long_name_, name_, operation_, prec_, read_access_, scalar_ref_, scale_factor_ & 117 119 , standard_name_, ts_enabled_, ts_split_freq_, unit_, valid_max_, valid_min_ ) 118 120 … … 143 145 LOGICAL , OPTIONAL, INTENT(IN) :: read_access_ 144 146 LOGICAL (KIND=C_BOOL) :: read_access__tmp 147 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: scalar_ref_ 145 148 REAL (KIND=8) , OPTIONAL, INTENT(IN) :: scale_factor_ 146 149 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: standard_name_ … … 236 239 ENDIF 237 240 241 IF (PRESENT(scalar_ref_)) THEN 242 CALL cxios_set_fieldgroup_scalar_ref(fieldgroup_hdl%daddr, scalar_ref_, len(scalar_ref_)) 243 ENDIF 244 238 245 IF (PRESENT(scale_factor_)) THEN 239 246 CALL cxios_set_fieldgroup_scale_factor(fieldgroup_hdl%daddr, scale_factor_) … … 270 277 ( fieldgroup_id, add_offset, axis_ref, compression_level, default_value, detect_missing_value & 271 278 , domain_ref, enabled, field_ref, freq_offset, freq_op, grid_path, grid_ref, group_ref, indexed_output & 272 , level, long_name, name, operation, prec, read_access, scal e_factor, standard_name, ts_enabled&273 , ts_ split_freq, unit, valid_max, valid_min )279 , level, long_name, name, operation, prec, read_access, scalar_ref, scale_factor, standard_name & 280 , ts_enabled, ts_split_freq, unit, valid_max, valid_min ) 274 281 275 282 IMPLICIT NONE … … 300 307 LOGICAL , OPTIONAL, INTENT(OUT) :: read_access 301 308 LOGICAL (KIND=C_BOOL) :: read_access_tmp 309 CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: scalar_ref 302 310 REAL (KIND=8) , OPTIONAL, INTENT(OUT) :: scale_factor 303 311 CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: standard_name … … 313 321 ( fieldgroup_hdl, add_offset, axis_ref, compression_level, default_value, detect_missing_value & 314 322 , domain_ref, enabled, field_ref, freq_offset, freq_op, grid_path, grid_ref, group_ref, indexed_output & 315 , level, long_name, name, operation, prec, read_access, scal e_factor, standard_name, ts_enabled&316 , ts_ split_freq, unit, valid_max, valid_min )323 , level, long_name, name, operation, prec, read_access, scalar_ref, scale_factor, standard_name & 324 , ts_enabled, ts_split_freq, unit, valid_max, valid_min ) 317 325 318 326 END SUBROUTINE xios(get_fieldgroup_attr) … … 321 329 ( fieldgroup_hdl, add_offset, axis_ref, compression_level, default_value, detect_missing_value & 322 330 , domain_ref, enabled, field_ref, freq_offset, freq_op, grid_path, grid_ref, group_ref, indexed_output & 323 , level, long_name, name, operation, prec, read_access, scal e_factor, standard_name, ts_enabled&324 , ts_ split_freq, unit, valid_max, valid_min )331 , level, long_name, name, operation, prec, read_access, scalar_ref, scale_factor, standard_name & 332 , ts_enabled, ts_split_freq, unit, valid_max, valid_min ) 325 333 326 334 IMPLICIT NONE … … 350 358 LOGICAL , OPTIONAL, INTENT(OUT) :: read_access 351 359 LOGICAL (KIND=C_BOOL) :: read_access_tmp 360 CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: scalar_ref 352 361 REAL (KIND=8) , OPTIONAL, INTENT(OUT) :: scale_factor 353 362 CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: standard_name … … 362 371 ( fieldgroup_hdl, add_offset, axis_ref, compression_level, default_value, detect_missing_value & 363 372 , domain_ref, enabled, field_ref, freq_offset, freq_op, grid_path, grid_ref, group_ref, indexed_output & 364 , level, long_name, name, operation, prec, read_access, scal e_factor, standard_name, ts_enabled&365 , ts_ split_freq, unit, valid_max, valid_min )373 , level, long_name, name, operation, prec, read_access, scalar_ref, scale_factor, standard_name & 374 , ts_enabled, ts_split_freq, unit, valid_max, valid_min ) 366 375 367 376 END SUBROUTINE xios(get_fieldgroup_attr_hdl) … … 370 379 ( fieldgroup_hdl, add_offset_, axis_ref_, compression_level_, default_value_, detect_missing_value_ & 371 380 , domain_ref_, enabled_, field_ref_, freq_offset_, freq_op_, grid_path_, grid_ref_, group_ref_ & 372 , indexed_output_, level_, long_name_, name_, operation_, prec_, read_access_, scal e_factor_ &381 , indexed_output_, level_, long_name_, name_, operation_, prec_, read_access_, scalar_ref_, scale_factor_ & 373 382 , standard_name_, ts_enabled_, ts_split_freq_, unit_, valid_max_, valid_min_ ) 374 383 … … 399 408 LOGICAL , OPTIONAL, INTENT(OUT) :: read_access_ 400 409 LOGICAL (KIND=C_BOOL) :: read_access__tmp 410 CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: scalar_ref_ 401 411 REAL (KIND=8) , OPTIONAL, INTENT(OUT) :: scale_factor_ 402 412 CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: standard_name_ … … 492 502 ENDIF 493 503 504 IF (PRESENT(scalar_ref_)) THEN 505 CALL cxios_get_fieldgroup_scalar_ref(fieldgroup_hdl%daddr, scalar_ref_, len(scalar_ref_)) 506 ENDIF 507 494 508 IF (PRESENT(scale_factor_)) THEN 495 509 CALL cxios_get_fieldgroup_scale_factor(fieldgroup_hdl%daddr, scale_factor_) … … 526 540 ( fieldgroup_id, add_offset, axis_ref, compression_level, default_value, detect_missing_value & 527 541 , domain_ref, enabled, field_ref, freq_offset, freq_op, grid_path, grid_ref, group_ref, indexed_output & 528 , level, long_name, name, operation, prec, read_access, scal e_factor, standard_name, ts_enabled&529 , ts_ split_freq, unit, valid_max, valid_min )542 , level, long_name, name, operation, prec, read_access, scalar_ref, scale_factor, standard_name & 543 , ts_enabled, ts_split_freq, unit, valid_max, valid_min ) 530 544 531 545 IMPLICIT NONE … … 572 586 LOGICAL, OPTIONAL, INTENT(OUT) :: read_access 573 587 LOGICAL(KIND=C_BOOL) :: read_access_tmp 588 LOGICAL, OPTIONAL, INTENT(OUT) :: scalar_ref 589 LOGICAL(KIND=C_BOOL) :: scalar_ref_tmp 574 590 LOGICAL, OPTIONAL, INTENT(OUT) :: scale_factor 575 591 LOGICAL(KIND=C_BOOL) :: scale_factor_tmp … … 591 607 ( fieldgroup_hdl, add_offset, axis_ref, compression_level, default_value, detect_missing_value & 592 608 , domain_ref, enabled, field_ref, freq_offset, freq_op, grid_path, grid_ref, group_ref, indexed_output & 593 , level, long_name, name, operation, prec, read_access, scal e_factor, standard_name, ts_enabled&594 , ts_ split_freq, unit, valid_max, valid_min )609 , level, long_name, name, operation, prec, read_access, scalar_ref, scale_factor, standard_name & 610 , ts_enabled, ts_split_freq, unit, valid_max, valid_min ) 595 611 596 612 END SUBROUTINE xios(is_defined_fieldgroup_attr) … … 599 615 ( fieldgroup_hdl, add_offset, axis_ref, compression_level, default_value, detect_missing_value & 600 616 , domain_ref, enabled, field_ref, freq_offset, freq_op, grid_path, grid_ref, group_ref, indexed_output & 601 , level, long_name, name, operation, prec, read_access, scal e_factor, standard_name, ts_enabled&602 , ts_ split_freq, unit, valid_max, valid_min )617 , level, long_name, name, operation, prec, read_access, scalar_ref, scale_factor, standard_name & 618 , ts_enabled, ts_split_freq, unit, valid_max, valid_min ) 603 619 604 620 IMPLICIT NONE … … 644 660 LOGICAL, OPTIONAL, INTENT(OUT) :: read_access 645 661 LOGICAL(KIND=C_BOOL) :: read_access_tmp 662 LOGICAL, OPTIONAL, INTENT(OUT) :: scalar_ref 663 LOGICAL(KIND=C_BOOL) :: scalar_ref_tmp 646 664 LOGICAL, OPTIONAL, INTENT(OUT) :: scale_factor 647 665 LOGICAL(KIND=C_BOOL) :: scale_factor_tmp … … 662 680 ( fieldgroup_hdl, add_offset, axis_ref, compression_level, default_value, detect_missing_value & 663 681 , domain_ref, enabled, field_ref, freq_offset, freq_op, grid_path, grid_ref, group_ref, indexed_output & 664 , level, long_name, name, operation, prec, read_access, scal e_factor, standard_name, ts_enabled&665 , ts_ split_freq, unit, valid_max, valid_min )682 , level, long_name, name, operation, prec, read_access, scalar_ref, scale_factor, standard_name & 683 , ts_enabled, ts_split_freq, unit, valid_max, valid_min ) 666 684 667 685 END SUBROUTINE xios(is_defined_fieldgroup_attr_hdl) … … 670 688 ( fieldgroup_hdl, add_offset_, axis_ref_, compression_level_, default_value_, detect_missing_value_ & 671 689 , domain_ref_, enabled_, field_ref_, freq_offset_, freq_op_, grid_path_, grid_ref_, group_ref_ & 672 , indexed_output_, level_, long_name_, name_, operation_, prec_, read_access_, scal e_factor_ &690 , indexed_output_, level_, long_name_, name_, operation_, prec_, read_access_, scalar_ref_, scale_factor_ & 673 691 , standard_name_, ts_enabled_, ts_split_freq_, unit_, valid_max_, valid_min_ ) 674 692 … … 715 733 LOGICAL, OPTIONAL, INTENT(OUT) :: read_access_ 716 734 LOGICAL(KIND=C_BOOL) :: read_access__tmp 735 LOGICAL, OPTIONAL, INTENT(OUT) :: scalar_ref_ 736 LOGICAL(KIND=C_BOOL) :: scalar_ref__tmp 717 737 LOGICAL, OPTIONAL, INTENT(OUT) :: scale_factor_ 718 738 LOGICAL(KIND=C_BOOL) :: scale_factor__tmp … … 830 850 ENDIF 831 851 852 IF (PRESENT(scalar_ref_)) THEN 853 scalar_ref__tmp = cxios_is_defined_fieldgroup_scalar_ref(fieldgroup_hdl%daddr) 854 scalar_ref_ = scalar_ref__tmp 855 ENDIF 856 832 857 IF (PRESENT(scale_factor_)) THEN 833 858 scale_factor__tmp = cxios_is_defined_fieldgroup_scale_factor(fieldgroup_hdl%daddr) -
XIOS/trunk/src/interface/fortran_attr/ifile_attr.F90
r802 r891 12 12 13 13 SUBROUTINE xios(set_file_attr) & 14 ( file_id, append, compression_level, description, enabled, format, min_digits, mode, name, name_suffix&15 , output_freq, output_level, par_access, record_offset, split_freq, split_freq_format, sync_freq&16 , time_counter, time_counter_name, timeseries, ts_prefix, type )14 ( file_id, append, compression_level, cyclic, description, enabled, format, min_digits, mode & 15 , name, name_suffix, output_freq, output_level, par_access, record_offset, split_freq, split_freq_format & 16 , sync_freq, time_counter, time_counter_name, timeseries, ts_prefix, type ) 17 17 18 18 IMPLICIT NONE … … 22 22 LOGICAL (KIND=C_BOOL) :: append_tmp 23 23 INTEGER , OPTIONAL, INTENT(IN) :: compression_level 24 LOGICAL , OPTIONAL, INTENT(IN) :: cyclic 25 LOGICAL (KIND=C_BOOL) :: cyclic_tmp 24 26 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: description 25 27 LOGICAL , OPTIONAL, INTENT(IN) :: enabled … … 45 47 CALL xios(get_file_handle)(file_id,file_hdl) 46 48 CALL xios(set_file_attr_hdl_) & 47 ( file_hdl, append, compression_level, description, enabled, format, min_digits, mode, name &48 , name _suffix, output_freq, output_level, par_access, record_offset, split_freq, split_freq_format &49 ( file_hdl, append, compression_level, cyclic, description, enabled, format, min_digits, mode & 50 , name, name_suffix, output_freq, output_level, par_access, record_offset, split_freq, split_freq_format & 49 51 , sync_freq, time_counter, time_counter_name, timeseries, ts_prefix, type ) 50 52 … … 52 54 53 55 SUBROUTINE xios(set_file_attr_hdl) & 54 ( file_hdl, append, compression_level, description, enabled, format, min_digits, mode, name &55 , name _suffix, output_freq, output_level, par_access, record_offset, split_freq, split_freq_format &56 ( file_hdl, append, compression_level, cyclic, description, enabled, format, min_digits, mode & 57 , name, name_suffix, output_freq, output_level, par_access, record_offset, split_freq, split_freq_format & 56 58 , sync_freq, time_counter, time_counter_name, timeseries, ts_prefix, type ) 57 59 … … 61 63 LOGICAL (KIND=C_BOOL) :: append_tmp 62 64 INTEGER , OPTIONAL, INTENT(IN) :: compression_level 65 LOGICAL , OPTIONAL, INTENT(IN) :: cyclic 66 LOGICAL (KIND=C_BOOL) :: cyclic_tmp 63 67 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: description 64 68 LOGICAL , OPTIONAL, INTENT(IN) :: enabled … … 83 87 84 88 CALL xios(set_file_attr_hdl_) & 85 ( file_hdl, append, compression_level, description, enabled, format, min_digits, mode, name &86 , name _suffix, output_freq, output_level, par_access, record_offset, split_freq, split_freq_format &89 ( file_hdl, append, compression_level, cyclic, description, enabled, format, min_digits, mode & 90 , name, name_suffix, output_freq, output_level, par_access, record_offset, split_freq, split_freq_format & 87 91 , sync_freq, time_counter, time_counter_name, timeseries, ts_prefix, type ) 88 92 … … 90 94 91 95 SUBROUTINE xios(set_file_attr_hdl_) & 92 ( file_hdl, append_, compression_level_, description_, enabled_, format_, min_digits_, mode_ &93 , name_, name_suffix_, output_freq_, output_level_, par_access_, record_offset_, split_freq_ &96 ( file_hdl, append_, compression_level_, cyclic_, description_, enabled_, format_, min_digits_ & 97 , mode_, name_, name_suffix_, output_freq_, output_level_, par_access_, record_offset_, split_freq_ & 94 98 , split_freq_format_, sync_freq_, time_counter_, time_counter_name_, timeseries_, ts_prefix_ & 95 99 , type_ ) … … 100 104 LOGICAL (KIND=C_BOOL) :: append__tmp 101 105 INTEGER , OPTIONAL, INTENT(IN) :: compression_level_ 106 LOGICAL , OPTIONAL, INTENT(IN) :: cyclic_ 107 LOGICAL (KIND=C_BOOL) :: cyclic__tmp 102 108 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: description_ 103 109 LOGICAL , OPTIONAL, INTENT(IN) :: enabled_ … … 130 136 ENDIF 131 137 138 IF (PRESENT(cyclic_)) THEN 139 cyclic__tmp = cyclic_ 140 CALL cxios_set_file_cyclic(file_hdl%daddr, cyclic__tmp) 141 ENDIF 142 132 143 IF (PRESENT(description_)) THEN 133 144 CALL cxios_set_file_description(file_hdl%daddr, description_, len(description_)) … … 210 221 211 222 SUBROUTINE xios(get_file_attr) & 212 ( file_id, append, compression_level, description, enabled, format, min_digits, mode, name, name_suffix&213 , output_freq, output_level, par_access, record_offset, split_freq, split_freq_format, sync_freq&214 , time_counter, time_counter_name, timeseries, ts_prefix, type )223 ( file_id, append, compression_level, cyclic, description, enabled, format, min_digits, mode & 224 , name, name_suffix, output_freq, output_level, par_access, record_offset, split_freq, split_freq_format & 225 , sync_freq, time_counter, time_counter_name, timeseries, ts_prefix, type ) 215 226 216 227 IMPLICIT NONE … … 220 231 LOGICAL (KIND=C_BOOL) :: append_tmp 221 232 INTEGER , OPTIONAL, INTENT(OUT) :: compression_level 233 LOGICAL , OPTIONAL, INTENT(OUT) :: cyclic 234 LOGICAL (KIND=C_BOOL) :: cyclic_tmp 222 235 CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: description 223 236 LOGICAL , OPTIONAL, INTENT(OUT) :: enabled … … 243 256 CALL xios(get_file_handle)(file_id,file_hdl) 244 257 CALL xios(get_file_attr_hdl_) & 245 ( file_hdl, append, compression_level, description, enabled, format, min_digits, mode, name &246 , name _suffix, output_freq, output_level, par_access, record_offset, split_freq, split_freq_format &258 ( file_hdl, append, compression_level, cyclic, description, enabled, format, min_digits, mode & 259 , name, name_suffix, output_freq, output_level, par_access, record_offset, split_freq, split_freq_format & 247 260 , sync_freq, time_counter, time_counter_name, timeseries, ts_prefix, type ) 248 261 … … 250 263 251 264 SUBROUTINE xios(get_file_attr_hdl) & 252 ( file_hdl, append, compression_level, description, enabled, format, min_digits, mode, name &253 , name _suffix, output_freq, output_level, par_access, record_offset, split_freq, split_freq_format &265 ( file_hdl, append, compression_level, cyclic, description, enabled, format, min_digits, mode & 266 , name, name_suffix, output_freq, output_level, par_access, record_offset, split_freq, split_freq_format & 254 267 , sync_freq, time_counter, time_counter_name, timeseries, ts_prefix, type ) 255 268 … … 259 272 LOGICAL (KIND=C_BOOL) :: append_tmp 260 273 INTEGER , OPTIONAL, INTENT(OUT) :: compression_level 274 LOGICAL , OPTIONAL, INTENT(OUT) :: cyclic 275 LOGICAL (KIND=C_BOOL) :: cyclic_tmp 261 276 CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: description 262 277 LOGICAL , OPTIONAL, INTENT(OUT) :: enabled … … 281 296 282 297 CALL xios(get_file_attr_hdl_) & 283 ( file_hdl, append, compression_level, description, enabled, format, min_digits, mode, name &284 , name _suffix, output_freq, output_level, par_access, record_offset, split_freq, split_freq_format &298 ( file_hdl, append, compression_level, cyclic, description, enabled, format, min_digits, mode & 299 , name, name_suffix, output_freq, output_level, par_access, record_offset, split_freq, split_freq_format & 285 300 , sync_freq, time_counter, time_counter_name, timeseries, ts_prefix, type ) 286 301 … … 288 303 289 304 SUBROUTINE xios(get_file_attr_hdl_) & 290 ( file_hdl, append_, compression_level_, description_, enabled_, format_, min_digits_, mode_ &291 , name_, name_suffix_, output_freq_, output_level_, par_access_, record_offset_, split_freq_ &305 ( file_hdl, append_, compression_level_, cyclic_, description_, enabled_, format_, min_digits_ & 306 , mode_, name_, name_suffix_, output_freq_, output_level_, par_access_, record_offset_, split_freq_ & 292 307 , split_freq_format_, sync_freq_, time_counter_, time_counter_name_, timeseries_, ts_prefix_ & 293 308 , type_ ) … … 298 313 LOGICAL (KIND=C_BOOL) :: append__tmp 299 314 INTEGER , OPTIONAL, INTENT(OUT) :: compression_level_ 315 LOGICAL , OPTIONAL, INTENT(OUT) :: cyclic_ 316 LOGICAL (KIND=C_BOOL) :: cyclic__tmp 300 317 CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: description_ 301 318 LOGICAL , OPTIONAL, INTENT(OUT) :: enabled_ … … 328 345 ENDIF 329 346 347 IF (PRESENT(cyclic_)) THEN 348 CALL cxios_get_file_cyclic(file_hdl%daddr, cyclic__tmp) 349 cyclic_ = cyclic__tmp 350 ENDIF 351 330 352 IF (PRESENT(description_)) THEN 331 353 CALL cxios_get_file_description(file_hdl%daddr, description_, len(description_)) … … 408 430 409 431 SUBROUTINE xios(is_defined_file_attr) & 410 ( file_id, append, compression_level, description, enabled, format, min_digits, mode, name, name_suffix&411 , output_freq, output_level, par_access, record_offset, split_freq, split_freq_format, sync_freq&412 , time_counter, time_counter_name, timeseries, ts_prefix, type )432 ( file_id, append, compression_level, cyclic, description, enabled, format, min_digits, mode & 433 , name, name_suffix, output_freq, output_level, par_access, record_offset, split_freq, split_freq_format & 434 , sync_freq, time_counter, time_counter_name, timeseries, ts_prefix, type ) 413 435 414 436 IMPLICIT NONE … … 419 441 LOGICAL, OPTIONAL, INTENT(OUT) :: compression_level 420 442 LOGICAL(KIND=C_BOOL) :: compression_level_tmp 443 LOGICAL, OPTIONAL, INTENT(OUT) :: cyclic 444 LOGICAL(KIND=C_BOOL) :: cyclic_tmp 421 445 LOGICAL, OPTIONAL, INTENT(OUT) :: description 422 446 LOGICAL(KIND=C_BOOL) :: description_tmp … … 460 484 CALL xios(get_file_handle)(file_id,file_hdl) 461 485 CALL xios(is_defined_file_attr_hdl_) & 462 ( file_hdl, append, compression_level, description, enabled, format, min_digits, mode, name &463 , name _suffix, output_freq, output_level, par_access, record_offset, split_freq, split_freq_format &486 ( file_hdl, append, compression_level, cyclic, description, enabled, format, min_digits, mode & 487 , name, name_suffix, output_freq, output_level, par_access, record_offset, split_freq, split_freq_format & 464 488 , sync_freq, time_counter, time_counter_name, timeseries, ts_prefix, type ) 465 489 … … 467 491 468 492 SUBROUTINE xios(is_defined_file_attr_hdl) & 469 ( file_hdl, append, compression_level, description, enabled, format, min_digits, mode, name &470 , name _suffix, output_freq, output_level, par_access, record_offset, split_freq, split_freq_format &493 ( file_hdl, append, compression_level, cyclic, description, enabled, format, min_digits, mode & 494 , name, name_suffix, output_freq, output_level, par_access, record_offset, split_freq, split_freq_format & 471 495 , sync_freq, time_counter, time_counter_name, timeseries, ts_prefix, type ) 472 496 … … 477 501 LOGICAL, OPTIONAL, INTENT(OUT) :: compression_level 478 502 LOGICAL(KIND=C_BOOL) :: compression_level_tmp 503 LOGICAL, OPTIONAL, INTENT(OUT) :: cyclic 504 LOGICAL(KIND=C_BOOL) :: cyclic_tmp 479 505 LOGICAL, OPTIONAL, INTENT(OUT) :: description 480 506 LOGICAL(KIND=C_BOOL) :: description_tmp … … 517 543 518 544 CALL xios(is_defined_file_attr_hdl_) & 519 ( file_hdl, append, compression_level, description, enabled, format, min_digits, mode, name &520 , name _suffix, output_freq, output_level, par_access, record_offset, split_freq, split_freq_format &545 ( file_hdl, append, compression_level, cyclic, description, enabled, format, min_digits, mode & 546 , name, name_suffix, output_freq, output_level, par_access, record_offset, split_freq, split_freq_format & 521 547 , sync_freq, time_counter, time_counter_name, timeseries, ts_prefix, type ) 522 548 … … 524 550 525 551 SUBROUTINE xios(is_defined_file_attr_hdl_) & 526 ( file_hdl, append_, compression_level_, description_, enabled_, format_, min_digits_, mode_ &527 , name_, name_suffix_, output_freq_, output_level_, par_access_, record_offset_, split_freq_ &552 ( file_hdl, append_, compression_level_, cyclic_, description_, enabled_, format_, min_digits_ & 553 , mode_, name_, name_suffix_, output_freq_, output_level_, par_access_, record_offset_, split_freq_ & 528 554 , split_freq_format_, sync_freq_, time_counter_, time_counter_name_, timeseries_, ts_prefix_ & 529 555 , type_ ) … … 535 561 LOGICAL, OPTIONAL, INTENT(OUT) :: compression_level_ 536 562 LOGICAL(KIND=C_BOOL) :: compression_level__tmp 563 LOGICAL, OPTIONAL, INTENT(OUT) :: cyclic_ 564 LOGICAL(KIND=C_BOOL) :: cyclic__tmp 537 565 LOGICAL, OPTIONAL, INTENT(OUT) :: description_ 538 566 LOGICAL(KIND=C_BOOL) :: description__tmp … … 584 612 ENDIF 585 613 614 IF (PRESENT(cyclic_)) THEN 615 cyclic__tmp = cxios_is_defined_file_cyclic(file_hdl%daddr) 616 cyclic_ = cyclic__tmp 617 ENDIF 618 586 619 IF (PRESENT(description_)) THEN 587 620 description__tmp = cxios_is_defined_file_description(file_hdl%daddr) -
XIOS/trunk/src/interface/fortran_attr/ifilegroup_attr.F90
r802 r891 12 12 13 13 SUBROUTINE xios(set_filegroup_attr) & 14 ( filegroup_id, append, compression_level, description, enabled, format, group_ref, min_digits &14 ( filegroup_id, append, compression_level, cyclic, description, enabled, format, group_ref, min_digits & 15 15 , mode, name, name_suffix, output_freq, output_level, par_access, record_offset, split_freq & 16 16 , split_freq_format, sync_freq, time_counter, time_counter_name, timeseries, ts_prefix, type & … … 23 23 LOGICAL (KIND=C_BOOL) :: append_tmp 24 24 INTEGER , OPTIONAL, INTENT(IN) :: compression_level 25 LOGICAL , OPTIONAL, INTENT(IN) :: cyclic 26 LOGICAL (KIND=C_BOOL) :: cyclic_tmp 25 27 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: description 26 28 LOGICAL , OPTIONAL, INTENT(IN) :: enabled … … 47 49 CALL xios(get_filegroup_handle)(filegroup_id,filegroup_hdl) 48 50 CALL xios(set_filegroup_attr_hdl_) & 49 ( filegroup_hdl, append, compression_level, description, enabled, format, group_ref, min_digits&50 , m ode, name, name_suffix, output_freq, output_level, par_access, record_offset, split_freq&51 , split_freq _format, sync_freq, time_counter, time_counter_name, timeseries, ts_prefix, type&52 )51 ( filegroup_hdl, append, compression_level, cyclic, description, enabled, format, group_ref & 52 , min_digits, mode, name, name_suffix, output_freq, output_level, par_access, record_offset & 53 , split_freq, split_freq_format, sync_freq, time_counter, time_counter_name, timeseries, ts_prefix & 54 , type ) 53 55 54 56 END SUBROUTINE xios(set_filegroup_attr) 55 57 56 58 SUBROUTINE xios(set_filegroup_attr_hdl) & 57 ( filegroup_hdl, append, compression_level, description, enabled, format, group_ref, min_digits&58 , m ode, name, name_suffix, output_freq, output_level, par_access, record_offset, split_freq&59 , split_freq _format, sync_freq, time_counter, time_counter_name, timeseries, ts_prefix, type&60 )59 ( filegroup_hdl, append, compression_level, cyclic, description, enabled, format, group_ref & 60 , min_digits, mode, name, name_suffix, output_freq, output_level, par_access, record_offset & 61 , split_freq, split_freq_format, sync_freq, time_counter, time_counter_name, timeseries, ts_prefix & 62 , type ) 61 63 62 64 IMPLICIT NONE … … 65 67 LOGICAL (KIND=C_BOOL) :: append_tmp 66 68 INTEGER , OPTIONAL, INTENT(IN) :: compression_level 69 LOGICAL , OPTIONAL, INTENT(IN) :: cyclic 70 LOGICAL (KIND=C_BOOL) :: cyclic_tmp 67 71 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: description 68 72 LOGICAL , OPTIONAL, INTENT(IN) :: enabled … … 88 92 89 93 CALL xios(set_filegroup_attr_hdl_) & 90 ( filegroup_hdl, append, compression_level, description, enabled, format, group_ref, min_digits&91 , m ode, name, name_suffix, output_freq, output_level, par_access, record_offset, split_freq&92 , split_freq _format, sync_freq, time_counter, time_counter_name, timeseries, ts_prefix, type&93 )94 ( filegroup_hdl, append, compression_level, cyclic, description, enabled, format, group_ref & 95 , min_digits, mode, name, name_suffix, output_freq, output_level, par_access, record_offset & 96 , split_freq, split_freq_format, sync_freq, time_counter, time_counter_name, timeseries, ts_prefix & 97 , type ) 94 98 95 99 END SUBROUTINE xios(set_filegroup_attr_hdl) 96 100 97 101 SUBROUTINE xios(set_filegroup_attr_hdl_) & 98 ( filegroup_hdl, append_, compression_level_, description_, enabled_, format_, group_ref_, min_digits_ &99 , m ode_, name_, name_suffix_, output_freq_, output_level_, par_access_, record_offset_, split_freq_ &100 , split_freq_ format_, sync_freq_, time_counter_, time_counter_name_, timeseries_, ts_prefix_ &101 , t ype_ )102 ( filegroup_hdl, append_, compression_level_, cyclic_, description_, enabled_, format_, group_ref_ & 103 , min_digits_, mode_, name_, name_suffix_, output_freq_, output_level_, par_access_, record_offset_ & 104 , split_freq_, split_freq_format_, sync_freq_, time_counter_, time_counter_name_, timeseries_ & 105 , ts_prefix_, type_ ) 102 106 103 107 IMPLICIT NONE … … 106 110 LOGICAL (KIND=C_BOOL) :: append__tmp 107 111 INTEGER , OPTIONAL, INTENT(IN) :: compression_level_ 112 LOGICAL , OPTIONAL, INTENT(IN) :: cyclic_ 113 LOGICAL (KIND=C_BOOL) :: cyclic__tmp 108 114 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: description_ 109 115 LOGICAL , OPTIONAL, INTENT(IN) :: enabled_ … … 137 143 ENDIF 138 144 145 IF (PRESENT(cyclic_)) THEN 146 cyclic__tmp = cyclic_ 147 CALL cxios_set_filegroup_cyclic(filegroup_hdl%daddr, cyclic__tmp) 148 ENDIF 149 139 150 IF (PRESENT(description_)) THEN 140 151 CALL cxios_set_filegroup_description(filegroup_hdl%daddr, description_, len(description_)) … … 221 232 222 233 SUBROUTINE xios(get_filegroup_attr) & 223 ( filegroup_id, append, compression_level, description, enabled, format, group_ref, min_digits &234 ( filegroup_id, append, compression_level, cyclic, description, enabled, format, group_ref, min_digits & 224 235 , mode, name, name_suffix, output_freq, output_level, par_access, record_offset, split_freq & 225 236 , split_freq_format, sync_freq, time_counter, time_counter_name, timeseries, ts_prefix, type & … … 232 243 LOGICAL (KIND=C_BOOL) :: append_tmp 233 244 INTEGER , OPTIONAL, INTENT(OUT) :: compression_level 245 LOGICAL , OPTIONAL, INTENT(OUT) :: cyclic 246 LOGICAL (KIND=C_BOOL) :: cyclic_tmp 234 247 CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: description 235 248 LOGICAL , OPTIONAL, INTENT(OUT) :: enabled … … 256 269 CALL xios(get_filegroup_handle)(filegroup_id,filegroup_hdl) 257 270 CALL xios(get_filegroup_attr_hdl_) & 258 ( filegroup_hdl, append, compression_level, description, enabled, format, group_ref, min_digits&259 , m ode, name, name_suffix, output_freq, output_level, par_access, record_offset, split_freq&260 , split_freq _format, sync_freq, time_counter, time_counter_name, timeseries, ts_prefix, type&261 )271 ( filegroup_hdl, append, compression_level, cyclic, description, enabled, format, group_ref & 272 , min_digits, mode, name, name_suffix, output_freq, output_level, par_access, record_offset & 273 , split_freq, split_freq_format, sync_freq, time_counter, time_counter_name, timeseries, ts_prefix & 274 , type ) 262 275 263 276 END SUBROUTINE xios(get_filegroup_attr) 264 277 265 278 SUBROUTINE xios(get_filegroup_attr_hdl) & 266 ( filegroup_hdl, append, compression_level, description, enabled, format, group_ref, min_digits&267 , m ode, name, name_suffix, output_freq, output_level, par_access, record_offset, split_freq&268 , split_freq _format, sync_freq, time_counter, time_counter_name, timeseries, ts_prefix, type&269 )279 ( filegroup_hdl, append, compression_level, cyclic, description, enabled, format, group_ref & 280 , min_digits, mode, name, name_suffix, output_freq, output_level, par_access, record_offset & 281 , split_freq, split_freq_format, sync_freq, time_counter, time_counter_name, timeseries, ts_prefix & 282 , type ) 270 283 271 284 IMPLICIT NONE … … 274 287 LOGICAL (KIND=C_BOOL) :: append_tmp 275 288 INTEGER , OPTIONAL, INTENT(OUT) :: compression_level 289 LOGICAL , OPTIONAL, INTENT(OUT) :: cyclic 290 LOGICAL (KIND=C_BOOL) :: cyclic_tmp 276 291 CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: description 277 292 LOGICAL , OPTIONAL, INTENT(OUT) :: enabled … … 297 312 298 313 CALL xios(get_filegroup_attr_hdl_) & 299 ( filegroup_hdl, append, compression_level, description, enabled, format, group_ref, min_digits&300 , m ode, name, name_suffix, output_freq, output_level, par_access, record_offset, split_freq&301 , split_freq _format, sync_freq, time_counter, time_counter_name, timeseries, ts_prefix, type&302 )314 ( filegroup_hdl, append, compression_level, cyclic, description, enabled, format, group_ref & 315 , min_digits, mode, name, name_suffix, output_freq, output_level, par_access, record_offset & 316 , split_freq, split_freq_format, sync_freq, time_counter, time_counter_name, timeseries, ts_prefix & 317 , type ) 303 318 304 319 END SUBROUTINE xios(get_filegroup_attr_hdl) 305 320 306 321 SUBROUTINE xios(get_filegroup_attr_hdl_) & 307 ( filegroup_hdl, append_, compression_level_, description_, enabled_, format_, group_ref_, min_digits_ &308 , m ode_, name_, name_suffix_, output_freq_, output_level_, par_access_, record_offset_, split_freq_ &309 , split_freq_ format_, sync_freq_, time_counter_, time_counter_name_, timeseries_, ts_prefix_ &310 , t ype_ )322 ( filegroup_hdl, append_, compression_level_, cyclic_, description_, enabled_, format_, group_ref_ & 323 , min_digits_, mode_, name_, name_suffix_, output_freq_, output_level_, par_access_, record_offset_ & 324 , split_freq_, split_freq_format_, sync_freq_, time_counter_, time_counter_name_, timeseries_ & 325 , ts_prefix_, type_ ) 311 326 312 327 IMPLICIT NONE … … 315 330 LOGICAL (KIND=C_BOOL) :: append__tmp 316 331 INTEGER , OPTIONAL, INTENT(OUT) :: compression_level_ 332 LOGICAL , OPTIONAL, INTENT(OUT) :: cyclic_ 333 LOGICAL (KIND=C_BOOL) :: cyclic__tmp 317 334 CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: description_ 318 335 LOGICAL , OPTIONAL, INTENT(OUT) :: enabled_ … … 346 363 ENDIF 347 364 365 IF (PRESENT(cyclic_)) THEN 366 CALL cxios_get_filegroup_cyclic(filegroup_hdl%daddr, cyclic__tmp) 367 cyclic_ = cyclic__tmp 368 ENDIF 369 348 370 IF (PRESENT(description_)) THEN 349 371 CALL cxios_get_filegroup_description(filegroup_hdl%daddr, description_, len(description_)) … … 430 452 431 453 SUBROUTINE xios(is_defined_filegroup_attr) & 432 ( filegroup_id, append, compression_level, description, enabled, format, group_ref, min_digits &454 ( filegroup_id, append, compression_level, cyclic, description, enabled, format, group_ref, min_digits & 433 455 , mode, name, name_suffix, output_freq, output_level, par_access, record_offset, split_freq & 434 456 , split_freq_format, sync_freq, time_counter, time_counter_name, timeseries, ts_prefix, type & … … 442 464 LOGICAL, OPTIONAL, INTENT(OUT) :: compression_level 443 465 LOGICAL(KIND=C_BOOL) :: compression_level_tmp 466 LOGICAL, OPTIONAL, INTENT(OUT) :: cyclic 467 LOGICAL(KIND=C_BOOL) :: cyclic_tmp 444 468 LOGICAL, OPTIONAL, INTENT(OUT) :: description 445 469 LOGICAL(KIND=C_BOOL) :: description_tmp … … 485 509 CALL xios(get_filegroup_handle)(filegroup_id,filegroup_hdl) 486 510 CALL xios(is_defined_filegroup_attr_hdl_) & 487 ( filegroup_hdl, append, compression_level, description, enabled, format, group_ref, min_digits&488 , m ode, name, name_suffix, output_freq, output_level, par_access, record_offset, split_freq&489 , split_freq _format, sync_freq, time_counter, time_counter_name, timeseries, ts_prefix, type&490 )511 ( filegroup_hdl, append, compression_level, cyclic, description, enabled, format, group_ref & 512 , min_digits, mode, name, name_suffix, output_freq, output_level, par_access, record_offset & 513 , split_freq, split_freq_format, sync_freq, time_counter, time_counter_name, timeseries, ts_prefix & 514 , type ) 491 515 492 516 END SUBROUTINE xios(is_defined_filegroup_attr) 493 517 494 518 SUBROUTINE xios(is_defined_filegroup_attr_hdl) & 495 ( filegroup_hdl, append, compression_level, description, enabled, format, group_ref, min_digits&496 , m ode, name, name_suffix, output_freq, output_level, par_access, record_offset, split_freq&497 , split_freq _format, sync_freq, time_counter, time_counter_name, timeseries, ts_prefix, type&498 )519 ( filegroup_hdl, append, compression_level, cyclic, description, enabled, format, group_ref & 520 , min_digits, mode, name, name_suffix, output_freq, output_level, par_access, record_offset & 521 , split_freq, split_freq_format, sync_freq, time_counter, time_counter_name, timeseries, ts_prefix & 522 , type ) 499 523 500 524 IMPLICIT NONE … … 504 528 LOGICAL, OPTIONAL, INTENT(OUT) :: compression_level 505 529 LOGICAL(KIND=C_BOOL) :: compression_level_tmp 530 LOGICAL, OPTIONAL, INTENT(OUT) :: cyclic 531 LOGICAL(KIND=C_BOOL) :: cyclic_tmp 506 532 LOGICAL, OPTIONAL, INTENT(OUT) :: description 507 533 LOGICAL(KIND=C_BOOL) :: description_tmp … … 546 572 547 573 CALL xios(is_defined_filegroup_attr_hdl_) & 548 ( filegroup_hdl, append, compression_level, description, enabled, format, group_ref, min_digits&549 , m ode, name, name_suffix, output_freq, output_level, par_access, record_offset, split_freq&550 , split_freq _format, sync_freq, time_counter, time_counter_name, timeseries, ts_prefix, type&551 )574 ( filegroup_hdl, append, compression_level, cyclic, description, enabled, format, group_ref & 575 , min_digits, mode, name, name_suffix, output_freq, output_level, par_access, record_offset & 576 , split_freq, split_freq_format, sync_freq, time_counter, time_counter_name, timeseries, ts_prefix & 577 , type ) 552 578 553 579 END SUBROUTINE xios(is_defined_filegroup_attr_hdl) 554 580 555 581 SUBROUTINE xios(is_defined_filegroup_attr_hdl_) & 556 ( filegroup_hdl, append_, compression_level_, description_, enabled_, format_, group_ref_, min_digits_ &557 , m ode_, name_, name_suffix_, output_freq_, output_level_, par_access_, record_offset_, split_freq_ &558 , split_freq_ format_, sync_freq_, time_counter_, time_counter_name_, timeseries_, ts_prefix_ &559 , t ype_ )582 ( filegroup_hdl, append_, compression_level_, cyclic_, description_, enabled_, format_, group_ref_ & 583 , min_digits_, mode_, name_, name_suffix_, output_freq_, output_level_, par_access_, record_offset_ & 584 , split_freq_, split_freq_format_, sync_freq_, time_counter_, time_counter_name_, timeseries_ & 585 , ts_prefix_, type_ ) 560 586 561 587 IMPLICIT NONE … … 565 591 LOGICAL, OPTIONAL, INTENT(OUT) :: compression_level_ 566 592 LOGICAL(KIND=C_BOOL) :: compression_level__tmp 593 LOGICAL, OPTIONAL, INTENT(OUT) :: cyclic_ 594 LOGICAL(KIND=C_BOOL) :: cyclic__tmp 567 595 LOGICAL, OPTIONAL, INTENT(OUT) :: description_ 568 596 LOGICAL(KIND=C_BOOL) :: description__tmp … … 616 644 ENDIF 617 645 646 IF (PRESENT(cyclic_)) THEN 647 cyclic__tmp = cxios_is_defined_filegroup_cyclic(filegroup_hdl%daddr) 648 cyclic_ = cyclic__tmp 649 ENDIF 650 618 651 IF (PRESENT(description_)) THEN 619 652 description__tmp = cxios_is_defined_filegroup_description(filegroup_hdl%daddr) -
XIOS/trunk/src/interface/fortran_attr/iinterpolate_axis_attr.F90
r786 r891 12 12 13 13 SUBROUTINE xios(set_interpolate_axis_attr) & 14 ( interpolate_axis_id, order, type )14 ( interpolate_axis_id, coordinate, order, type ) 15 15 16 16 IMPLICIT NONE 17 17 TYPE(txios(interpolate_axis)) :: interpolate_axis_hdl 18 18 CHARACTER(LEN=*), INTENT(IN) ::interpolate_axis_id 19 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: coordinate 19 20 INTEGER , OPTIONAL, INTENT(IN) :: order 20 21 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: type … … 22 23 CALL xios(get_interpolate_axis_handle)(interpolate_axis_id,interpolate_axis_hdl) 23 24 CALL xios(set_interpolate_axis_attr_hdl_) & 24 ( interpolate_axis_hdl, order, type )25 ( interpolate_axis_hdl, coordinate, order, type ) 25 26 26 27 END SUBROUTINE xios(set_interpolate_axis_attr) 27 28 28 29 SUBROUTINE xios(set_interpolate_axis_attr_hdl) & 29 ( interpolate_axis_hdl, order, type )30 ( interpolate_axis_hdl, coordinate, order, type ) 30 31 31 32 IMPLICIT NONE 32 33 TYPE(txios(interpolate_axis)) , INTENT(IN) :: interpolate_axis_hdl 34 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: coordinate 33 35 INTEGER , OPTIONAL, INTENT(IN) :: order 34 36 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: type 35 37 36 38 CALL xios(set_interpolate_axis_attr_hdl_) & 37 ( interpolate_axis_hdl, order, type )39 ( interpolate_axis_hdl, coordinate, order, type ) 38 40 39 41 END SUBROUTINE xios(set_interpolate_axis_attr_hdl) 40 42 41 43 SUBROUTINE xios(set_interpolate_axis_attr_hdl_) & 42 ( interpolate_axis_hdl, order_, type_ )44 ( interpolate_axis_hdl, coordinate_, order_, type_ ) 43 45 44 46 IMPLICIT NONE 45 47 TYPE(txios(interpolate_axis)) , INTENT(IN) :: interpolate_axis_hdl 48 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: coordinate_ 46 49 INTEGER , OPTIONAL, INTENT(IN) :: order_ 47 50 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: type_ 51 52 IF (PRESENT(coordinate_)) THEN 53 CALL cxios_set_interpolate_axis_coordinate(interpolate_axis_hdl%daddr, coordinate_, len(coordinate_)) 54 ENDIF 48 55 49 56 IF (PRESENT(order_)) THEN … … 58 65 59 66 SUBROUTINE xios(get_interpolate_axis_attr) & 60 ( interpolate_axis_id, order, type )67 ( interpolate_axis_id, coordinate, order, type ) 61 68 62 69 IMPLICIT NONE 63 70 TYPE(txios(interpolate_axis)) :: interpolate_axis_hdl 64 71 CHARACTER(LEN=*), INTENT(IN) ::interpolate_axis_id 72 CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: coordinate 65 73 INTEGER , OPTIONAL, INTENT(OUT) :: order 66 74 CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: type … … 68 76 CALL xios(get_interpolate_axis_handle)(interpolate_axis_id,interpolate_axis_hdl) 69 77 CALL xios(get_interpolate_axis_attr_hdl_) & 70 ( interpolate_axis_hdl, order, type )78 ( interpolate_axis_hdl, coordinate, order, type ) 71 79 72 80 END SUBROUTINE xios(get_interpolate_axis_attr) 73 81 74 82 SUBROUTINE xios(get_interpolate_axis_attr_hdl) & 75 ( interpolate_axis_hdl, order, type )83 ( interpolate_axis_hdl, coordinate, order, type ) 76 84 77 85 IMPLICIT NONE 78 86 TYPE(txios(interpolate_axis)) , INTENT(IN) :: interpolate_axis_hdl 87 CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: coordinate 79 88 INTEGER , OPTIONAL, INTENT(OUT) :: order 80 89 CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: type 81 90 82 91 CALL xios(get_interpolate_axis_attr_hdl_) & 83 ( interpolate_axis_hdl, order, type )92 ( interpolate_axis_hdl, coordinate, order, type ) 84 93 85 94 END SUBROUTINE xios(get_interpolate_axis_attr_hdl) 86 95 87 96 SUBROUTINE xios(get_interpolate_axis_attr_hdl_) & 88 ( interpolate_axis_hdl, order_, type_ )97 ( interpolate_axis_hdl, coordinate_, order_, type_ ) 89 98 90 99 IMPLICIT NONE 91 100 TYPE(txios(interpolate_axis)) , INTENT(IN) :: interpolate_axis_hdl 101 CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: coordinate_ 92 102 INTEGER , OPTIONAL, INTENT(OUT) :: order_ 93 103 CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: type_ 104 105 IF (PRESENT(coordinate_)) THEN 106 CALL cxios_get_interpolate_axis_coordinate(interpolate_axis_hdl%daddr, coordinate_, len(coordinate_)) 107 ENDIF 94 108 95 109 IF (PRESENT(order_)) THEN … … 104 118 105 119 SUBROUTINE xios(is_defined_interpolate_axis_attr) & 106 ( interpolate_axis_id, order, type )120 ( interpolate_axis_id, coordinate, order, type ) 107 121 108 122 IMPLICIT NONE 109 123 TYPE(txios(interpolate_axis)) :: interpolate_axis_hdl 110 124 CHARACTER(LEN=*), INTENT(IN) ::interpolate_axis_id 125 LOGICAL, OPTIONAL, INTENT(OUT) :: coordinate 126 LOGICAL(KIND=C_BOOL) :: coordinate_tmp 111 127 LOGICAL, OPTIONAL, INTENT(OUT) :: order 112 128 LOGICAL(KIND=C_BOOL) :: order_tmp … … 116 132 CALL xios(get_interpolate_axis_handle)(interpolate_axis_id,interpolate_axis_hdl) 117 133 CALL xios(is_defined_interpolate_axis_attr_hdl_) & 118 ( interpolate_axis_hdl, order, type )134 ( interpolate_axis_hdl, coordinate, order, type ) 119 135 120 136 END SUBROUTINE xios(is_defined_interpolate_axis_attr) 121 137 122 138 SUBROUTINE xios(is_defined_interpolate_axis_attr_hdl) & 123 ( interpolate_axis_hdl, order, type )139 ( interpolate_axis_hdl, coordinate, order, type ) 124 140 125 141 IMPLICIT NONE 126 142 TYPE(txios(interpolate_axis)) , INTENT(IN) :: interpolate_axis_hdl 143 LOGICAL, OPTIONAL, INTENT(OUT) :: coordinate 144 LOGICAL(KIND=C_BOOL) :: coordinate_tmp 127 145 LOGICAL, OPTIONAL, INTENT(OUT) :: order 128 146 LOGICAL(KIND=C_BOOL) :: order_tmp … … 131 149 132 150 CALL xios(is_defined_interpolate_axis_attr_hdl_) & 133 ( interpolate_axis_hdl, order, type )151 ( interpolate_axis_hdl, coordinate, order, type ) 134 152 135 153 END SUBROUTINE xios(is_defined_interpolate_axis_attr_hdl) 136 154 137 155 SUBROUTINE xios(is_defined_interpolate_axis_attr_hdl_) & 138 ( interpolate_axis_hdl, order_, type_ )156 ( interpolate_axis_hdl, coordinate_, order_, type_ ) 139 157 140 158 IMPLICIT NONE 141 159 TYPE(txios(interpolate_axis)) , INTENT(IN) :: interpolate_axis_hdl 160 LOGICAL, OPTIONAL, INTENT(OUT) :: coordinate_ 161 LOGICAL(KIND=C_BOOL) :: coordinate__tmp 142 162 LOGICAL, OPTIONAL, INTENT(OUT) :: order_ 143 163 LOGICAL(KIND=C_BOOL) :: order__tmp 144 164 LOGICAL, OPTIONAL, INTENT(OUT) :: type_ 145 165 LOGICAL(KIND=C_BOOL) :: type__tmp 166 167 IF (PRESENT(coordinate_)) THEN 168 coordinate__tmp = cxios_is_defined_interpolate_axis_coordinate(interpolate_axis_hdl%daddr) 169 coordinate_ = coordinate__tmp 170 ENDIF 146 171 147 172 IF (PRESENT(order_)) THEN -
XIOS/trunk/src/interface/fortran_attr/iinterpolate_domain_attr.F90
r786 r891 12 12 13 13 SUBROUTINE xios(set_interpolate_domain_attr) & 14 ( interpolate_domain_id, file, order )14 ( interpolate_domain_id, file, order, renormalize ) 15 15 16 16 IMPLICIT NONE … … 19 19 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: file 20 20 INTEGER , OPTIONAL, INTENT(IN) :: order 21 LOGICAL , OPTIONAL, INTENT(IN) :: renormalize 22 LOGICAL (KIND=C_BOOL) :: renormalize_tmp 21 23 22 24 CALL xios(get_interpolate_domain_handle)(interpolate_domain_id,interpolate_domain_hdl) 23 25 CALL xios(set_interpolate_domain_attr_hdl_) & 24 ( interpolate_domain_hdl, file, order )26 ( interpolate_domain_hdl, file, order, renormalize ) 25 27 26 28 END SUBROUTINE xios(set_interpolate_domain_attr) 27 29 28 30 SUBROUTINE xios(set_interpolate_domain_attr_hdl) & 29 ( interpolate_domain_hdl, file, order )31 ( interpolate_domain_hdl, file, order, renormalize ) 30 32 31 33 IMPLICIT NONE … … 33 35 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: file 34 36 INTEGER , OPTIONAL, INTENT(IN) :: order 37 LOGICAL , OPTIONAL, INTENT(IN) :: renormalize 38 LOGICAL (KIND=C_BOOL) :: renormalize_tmp 35 39 36 40 CALL xios(set_interpolate_domain_attr_hdl_) & 37 ( interpolate_domain_hdl, file, order )41 ( interpolate_domain_hdl, file, order, renormalize ) 38 42 39 43 END SUBROUTINE xios(set_interpolate_domain_attr_hdl) 40 44 41 45 SUBROUTINE xios(set_interpolate_domain_attr_hdl_) & 42 ( interpolate_domain_hdl, file_, order_ )46 ( interpolate_domain_hdl, file_, order_, renormalize_ ) 43 47 44 48 IMPLICIT NONE … … 46 50 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: file_ 47 51 INTEGER , OPTIONAL, INTENT(IN) :: order_ 52 LOGICAL , OPTIONAL, INTENT(IN) :: renormalize_ 53 LOGICAL (KIND=C_BOOL) :: renormalize__tmp 48 54 49 55 IF (PRESENT(file_)) THEN … … 55 61 ENDIF 56 62 63 IF (PRESENT(renormalize_)) THEN 64 renormalize__tmp = renormalize_ 65 CALL cxios_set_interpolate_domain_renormalize(interpolate_domain_hdl%daddr, renormalize__tmp) 66 ENDIF 67 57 68 END SUBROUTINE xios(set_interpolate_domain_attr_hdl_) 58 69 59 70 SUBROUTINE xios(get_interpolate_domain_attr) & 60 ( interpolate_domain_id, file, order )71 ( interpolate_domain_id, file, order, renormalize ) 61 72 62 73 IMPLICIT NONE … … 65 76 CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: file 66 77 INTEGER , OPTIONAL, INTENT(OUT) :: order 78 LOGICAL , OPTIONAL, INTENT(OUT) :: renormalize 79 LOGICAL (KIND=C_BOOL) :: renormalize_tmp 67 80 68 81 CALL xios(get_interpolate_domain_handle)(interpolate_domain_id,interpolate_domain_hdl) 69 82 CALL xios(get_interpolate_domain_attr_hdl_) & 70 ( interpolate_domain_hdl, file, order )83 ( interpolate_domain_hdl, file, order, renormalize ) 71 84 72 85 END SUBROUTINE xios(get_interpolate_domain_attr) 73 86 74 87 SUBROUTINE xios(get_interpolate_domain_attr_hdl) & 75 ( interpolate_domain_hdl, file, order )88 ( interpolate_domain_hdl, file, order, renormalize ) 76 89 77 90 IMPLICIT NONE … … 79 92 CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: file 80 93 INTEGER , OPTIONAL, INTENT(OUT) :: order 94 LOGICAL , OPTIONAL, INTENT(OUT) :: renormalize 95 LOGICAL (KIND=C_BOOL) :: renormalize_tmp 81 96 82 97 CALL xios(get_interpolate_domain_attr_hdl_) & 83 ( interpolate_domain_hdl, file, order )98 ( interpolate_domain_hdl, file, order, renormalize ) 84 99 85 100 END SUBROUTINE xios(get_interpolate_domain_attr_hdl) 86 101 87 102 SUBROUTINE xios(get_interpolate_domain_attr_hdl_) & 88 ( interpolate_domain_hdl, file_, order_ )103 ( interpolate_domain_hdl, file_, order_, renormalize_ ) 89 104 90 105 IMPLICIT NONE … … 92 107 CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: file_ 93 108 INTEGER , OPTIONAL, INTENT(OUT) :: order_ 109 LOGICAL , OPTIONAL, INTENT(OUT) :: renormalize_ 110 LOGICAL (KIND=C_BOOL) :: renormalize__tmp 94 111 95 112 IF (PRESENT(file_)) THEN … … 101 118 ENDIF 102 119 120 IF (PRESENT(renormalize_)) THEN 121 CALL cxios_get_interpolate_domain_renormalize(interpolate_domain_hdl%daddr, renormalize__tmp) 122 renormalize_ = renormalize__tmp 123 ENDIF 124 103 125 END SUBROUTINE xios(get_interpolate_domain_attr_hdl_) 104 126 105 127 SUBROUTINE xios(is_defined_interpolate_domain_attr) & 106 ( interpolate_domain_id, file, order )128 ( interpolate_domain_id, file, order, renormalize ) 107 129 108 130 IMPLICIT NONE … … 113 135 LOGICAL, OPTIONAL, INTENT(OUT) :: order 114 136 LOGICAL(KIND=C_BOOL) :: order_tmp 137 LOGICAL, OPTIONAL, INTENT(OUT) :: renormalize 138 LOGICAL(KIND=C_BOOL) :: renormalize_tmp 115 139 116 140 CALL xios(get_interpolate_domain_handle)(interpolate_domain_id,interpolate_domain_hdl) 117 141 CALL xios(is_defined_interpolate_domain_attr_hdl_) & 118 ( interpolate_domain_hdl, file, order )142 ( interpolate_domain_hdl, file, order, renormalize ) 119 143 120 144 END SUBROUTINE xios(is_defined_interpolate_domain_attr) 121 145 122 146 SUBROUTINE xios(is_defined_interpolate_domain_attr_hdl) & 123 ( interpolate_domain_hdl, file, order )147 ( interpolate_domain_hdl, file, order, renormalize ) 124 148 125 149 IMPLICIT NONE … … 129 153 LOGICAL, OPTIONAL, INTENT(OUT) :: order 130 154 LOGICAL(KIND=C_BOOL) :: order_tmp 155 LOGICAL, OPTIONAL, INTENT(OUT) :: renormalize 156 LOGICAL(KIND=C_BOOL) :: renormalize_tmp 131 157 132 158 CALL xios(is_defined_interpolate_domain_attr_hdl_) & 133 ( interpolate_domain_hdl, file, order )159 ( interpolate_domain_hdl, file, order, renormalize ) 134 160 135 161 END SUBROUTINE xios(is_defined_interpolate_domain_attr_hdl) 136 162 137 163 SUBROUTINE xios(is_defined_interpolate_domain_attr_hdl_) & 138 ( interpolate_domain_hdl, file_, order_ )164 ( interpolate_domain_hdl, file_, order_, renormalize_ ) 139 165 140 166 IMPLICIT NONE … … 144 170 LOGICAL, OPTIONAL, INTENT(OUT) :: order_ 145 171 LOGICAL(KIND=C_BOOL) :: order__tmp 172 LOGICAL, OPTIONAL, INTENT(OUT) :: renormalize_ 173 LOGICAL(KIND=C_BOOL) :: renormalize__tmp 146 174 147 175 IF (PRESENT(file_)) THEN … … 155 183 ENDIF 156 184 185 IF (PRESENT(renormalize_)) THEN 186 renormalize__tmp = cxios_is_defined_interpolate_domain_renormalize(interpolate_domain_hdl%daddr) 187 renormalize_ = renormalize__tmp 188 ENDIF 189 157 190 END SUBROUTINE xios(is_defined_interpolate_domain_attr_hdl_) 158 191 -
XIOS/trunk/src/interface/fortran_attr/interpolate_axis_interface_attr.F90
r786 r891 9 9 INTERFACE 10 10 ! Do not call directly / interface FORTRAN 2003 <-> C99 11 12 SUBROUTINE cxios_set_interpolate_axis_coordinate(interpolate_axis_hdl, coordinate, coordinate_size) BIND(C) 13 USE ISO_C_BINDING 14 INTEGER (kind = C_INTPTR_T), VALUE :: interpolate_axis_hdl 15 CHARACTER(kind = C_CHAR) , DIMENSION(*) :: coordinate 16 INTEGER (kind = C_INT) , VALUE :: coordinate_size 17 END SUBROUTINE cxios_set_interpolate_axis_coordinate 18 19 SUBROUTINE cxios_get_interpolate_axis_coordinate(interpolate_axis_hdl, coordinate, coordinate_size) BIND(C) 20 USE ISO_C_BINDING 21 INTEGER (kind = C_INTPTR_T), VALUE :: interpolate_axis_hdl 22 CHARACTER(kind = C_CHAR) , DIMENSION(*) :: coordinate 23 INTEGER (kind = C_INT) , VALUE :: coordinate_size 24 END SUBROUTINE cxios_get_interpolate_axis_coordinate 25 26 FUNCTION cxios_is_defined_interpolate_axis_coordinate(interpolate_axis_hdl) BIND(C) 27 USE ISO_C_BINDING 28 LOGICAL(kind=C_BOOL) :: cxios_is_defined_interpolate_axis_coordinate 29 INTEGER (kind = C_INTPTR_T), VALUE :: interpolate_axis_hdl 30 END FUNCTION cxios_is_defined_interpolate_axis_coordinate 31 11 32 12 33 SUBROUTINE cxios_set_interpolate_axis_order(interpolate_axis_hdl, order) BIND(C) -
XIOS/trunk/src/interface/fortran_attr/interpolate_domain_interface_attr.F90
r786 r891 49 49 END FUNCTION cxios_is_defined_interpolate_domain_order 50 50 51 52 SUBROUTINE cxios_set_interpolate_domain_renormalize(interpolate_domain_hdl, renormalize) BIND(C) 53 USE ISO_C_BINDING 54 INTEGER (kind = C_INTPTR_T), VALUE :: interpolate_domain_hdl 55 LOGICAL (KIND=C_BOOL) , VALUE :: renormalize 56 END SUBROUTINE cxios_set_interpolate_domain_renormalize 57 58 SUBROUTINE cxios_get_interpolate_domain_renormalize(interpolate_domain_hdl, renormalize) BIND(C) 59 USE ISO_C_BINDING 60 INTEGER (kind = C_INTPTR_T), VALUE :: interpolate_domain_hdl 61 LOGICAL (KIND=C_BOOL) :: renormalize 62 END SUBROUTINE cxios_get_interpolate_domain_renormalize 63 64 FUNCTION cxios_is_defined_interpolate_domain_renormalize(interpolate_domain_hdl) BIND(C) 65 USE ISO_C_BINDING 66 LOGICAL(kind=C_BOOL) :: cxios_is_defined_interpolate_domain_renormalize 67 INTEGER (kind = C_INTPTR_T), VALUE :: interpolate_domain_hdl 68 END FUNCTION cxios_is_defined_interpolate_domain_renormalize 69 51 70 END INTERFACE 52 71 -
XIOS/trunk/src/node/reduce_axis_to_scalar.cpp
r888 r891 19 19 CTransformation<CScalar>* CReduceAxisToScalar::create(const StdString& id, xml::CXMLNode* node) 20 20 { 21 CReduceAxisToScalar* reduceAxis = CReduceAxisToScalarGroup::get("reduce_axis_ definition")->createChild(id);21 CReduceAxisToScalar* reduceAxis = CReduceAxisToScalarGroup::get("reduce_axis_to_scalar_definition")->createChild(id); 22 22 if (node) reduceAxis->parse(*node); 23 23 return static_cast<CTransformation<CScalar>*>(reduceAxis); … … 33 33 //---------------------------------------------------------------- 34 34 35 StdString CReduceAxisToScalar::GetName(void) { return StdString("reduce_axis "); }36 StdString CReduceAxisToScalar::GetDefName(void) { return StdString("reduce_axis "); }35 StdString CReduceAxisToScalar::GetName(void) { return StdString("reduce_axis_to_scalar"); } 36 StdString CReduceAxisToScalar::GetDefName(void) { return StdString("reduce_axis_to_scalar"); } 37 37 ENodeType CReduceAxisToScalar::GetType(void) { return eReduceAxisToScalar; } 38 38
Note: See TracChangeset
for help on using the changeset viewer.