F5B.h

00001 #ifndef __F5_Bundle_h
00002 #define __F5_Bundle_h
00003 
00004 #include <F5/hdf5inc.h>
00005 #include <F5/F5types.h>
00006 #include <F5/F5Bchart.h>
00007 #include <F5/F5F.h>
00008 
00009 #include <time.h>
00010 
00011 #include "F5WinDLLApi.h"
00012 
00013 #ifdef __cplusplus
00014 extern "C" {
00015 #endif
00016 
00019 extern const char*F5_default_time_attrib_names[];
00020 
00021 typedef enum 
00022 {
00024         UNSPECIFIED,
00026         UNITLESS,
00027         NANOSECONDS,
00028         MICROSECONDS,
00029         MILLISECONDS,
00030         SECONDS,
00031         MINUTES,
00032         HOURS,
00033         DAYS,
00034         YEARS,
00035         MEGAYEARS,
00036         ELECTRONVOLTS,
00037 
00039         METRES
00040 
00041 }       F5_TimeSemantics;
00042 
00043         
00044 struct  _F5_TimeParameter
00045 {
00047         double  value;
00048 
00050         time_t  offset;
00051         
00053         time_t  datetime;
00054 
00056         F5_TimeSemantics TimeSemantics;
00057 
00061         char    *comment;
00062         
00063 };
00064 
00065 typedef struct _F5_TimeParameter F5_TimeParameter;
00066 
00074 F5_API F5_TimeParameter*F5BnewTimeParameter(void);
00075 
00083 F5_API void F5deleteTimeParameter(F5_TimeParameter**);
00084 
00092 F5_API int F5setTimeUnit(hid_t file_id, const F5_TimeParameter*);
00093 
00097 F5_API int F5getTimeUnit(hid_t file_id, F5_TimeParameter*);
00098 
00105 F5_API hid_t F5Bappend_timeslice(hid_t file_id, const F5_TimeParameter*time);
00106 
00117 F5_API hid_t F5Bappend_slice(hid_t file_id, const double*time);
00118 
00130 F5_API F5Path*F5Binitialize_path(hid_t File_id);
00131 
00132 
00137 F5_API hid_t F5BgetMostRecentSlice(double*t, hid_t FileID,
00138                             const char**time_attrib_names);
00139 
00143 F5_API hid_t F5BgetMostRecentFileSlice(double t, const char*filename);
00144 
00148 F5_API hid_t F5BgetGridVertexData(hid_t SliceID,
00149                            const char*gridname,
00150                            const char*chartname,
00151                            const char*fieldname);
00152         
00153 
00154 
00174 F5_API void F5Bswap_dims (int dimensions, const hsize_t* in, hsize_t* out);
00175 
00176 #ifdef __cplusplus
00177 }
00178 #endif
00179 
00180 
00181 #endif /* __F5_Bundle_h */