F5X.h

00001 /*
00002  $Id: F5X.h,v 1.26 2008/02/22 23:51:25 werner Exp $
00003 */
00004 
00005 #ifndef __F5_F5X_H
00006 #define __F5_F5X_H      "Extensions to the HDF5 API"
00007 
00008 #include <F5/hdf5inc.h>
00009 
00010 #include "F5WinDLLApi.h"
00011 
00012 #ifdef  __cplusplus
00013 extern "C"
00014 {
00015 #endif
00016 
00030 F5_API hid_t F5open(const char *filename, int socket );
00031 
00039 F5_API  int F5connect(const char*url);
00040 
00041 F5_API  int F5listen(const char *service);
00042 
00047 F5_API  void F5closesocket(int socket);
00048 
00050 F5_API  void F5socket_init();
00051 
00053 F5_API  void F5socket_cleanup();
00054 
00055 
00056 
00057 
00058 
00060 F5_API hid_t F5append(const char *filename );
00061 
00063 F5_API hid_t F5Gappend(hid_t loc_id, const char *name, size_t size_hint );
00064         
00066 F5_API hid_t F5Aappend(hid_t loc_id, const char *name, hid_t type_id, hid_t space_id, hid_t create_plist );
00067 
00069 F5_API hid_t F5Dappend(hid_t loc_id, const char *name, hid_t type_id, hid_t space_id, hid_t create_plist_id );
00070 
00071 
00073 F5_API int F5Gopen(hid_t location, const char*name);
00074 
00076 F5_API int F5Gexist(hid_t location, const char*name);
00077 
00079 F5_API hid_t F5Gtry_to_open(hid_t location, const char*name);
00080 
00082 F5_API hid_t F5Atry_to_open(hid_t location, const char*name);
00083 
00087 F5_API hid_t F5Aopen_name(hid_t location, const char*name);
00088         
00090 F5_API int F5Dexist(hid_t location, const char*name);
00091 
00092 F5_API hid_t F5Dtry_to_open(hid_t location, const char*name);
00093 
00128 F5_API herr_t F5Xclose(hid_t obj_id /*, H5I_type_t *pret_type_id*/);
00129 
00134 F5_API int F5Asave_string(hid_t loc_id, const char*name, const char*buf);
00135 
00142 F5_API char*    F5Aget_string(hid_t loc_id, const char*name, char*buf, size_t len);
00143         
00144 /*
00145   Write an attribute to the object loc_id with a version number.
00146   A version number is built from three integers.
00147   @param loc_id Any HDF5 object that may carry attributes.
00148  */
00149 F5_API herr_t F5Asave_version(hid_t loc_id, int major, int minor, int release);
00150 
00155 F5_API herr_t   F5Aget_version(hid_t loc_id, int*major, int*minor, int*release);
00156 
00165 F5_API long F5Aget_ints(hid_t loc_id, const char*name, int*data, hsize_t n);
00166 
00171 F5_API int F5Asave_ints(hid_t loc_id, const char*name, const int data[], hsize_t n);
00172 
00178 F5_API int F5Asave_integer(hid_t loc_id, const char*name, int data);
00179         
00183 F5_API  herr_t _F5Gclose(hid_t id, const char*filename, int lineno);
00184 
00185 #define H5Gclose(x)     _F5Gclose(x, __FILE__, __LINE__)        
00186         
00189 #ifdef  __cplusplus
00190 }    /* extern "C" */
00191 #endif
00192 
00193 #endif  /* __F5_F5X_H */
00194