00001
00002
00003
00004
00005 #ifndef __F5iterate_H
00006 #define __F5iterate_H
00007
00008 #include <F5/hdf5inc.h>
00009 #include <F5/F5P.h>
00010 #include <F5/F5F.h>
00011 #include <F5/F5parameter.h>
00012
00013 #include "F5WinDLLApi.h"
00014
00015 #ifdef __cplusplus
00016 extern "C"
00017 {
00018 #endif
00019
00020
00049 F5_API int F5Iignore(const char*s);
00050
00051
00052 typedef herr_t F5_iterate_paramspace_t(F5Path*path, const F5ParameterSpace*params, void *user_data);
00053
00057 F5_API int F5iterate_paramspace(hid_t file_id, int *idx,
00058 const F5ParameterSpace*selection,
00059 F5_iterate_paramspace_t*callback, void *user_data ) ;
00060
00061
00067 typedef herr_t F5_iterate_timeslices_t(F5Path*path, double time, void *user_data);
00068
00072 F5_API int F5iterate_timeslices(hid_t file_id, hsize_t *idx, F5_iterate_timeslices_t*callback, void *user_data ) ;
00073
00074
00082 typedef herr_t F5_iterate_grids_t(F5Path*F5Grid, const char*gridname, void *user_data);
00083
00084
00095 F5_API int F5iterate_grids(F5Path*F5Slice, int *idx, F5_iterate_grids_t*callback, void *operator_data,
00096 F5_gridproperty_t**gridtypes, const char*coordinate_system ) ;
00097
00098
00107 typedef herr_t F5_iterate_topologies_t(F5Path*field, const char*topologyname,
00108 int index_depth,
00109 int topological_dimension,
00110 void *operator_data);
00115 F5_API int F5iterate_topologies(F5Path*grid, int *idx, F5_iterate_topologies_t*callback, void *operator_data);
00116
00123 typedef herr_t F5_iterate_fields_t(F5Path*field, const char*fieldname, void *operator_data);
00124
00128 typedef int F5_fieldtype_t(hid_t type_id);
00129
00130
00136 F5_API int F5iterate_vertex_fields(F5Path*grid, int *idx, F5_iterate_fields_t*callback, void *operator_data,
00137 const char*coordinate_system,
00138 F5_fieldtype_t*what) ;
00139
00144 F5_API int F5iterate_topology_fields(F5Path*grid, int *idx, F5_iterate_fields_t*callback, void *operator_data,
00145 const char*coordinate_system, F5_fieldtype_t*what);
00146
00147
00148 typedef herr_t F5_iterate_grid_atlas_t(F5Path*field, const char*coordinate_name,
00149 hid_t global_chart_hid, hid_t domain_group_hid,
00150 void *operator_data);
00151
00152 F5_API int F5iterate_grid_atlas(F5Path*grid, int *idx, F5_iterate_grid_atlas_t*callback, void *operator_data);
00153
00154
00159 F5_API int F5has_standard_vertex_fields(F5Path*grid);
00160
00161 typedef herr_t F5_iterate_fields_fragments_t(F5Path*field, const char*fragmentname, void *operator_data);
00162
00163 F5_API int F5iterate_field_fragments(F5Path*field, int *idx, F5_iterate_fields_fragments_t*callback,
00164 void *operator_data);
00165
00166
00167
00168
00169
00174 typedef herr_t F5_iterate_grids_per_bundle_t(hid_t file_id, hid_t gridinfo_id, const char*gridname, void *user_data);
00175
00179 F5_API int F5iterate_grids_per_bundle(hid_t file_id, int *idx, F5_iterate_grids_per_bundle_t*callback, void *user_data ) ;
00180
00181
00182 typedef herr_t F5_iterate_gridevolution_per_bundle_t(hid_t file_id, const char*gridname, double time, hid_t slice_id, void *user_data);
00183
00187 F5_API int F5iterate_gridevolution(hid_t file_id, int *idx, F5_iterate_gridevolution_per_bundle_t*callback, void *user_data,
00188 F5_iterate_grids_per_bundle_t*gridinfo ) ;
00189
00190
00193 #ifdef __cplusplus
00194 }
00195 #endif
00196
00197 #endif
00198