Initial commit

This commit is contained in:
2022-08-19 15:22:33 +02:00
commit d682fae506
545 changed files with 48172 additions and 0 deletions

2
libs/cygwin/CVS/Entries Normal file
View File

@ -0,0 +1,2 @@
D/include////
D/lib////

View File

@ -0,0 +1 @@
analysis/fit/libs/cygwin

1
libs/cygwin/CVS/Root Normal file
View File

@ -0,0 +1 @@
/afs/psi.ch/project/sinq/cvs

View File

@ -0,0 +1,40 @@
/H5ACpublic.h/1.1.1.1/Tue Nov 2 15:54:57 2004//
/H5Apublic.h/1.1.1.1/Tue Nov 2 15:54:58 2004//
/H5Bpublic.h/1.1.1.1/Tue Nov 2 15:54:58 2004//
/H5Dpublic.h/1.1.1.1/Tue Nov 2 15:54:58 2004//
/H5Epublic.h/1.1.1.1/Tue Nov 2 15:54:58 2004//
/H5FDcore.h/1.1.1.1/Tue Nov 2 15:54:58 2004//
/H5FDfamily.h/1.1.1.1/Tue Nov 2 15:54:58 2004//
/H5FDgass.h/1.1.1.1/Tue Nov 2 15:54:58 2004//
/H5FDlog.h/1.1.1.1/Tue Nov 2 15:54:58 2004//
/H5FDmpi.h/1.1.1.1/Tue Nov 2 15:54:58 2004//
/H5FDmpio.h/1.1.1.1/Tue Nov 2 15:54:58 2004//
/H5FDmpiposix.h/1.1.1.1/Tue Nov 2 15:54:58 2004//
/H5FDmulti.h/1.1.1.1/Tue Nov 2 15:54:58 2004//
/H5FDpublic.h/1.1.1.1/Tue Nov 2 15:54:58 2004//
/H5FDsec2.h/1.1.1.1/Tue Nov 2 15:54:58 2004//
/H5FDsrb.h/1.1.1.1/Tue Nov 2 15:54:58 2004//
/H5FDstdio.h/1.1.1.1/Tue Nov 2 15:54:58 2004//
/H5FDstream.h/1.1.1.1/Tue Nov 2 15:54:58 2004//
/H5Fpublic.h/1.1.1.1/Tue Nov 2 15:54:58 2004//
/H5Gpublic.h/1.1.1.1/Tue Nov 2 15:54:58 2004//
/H5HGpublic.h/1.1.1.1/Tue Nov 2 15:54:58 2004//
/H5HLpublic.h/1.1.1.1/Tue Nov 2 15:54:58 2004//
/H5Ipublic.h/1.1.1.1/Tue Nov 2 15:54:58 2004//
/H5MMpublic.h/1.1.1.1/Tue Nov 2 15:54:58 2004//
/H5Opublic.h/1.1.1.1/Tue Nov 2 15:54:58 2004//
/H5Ppublic.h/1.1.1.1/Tue Nov 2 15:54:58 2004//
/H5Rpublic.h/1.1.1.1/Tue Nov 2 15:54:58 2004//
/H5Spublic.h/1.1.1.1/Tue Nov 2 15:54:58 2004//
/H5Tpublic.h/1.1.1.1/Tue Nov 2 15:54:58 2004//
/H5Zpublic.h/1.1.1.1/Tue Nov 2 15:54:58 2004//
/H5api_adpt.h/1.1.1.1/Tue Nov 2 15:54:58 2004//
/H5pubconf.h/1.1.1.1/Tue Nov 2 15:54:58 2004//
/H5public.h/1.1.1.1/Tue Nov 2 15:54:58 2004//
/hdf5.h/1.1.1.1/Tue Nov 2 15:54:58 2004//
/napi.h/1.1.1.1/Tue Nov 2 15:54:58 2004//
/napi4.h/1.1.1.1/Tue Nov 2 15:54:58 2004//
/napi5.h/1.1.1.1/Tue Nov 2 15:54:58 2004//
/napif.inc/1.1.1.1/Tue Nov 2 15:54:58 2004//
/napif__.inc/1.1.1.1/Tue Nov 2 15:54:58 2004//
D

View File

@ -0,0 +1 @@
analysis/fit/libs/cygwin/include

View File

@ -0,0 +1 @@
/afs/psi.ch/project/sinq/cvs

View File

@ -0,0 +1,40 @@
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* Copyright by the Board of Trustees of the University of Illinois. *
* All rights reserved. *
* *
* This file is part of HDF5. The full HDF5 copyright notice, including *
* terms governing use, modification, and redistribution, is contained in *
* the files COPYING and Copyright.html. COPYING can be found at the root *
* of the source code distribution tree; Copyright.html can be found at the *
* root level of an installed copy of the electronic HDF5 document set and *
* is linked from the top-level documents page. It can also be found at *
* http://hdf.ncsa.uiuc.edu/HDF5/doc/Copyright.html. If you do not have *
* access to either file, you may request a copy from hdfhelp@ncsa.uiuc.edu. *
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
/*-------------------------------------------------------------------------
*
* Created: H5ACproto.h
* Jul 10 1997
* Robb Matzke <matzke@llnl.gov>
*
* Purpose: Public include file for cache functions.
*
* Modifications:
*
*-------------------------------------------------------------------------
*/
#ifndef _H5ACpublic_H
#define _H5ACpublic_H
/* Public headers needed by this file */
#include "H5public.h"
#ifdef __cplusplus
extern "C" {
#endif
#ifdef __cplusplus
}
#endif
#endif

53
libs/cygwin/include/H5Apublic.h Executable file
View File

@ -0,0 +1,53 @@
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* Copyright by the Board of Trustees of the University of Illinois. *
* All rights reserved. *
* *
* This file is part of HDF5. The full HDF5 copyright notice, including *
* terms governing use, modification, and redistribution, is contained in *
* the files COPYING and Copyright.html. COPYING can be found at the root *
* of the source code distribution tree; Copyright.html can be found at the *
* root level of an installed copy of the electronic HDF5 document set and *
* is linked from the top-level documents page. It can also be found at *
* http://hdf.ncsa.uiuc.edu/HDF5/doc/Copyright.html. If you do not have *
* access to either file, you may request a copy from hdfhelp@ncsa.uiuc.edu. *
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
/*
* This file contains public declarations for the H5A module.
*/
#ifndef _H5Apublic_H
#define _H5Apublic_H
/* Public headers needed by this file */
#include "H5Ipublic.h"
#ifdef __cplusplus
extern "C" {
#endif
typedef herr_t (*H5A_operator_t)(hid_t location_id/*in*/,
const char *attr_name/*in*/, void *operator_data/*in,out*/);
/* Public function prototypes */
H5_DLL hid_t H5Acreate(hid_t loc_id, const char *name, hid_t type_id,
hid_t space_id, hid_t plist_id);
H5_DLL hid_t H5Aopen_name(hid_t loc_id, const char *name);
H5_DLL hid_t H5Aopen_idx(hid_t loc_id, unsigned idx);
H5_DLL herr_t H5Awrite(hid_t attr_id, hid_t type_id, const void *buf);
H5_DLL herr_t H5Aread(hid_t attr_id, hid_t type_id, void *buf);
H5_DLL herr_t H5Aclose(hid_t attr_id);
H5_DLL hid_t H5Aget_space(hid_t attr_id);
H5_DLL hid_t H5Aget_type(hid_t attr_id);
H5_DLL ssize_t H5Aget_name(hid_t attr_id, size_t buf_size, char *buf);
H5_DLL hsize_t H5Aget_storage_size(hid_t attr_id);
H5_DLL int H5Aget_num_attrs(hid_t loc_id);
H5_DLL herr_t H5Arename(hid_t loc_id, const char *old_name, const char *new_name);
H5_DLL herr_t H5Aiterate(hid_t loc_id, unsigned *attr_num, H5A_operator_t op,
void *op_data);
H5_DLL herr_t H5Adelete(hid_t loc_id, const char *name);
#ifdef __cplusplus
}
#endif
#endif /* _H5Apublic_H */

51
libs/cygwin/include/H5Bpublic.h Executable file
View File

@ -0,0 +1,51 @@
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* Copyright by the Board of Trustees of the University of Illinois. *
* All rights reserved. *
* *
* This file is part of HDF5. The full HDF5 copyright notice, including *
* terms governing use, modification, and redistribution, is contained in *
* the files COPYING and Copyright.html. COPYING can be found at the root *
* of the source code distribution tree; Copyright.html can be found at the *
* root level of an installed copy of the electronic HDF5 document set and *
* is linked from the top-level documents page. It can also be found at *
* http://hdf.ncsa.uiuc.edu/HDF5/doc/Copyright.html. If you do not have *
* access to either file, you may request a copy from hdfhelp@ncsa.uiuc.edu. *
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
/*-------------------------------------------------------------------------
*
* Created: H5Bproto.h
* Jul 10 1997
* Robb Matzke <matzke@llnl.gov>
*
* Purpose: Public declarations for the H5B package.
*
* Modifications:
*
*-------------------------------------------------------------------------
*/
#ifndef _H5Bpublic_H
#define _H5Bpublic_H
/* Public headers needed by this file */
#include "H5public.h"
/* B-tree IDs for various internal things. */
/* Not really a "public" symbol, but that should be OK -QAK */
/* Note - if more of these are added, any 'K' values (for internal or leaf
* nodes) they use will need to be stored in the file somewhere. -QAK
*/
typedef enum H5B_subid_t {
H5B_SNODE_ID = 0, /*B-tree is for symbol table nodes */
H5B_ISTORE_ID = 1, /*B-tree is for indexed object storage */
H5B_NUM_BTREE_ID /* Number of B-tree key IDs (must be last) */
} H5B_subid_t;
#ifdef __cplusplus
extern "C" {
#endif
#ifdef __cplusplus
}
#endif
#endif

105
libs/cygwin/include/H5Dpublic.h Executable file
View File

@ -0,0 +1,105 @@
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* Copyright by the Board of Trustees of the University of Illinois. *
* All rights reserved. *
* *
* This file is part of HDF5. The full HDF5 copyright notice, including *
* terms governing use, modification, and redistribution, is contained in *
* the files COPYING and Copyright.html. COPYING can be found at the root *
* of the source code distribution tree; Copyright.html can be found at the *
* root level of an installed copy of the electronic HDF5 document set and *
* is linked from the top-level documents page. It can also be found at *
* http://hdf.ncsa.uiuc.edu/HDF5/doc/Copyright.html. If you do not have *
* access to either file, you may request a copy from hdfhelp@ncsa.uiuc.edu. *
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
/*
* This file contains public declarations for the H5D module.
*/
#ifndef _H5Dpublic_H
#define _H5Dpublic_H
/* Public headers needed by this file */
#include "H5public.h"
#include "H5Ipublic.h"
/* Values for the H5D_LAYOUT property */
typedef enum H5D_layout_t {
H5D_LAYOUT_ERROR = -1,
H5D_COMPACT = 0, /*raw data is very small */
H5D_CONTIGUOUS = 1, /*the default */
H5D_CHUNKED = 2, /*slow and fancy */
H5D_NLAYOUTS = 3 /*this one must be last! */
} H5D_layout_t;
/* Values for the space allocation time property */
typedef enum H5D_alloc_time_t {
H5D_ALLOC_TIME_ERROR =-1,
H5D_ALLOC_TIME_DEFAULT =0,
H5D_ALLOC_TIME_EARLY =1,
H5D_ALLOC_TIME_LATE =2,
H5D_ALLOC_TIME_INCR =3
} H5D_alloc_time_t;
/* Values for the status of space allocation */
typedef enum H5D_space_status_t {
H5D_SPACE_STATUS_ERROR =-1,
H5D_SPACE_STATUS_NOT_ALLOCATED =0,
H5D_SPACE_STATUS_PART_ALLOCATED =1,
H5D_SPACE_STATUS_ALLOCATED =2
} H5D_space_status_t;
/* Values for time of writing fill value property */
typedef enum H5D_fill_time_t {
H5D_FILL_TIME_ERROR =-1,
H5D_FILL_TIME_ALLOC =0,
H5D_FILL_TIME_NEVER =1,
H5D_FILL_TIME_IFSET =2
} H5D_fill_time_t;
/* Values for fill value status */
typedef enum H5D_fill_value_t {
H5D_FILL_VALUE_ERROR =-1,
H5D_FILL_VALUE_UNDEFINED =0,
H5D_FILL_VALUE_DEFAULT =1,
H5D_FILL_VALUE_USER_DEFINED =2
} H5D_fill_value_t;
#ifdef __cplusplus
extern "C" {
#endif
/* Define the operator function pointer for H5Diterate() */
typedef herr_t (*H5D_operator_t)(void *elem, hid_t type_id, hsize_t ndim,
hssize_t *point, void *operator_data);
H5_DLL hid_t H5Dcreate (hid_t file_id, const char *name, hid_t type_id,
hid_t space_id, hid_t plist_id);
H5_DLL hid_t H5Dopen (hid_t file_id, const char *name);
H5_DLL herr_t H5Dclose (hid_t dset_id);
H5_DLL hid_t H5Dget_space (hid_t dset_id);
H5_DLL herr_t H5Dget_space_status(hid_t dset_id,
H5D_space_status_t *allocation);
H5_DLL hid_t H5Dget_type (hid_t dset_id);
H5_DLL hid_t H5Dget_create_plist (hid_t dset_id);
H5_DLL hsize_t H5Dget_storage_size(hid_t dset_id);
H5_DLL haddr_t H5Dget_offset(hid_t dset_id);
H5_DLL herr_t H5Dread (hid_t dset_id, hid_t mem_type_id, hid_t mem_space_id,
hid_t file_space_id, hid_t plist_id, void *buf/*out*/);
H5_DLL herr_t H5Dwrite (hid_t dset_id, hid_t mem_type_id, hid_t mem_space_id,
hid_t file_space_id, hid_t plist_id, const void *buf);
H5_DLL herr_t H5Dextend (hid_t dset_id, const hsize_t *size);
H5_DLL herr_t H5Diterate(void *buf, hid_t type_id, hid_t space_id,
H5D_operator_t op, void *operator_data);
H5_DLL herr_t H5Dvlen_reclaim(hid_t type_id, hid_t space_id, hid_t plist_id, void *buf);
H5_DLL herr_t H5Dvlen_get_buf_size(hid_t dataset_id, hid_t type_id, hid_t space_id, hsize_t *size);
H5_DLL herr_t H5Dfill(const void *fill, hid_t fill_type, void *buf,
hid_t buf_type, hid_t space);
H5_DLL herr_t H5Ddebug(hid_t dset_id, unsigned int flags);
H5_DLL herr_t H5Dset_extent (hid_t dset_id, const hsize_t *size);
#ifdef __cplusplus
}
#endif
#endif

263
libs/cygwin/include/H5Epublic.h Executable file
View File

@ -0,0 +1,263 @@
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* Copyright by the Board of Trustees of the University of Illinois. *
* All rights reserved. *
* *
* This file is part of HDF5. The full HDF5 copyright notice, including *
* terms governing use, modification, and redistribution, is contained in *
* the files COPYING and Copyright.html. COPYING can be found at the root *
* of the source code distribution tree; Copyright.html can be found at the *
* root level of an installed copy of the electronic HDF5 document set and *
* is linked from the top-level documents page. It can also be found at *
* http://hdf.ncsa.uiuc.edu/HDF5/doc/Copyright.html. If you do not have *
* access to either file, you may request a copy from hdfhelp@ncsa.uiuc.edu. *
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
/*
* This file contains public declarations for the H5E module.
*/
#ifndef _H5Epublic_H
#define _H5Epublic_H
#include <stdio.h> /*FILE arg of H5Eprint() */
/* Public headers needed by this file */
#include "H5public.h"
#include "H5Ipublic.h"
/*
* One often needs to temporarily disable automatic error reporting when
* trying something that's likely or expected to fail. For instance, to
* determine if an object exists one can call H5Gget_objinfo() which will fail if
* the object doesn't exist. The code to try can be nested between calls to
* H5Eget_auto() and H5Eset_auto(), but it's easier just to use this macro
* like:
* H5E_BEGIN_TRY {
* ...stuff here that's likely to fail...
* } H5E_END_TRY;
*
* Warning: don't break, return, or longjmp() from the body of the loop or
* the error reporting won't be properly restored!
*/
#define H5E_BEGIN_TRY { \
H5E_auto_t H5E_saved_efunc; \
void *H5E_saved_edata; \
H5Eget_auto (&H5E_saved_efunc, &H5E_saved_edata); \
H5Eset_auto (NULL, NULL);
#define H5E_END_TRY \
H5Eset_auto (H5E_saved_efunc, H5E_saved_edata); \
}
/*
* Public API Convenience Macros for Error reporting - Documented
*/
/* Use the Standard C __FILE__ & __LINE__ macros instead of typing them in */
#define H5Epush_sim(func,maj,min,str) H5Epush(__FILE__,func,__LINE__,maj,min,str)
/*
* Public API Convenience Macros for Error reporting - Undocumented
*/
/* Use the Standard C __FILE__ & __LINE__ macros instead of typing them in */
/* And return after pushing error onto stack */
#define H5Epush_ret(func,maj,min,str,ret) { \
H5Epush(__FILE__,func,__LINE__,maj,min,str); \
return(ret); \
}
/* Use the Standard C __FILE__ & __LINE__ macros instead of typing them in */
/* And goto a label after pushing error onto stack */
#define H5Epush_goto(func,maj,min,str,label) { \
H5Epush(__FILE__,func,__LINE__,maj,min,str); \
goto label; \
}
/*
* Declare an enumerated type which holds all the valid major HDF error codes.
*/
typedef enum H5E_major_t {
H5E_NONE_MAJOR = 0, /*special zero, no error */
H5E_ARGS, /*invalid arguments to routine */
H5E_RESOURCE, /*resource unavailable */
H5E_INTERNAL, /* Internal error (too specific to document
* in detail)
*/
H5E_FILE, /*file Accessability */
H5E_IO, /*Low-level I/O */
H5E_FUNC, /*function Entry/Exit */
H5E_ATOM, /*object Atom */
H5E_CACHE, /*object Cache */
H5E_BTREE, /*B-Tree Node */
H5E_SYM, /*symbol Table */
H5E_HEAP, /*Heap */
H5E_OHDR, /*object Header */
H5E_DATATYPE, /*Datatype */
H5E_DATASPACE, /*Dataspace */
H5E_DATASET, /*Dataset */
H5E_STORAGE, /*data storage */
H5E_PLIST, /*Property lists */
H5E_ATTR, /*Attribute */
H5E_PLINE, /*Data filters */
H5E_EFL, /*External file list */
H5E_REFERENCE, /*References */
H5E_VFL, /*Virtual File Layer */
H5E_TBBT, /*Threaded, Balanced, Binary Trees */
H5E_FPHDF5, /*Flexible Parallel HDF5 */
H5E_TST, /*Ternary Search Trees */
H5E_RS /*Reference Counted Strings */
} H5E_major_t;
/* Declare an enumerated type which holds all the valid minor HDF error codes */
typedef enum H5E_minor_t {
H5E_NONE_MINOR = 0, /*special zero, no error */
/* Argument errors */
H5E_UNINITIALIZED, /*information is unitialized */
H5E_UNSUPPORTED, /*feature is unsupported */
H5E_BADTYPE, /*incorrect type found */
H5E_BADRANGE, /*argument out of range */
H5E_BADVALUE, /*bad value for argument */
/* Resource errors */
H5E_NOSPACE, /*no space available for allocation */
H5E_CANTCOPY, /*unable to copy object */
H5E_CANTFREE, /*unable to free object */
H5E_ALREADYEXISTS, /*Object already exists */
H5E_CANTLOCK, /*Unable to lock object */
H5E_CANTUNLOCK, /*Unable to unlock object */
/* File accessability errors */
H5E_FILEEXISTS, /*file already exists */
H5E_FILEOPEN, /*file already open */
H5E_CANTCREATE, /*Can't create file */
H5E_CANTOPENFILE, /*Can't open file */
H5E_CANTCLOSEFILE, /*Can't close file */
H5E_NOTHDF5, /*not an HDF5 format file */
H5E_BADFILE, /*bad file ID accessed */
H5E_TRUNCATED, /*file has been truncated */
H5E_MOUNT, /*file mount error */
/* Generic low-level file I/O errors */
H5E_SEEKERROR, /*seek failed */
H5E_READERROR, /*read failed */
H5E_WRITEERROR, /*write failed */
H5E_CLOSEERROR, /*close failed */
H5E_OVERFLOW, /*address overflowed */
H5E_FCNTL, /*file fcntl failed */
/* Function entry/exit interface errors */
H5E_CANTINIT, /*Can't initialize object */
H5E_ALREADYINIT, /*object already initialized */
H5E_CANTRELEASE, /*Can't release object */
/* Object atom related errors */
H5E_BADATOM, /*Can't find atom information */
H5E_BADGROUP, /*Can't find group information */
H5E_CANTREGISTER, /*Can't register new atom */
H5E_CANTINC, /*Can't increment reference count */
H5E_CANTDEC, /*Can't decrement reference count */
H5E_NOIDS, /*Out of IDs for group */
/* Cache related errors */
H5E_CANTFLUSH, /*Can't flush object from cache */
H5E_CANTLOAD, /*Can't load object into cache */
H5E_PROTECT, /*protected object error */
H5E_NOTCACHED, /*object not currently cached */
/* B-tree related errors */
H5E_NOTFOUND, /*object not found */
H5E_EXISTS, /*object already exists */
H5E_CANTENCODE, /*Can't encode value */
H5E_CANTDECODE, /*Can't decode value */
H5E_CANTSPLIT, /*Can't split node */
H5E_CANTINSERT, /*Can't insert object */
H5E_CANTLIST, /*Can't list node */
/* Object header related errors */
H5E_LINKCOUNT, /*bad object header link count */
H5E_VERSION, /*wrong version number */
H5E_ALIGNMENT, /*alignment error */
H5E_BADMESG, /*unrecognized message */
H5E_CANTDELETE, /* Can't delete message */
/* Group related errors */
H5E_CANTOPENOBJ, /*Can't open object */
H5E_COMPLEN, /*name component is too long */
H5E_CWG, /*problem with current working group */
H5E_LINK, /*link count failure */
H5E_SLINK, /*symbolic link error */
/* Datatype conversion errors */
H5E_CANTCONVERT, /*Can't convert datatypes */
H5E_BADSIZE, /*Bad size for object */
/* Dataspace errors */
H5E_CANTCLIP, /*Can't clip hyperslab region */
H5E_CANTCOUNT, /*Can't count elements */
H5E_CANTSELECT, /*Can't select hyperslab */
H5E_CANTNEXT, /*Can't move to next iterator location */
H5E_BADSELECT, /*Invalid selection */
H5E_CANTCOMPARE, /*Can't compare objects */
/* Property list errors */
H5E_CANTGET, /*Can't get value */
H5E_CANTSET, /*Can't set value */
H5E_DUPCLASS, /*Duplicate class name in parent class */
/* Parallel errors */
H5E_MPI, /*some MPI function failed */
H5E_MPIERRSTR, /*MPI Error String */
/* FPHDF5 errors */
H5E_CANTMAKETREE, /*can't make a TBBT tree */
H5E_CANTRECV, /*can't receive messages from processes */
H5E_CANTSENDMDATA, /*can't send metadata message */
H5E_CANTCHANGE, /*can't register change on server */
H5E_CANTALLOC, /*can't allocate from file */
/* I/O pipeline errors */
H5E_NOFILTER, /*requested filter is not available */
H5E_CALLBACK, /*callback failed */
H5E_CANAPPLY, /*error from filter "can apply" callback */
H5E_SETLOCAL, /*error from filter "set local" callback */
H5E_NOENCODER /* Filter present, but encoding disabled */
} H5E_minor_t;
/* Information about an error */
typedef struct H5E_error_t {
H5E_major_t maj_num; /*major error number */
H5E_minor_t min_num; /*minor error number */
const char *func_name; /*function in which error occurred */
const char *file_name; /*file in which error occurred */
unsigned line; /*line in file where error occurs */
const char *desc; /*optional supplied description */
} H5E_error_t;
/* Error stack traversal direction */
typedef enum H5E_direction_t {
H5E_WALK_UPWARD = 0, /*begin deep, end at API function */
H5E_WALK_DOWNWARD = 1 /*begin at API function, end deep */
} H5E_direction_t;
#ifdef __cplusplus
extern "C" {
#endif
/* Error stack traversal callback function */
typedef herr_t (*H5E_walk_t)(int n, H5E_error_t *err_desc, void *client_data);
typedef herr_t (*H5E_auto_t)(void *client_data);
H5_DLL herr_t H5Eset_auto (H5E_auto_t func, void *client_data);
H5_DLL herr_t H5Eget_auto (H5E_auto_t *func, void **client_data);
H5_DLL herr_t H5Eclear (void);
H5_DLL herr_t H5Eprint (FILE *stream);
H5_DLL herr_t H5Ewalk (H5E_direction_t direction, H5E_walk_t func,
void *client_data);
H5_DLL const char *H5Eget_major (H5E_major_t major_number);
H5_DLL const char *H5Eget_minor (H5E_minor_t minor_number);
H5_DLL herr_t H5Epush(const char *file, const char *func,
unsigned line, H5E_major_t maj, H5E_minor_t min, const char *str);
#ifdef __cplusplus
}
#endif
#endif

41
libs/cygwin/include/H5FDcore.h Executable file
View File

@ -0,0 +1,41 @@
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* Copyright by the Board of Trustees of the University of Illinois. *
* All rights reserved. *
* *
* This file is part of HDF5. The full HDF5 copyright notice, including *
* terms governing use, modification, and redistribution, is contained in *
* the files COPYING and Copyright.html. COPYING can be found at the root *
* of the source code distribution tree; Copyright.html can be found at the *
* root level of an installed copy of the electronic HDF5 document set and *
* is linked from the top-level documents page. It can also be found at *
* http://hdf.ncsa.uiuc.edu/HDF5/doc/Copyright.html. If you do not have *
* access to either file, you may request a copy from hdfhelp@ncsa.uiuc.edu. *
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
/*
* Programmer: Robb Matzke <matzke@llnl.gov>
* Monday, August 2, 1999
*
* Purpose: The public header file for the sec2 driver.
*/
#ifndef H5FDcore_H
#define H5FDcore_H
#include "H5Ipublic.h"
#define H5FD_CORE (H5FD_core_init())
#ifdef __cplusplus
extern "C" {
#endif
H5_DLL hid_t H5FD_core_init(void);
H5_DLL void H5FD_core_term(void);
H5_DLL herr_t H5Pset_fapl_core(hid_t fapl_id, size_t increment,
hbool_t backing_store);
H5_DLL herr_t H5Pget_fapl_core(hid_t fapl_id, size_t *increment/*out*/,
hbool_t *backing_store/*out*/);
#ifdef __cplusplus
}
#endif
#endif

View File

@ -0,0 +1,43 @@
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* Copyright by the Board of Trustees of the University of Illinois. *
* All rights reserved. *
* *
* This file is part of HDF5. The full HDF5 copyright notice, including *
* terms governing use, modification, and redistribution, is contained in *
* the files COPYING and Copyright.html. COPYING can be found at the root *
* of the source code distribution tree; Copyright.html can be found at the *
* root level of an installed copy of the electronic HDF5 document set and *
* is linked from the top-level documents page. It can also be found at *
* http://hdf.ncsa.uiuc.edu/HDF5/doc/Copyright.html. If you do not have *
* access to either file, you may request a copy from hdfhelp@ncsa.uiuc.edu. *
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
/*
* Programmer: Robb Matzke <matzke@llnl.gov>
* Monday, August 4, 1999
*
* Purpose: The public header file for the family driver.
*/
#ifndef H5FDfamily_H
#define H5FDfamily_H
#include "H5Ipublic.h"
#define H5FD_FAMILY (H5FD_family_init())
#ifdef __cplusplus
extern "C" {
#endif
H5_DLL hid_t H5FD_family_init(void);
H5_DLL void H5FD_family_term(void);
H5_DLL herr_t H5Pset_fapl_family(hid_t fapl_id, hsize_t memb_size,
hid_t memb_fapl_id);
H5_DLL herr_t H5Pget_fapl_family(hid_t fapl_id, hsize_t *memb_size/*out*/,
hid_t *memb_fapl_id/*out*/);
#ifdef __cplusplus
}
#endif
#endif

69
libs/cygwin/include/H5FDgass.h Executable file
View File

@ -0,0 +1,69 @@
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* Copyright by the Board of Trustees of the University of Illinois. *
* All rights reserved. *
* *
* This file is part of HDF5. The full HDF5 copyright notice, including *
* terms governing use, modification, and redistribution, is contained in *
* the files COPYING and Copyright.html. COPYING can be found at the root *
* of the source code distribution tree; Copyright.html can be found at the *
* root level of an installed copy of the electronic HDF5 document set and *
* is linked from the top-level documents page. It can also be found at *
* http://hdf.ncsa.uiuc.edu/HDF5/doc/Copyright.html. If you do not have *
* access to either file, you may request a copy from hdfhelp@ncsa.uiuc.edu. *
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
/*
* Programmer: Saurabh Bagchi <bagchi@uiuc.edu>
* Tuesday, August 17, 1999
*
* Purpose: The public header file for the gass driver.
*/
#ifndef H5FDgass_H
#define H5FDgass_H
#include "H5FDpublic.h"
#include "H5Ipublic.h"
#include <string.h>
#ifdef H5_HAVE_GASS
#define H5FD_GASS (H5FD_gass_init())
#else
#define H5FD_GASS (-1)
#endif
#ifdef H5_HAVE_GASS
/* Define the GASS info object. (Will be added to later as more GASS
functionality is sought to be exposed. */
typedef struct GASS_Info {
unsigned long block_size;
unsigned long max_length;
} GASS_Info;
#define GASS_INFO_NULL(v) memset((void *)&v, 0, sizeof(GASS_Info));
/*
GASS_Info zzGassInfo = {0L,0L};
#define GASS_INFO_NULL zzGassInfo
*/
#endif
/* Function prototypes */
#ifdef H5_HAVE_GASS
#ifdef __cplusplus
extern "C" {
#endif
hid_t H5FD_gass_init(void);
void H5FD_gass_term(void);
herr_t H5Pset_fapl_gass(hid_t fapl_id, GASS_Info info);
herr_t H5Pget_fapl_gass(hid_t fapl_id, GASS_Info *info/*out*/);
#ifdef __cplusplus
}
#endif
#endif
#endif /* H5FDgass_H */

72
libs/cygwin/include/H5FDlog.h Executable file
View File

@ -0,0 +1,72 @@
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* Copyright by the Board of Trustees of the University of Illinois. *
* All rights reserved. *
* *
* This file is part of HDF5. The full HDF5 copyright notice, including *
* terms governing use, modification, and redistribution, is contained in *
* the files COPYING and Copyright.html. COPYING can be found at the root *
* of the source code distribution tree; Copyright.html can be found at the *
* root level of an installed copy of the electronic HDF5 document set and *
* is linked from the top-level documents page. It can also be found at *
* http://hdf.ncsa.uiuc.edu/HDF5/doc/Copyright.html. If you do not have *
* access to either file, you may request a copy from hdfhelp@ncsa.uiuc.edu. *
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
/*
* Programmer: Quincey Koziol <koziol@ncsa.uiuc.edu>
* Monday, April 17, 2000
*
* Purpose: The public header file for the log driver.
*/
#ifndef H5FDlog_H
#define H5FDlog_H
#include "H5Ipublic.h"
#define H5FD_LOG (H5FD_log_init())
/* Flags for H5Pset_fapl_log() */
/* Flags for tracking where reads/writes/seeks occur */
#define H5FD_LOG_LOC_READ 0x0001
#define H5FD_LOG_LOC_WRITE 0x0002
#define H5FD_LOG_LOC_SEEK 0x0004
#define H5FD_LOG_LOC_IO (H5FD_LOG_LOC_READ|H5FD_LOG_LOC_WRITE|H5FD_LOG_LOC_SEEK)
/* Flags for tracking number of times each byte is read/written */
#define H5FD_LOG_FILE_READ 0x0008
#define H5FD_LOG_FILE_WRITE 0x0010
#define H5FD_LOG_FILE_IO (H5FD_LOG_FILE_READ|H5FD_LOG_FILE_WRITE)
/* Flag for tracking "flavor" (type) of information stored at each byte */
#define H5FD_LOG_FLAVOR 0x0020
/* Flags for tracking total number of reads/writes/seeks */
#define H5FD_LOG_NUM_READ 0x0040
#define H5FD_LOG_NUM_WRITE 0x0080
#define H5FD_LOG_NUM_SEEK 0x0100
#define H5FD_LOG_NUM_IO (H5FD_LOG_NUM_READ|H5FD_LOG_NUM_WRITE|H5FD_LOG_NUM_SEEK)
/* Flags for tracking time spent in open/read/write/seek/close */
#define H5FD_LOG_TIME_OPEN 0x0200 /* Not implemented yet */
#define H5FD_LOG_TIME_READ 0x0400 /* Not implemented yet */
#define H5FD_LOG_TIME_WRITE 0x0800 /* Partially implemented (need to track total time) */
#define H5FD_LOG_TIME_SEEK 0x1000 /* Partially implemented (need to track total time & track time for seeks during reading) */
#define H5FD_LOG_TIME_CLOSE 0x2000 /* Fully implemented */
#define H5FD_LOG_TIME_IO (H5FD_LOG_TIME_OPEN|H5FD_LOG_TIME_READ|H5FD_LOG_TIME_WRITE|H5FD_LOG_TIME_SEEK|H5FD_LOG_TIME_CLOSE)
/* Flag for tracking allocation of space in file */
#define H5FD_LOG_ALLOC 0x4000
#define H5FD_LOG_ALL (H5FD_LOG_ALLOC|H5FD_LOG_TIME_IO|H5FD_LOG_NUM_IO|H5FD_LOG_FLAVOR|H5FD_LOG_FILE_IO|H5FD_LOG_LOC_IO)
#ifdef __cplusplus
extern "C" {
#endif
H5_DLL hid_t H5FD_log_init(void);
H5_DLL void H5FD_log_term(void);
#ifdef H5_WANT_H5_V1_4_COMPAT
H5_DLL herr_t H5Pset_fapl_log(hid_t fapl_id, const char *logfile, int verbosity);
#else /* H5_WANT_H5_V1_4_COMPAT */
H5_DLL herr_t H5Pset_fapl_log(hid_t fapl_id, const char *logfile, unsigned flags, size_t buf_size);
#endif /* H5_WANT_H5_V1_4_COMPAT */
#ifdef __cplusplus
}
#endif
#endif

93
libs/cygwin/include/H5FDmpi.h Executable file
View File

@ -0,0 +1,93 @@
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* Copyright by the Board of Trustees of the University of Illinois. *
* All rights reserved. *
* *
* This file is part of HDF5. The full HDF5 copyright notice, including *
* terms governing use, modification, and redistribution, is contained in *
* the files COPYING and Copyright.html. COPYING can be found at the root *
* of the source code distribution tree; Copyright.html can be found at the *
* root level of an installed copy of the electronic HDF5 document set and *
* is linked from the top-level documents page. It can also be found at *
* http://hdf.ncsa.uiuc.edu/HDF5/doc/Copyright.html. If you do not have *
* access to either file, you may request a copy from hdfhelp@ncsa.uiuc.edu. *
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
/*
* Programmer: Quincey Koziol <koziol@ncsa.uiuc.edu>
* Friday, January 30, 2004
*
* Purpose: The public header file for common items for all MPI VFL drivers
*/
#ifndef H5FDmpi_H
#define H5FDmpi_H
/* Type of I/O for data transfer properties */
typedef enum H5FD_mpio_xfer_t {
H5FD_MPIO_INDEPENDENT = 0, /*zero is the default*/
H5FD_MPIO_COLLECTIVE
} H5FD_mpio_xfer_t;
#ifdef H5_HAVE_PARALLEL
/* Sub-class the H5FD_class_t to add more specific functions for MPI-based VFDs */
typedef struct H5FD_class_mpi_t {
H5FD_class_t super; /* Superclass information & methods */
int (*get_rank)(const H5FD_t *file); /* Get the MPI rank of a process */
int (*get_size)(const H5FD_t *file); /* Get the MPI size of a communicator */
MPI_Comm (*get_comm)(const H5FD_t *file); /* Get the communicator for a file */
} H5FD_class_mpi_t;
#endif /* H5_HAVE_PARALLEL */
/* Include all the MPI VFL headers */
#include "H5FDmpio.h" /* MPI I/O file driver */
#include "H5FDmpiposix.h" /* MPI/posix I/O file driver */
/* Macros */
/* Single macro to check for all file drivers that use MPI */
#define IS_H5FD_MPI(file) \
(IS_H5FD_MPIO(file) || IS_H5FD_MPIPOSIX(file))
#ifdef H5_HAVE_PARALLEL
/* ======== Temporary data transfer properties ======== */
/* Definitions for memory MPI type property */
#define H5FD_MPI_XFER_MEM_MPI_TYPE_NAME "H5FD_mpi_mem_mpi_type"
#define H5FD_MPI_XFER_MEM_MPI_TYPE_SIZE sizeof(MPI_Datatype)
/* Definitions for file MPI type property */
#define H5FD_MPI_XFER_FILE_MPI_TYPE_NAME "H5FD_mpi_file_mpi_type"
#define H5FD_MPI_XFER_FILE_MPI_TYPE_SIZE sizeof(MPI_Datatype)
/*
* The view is set to this value
*/
H5_DLLVAR char H5FD_mpi_native_g[];
/* Function prototypes */
#ifdef __cplusplus
extern "C" {
#endif
/* General routines */
H5_DLL haddr_t H5FD_mpi_MPIOff_to_haddr(MPI_Offset mpi_off);
H5_DLL herr_t H5FD_mpi_haddr_to_MPIOff(haddr_t addr, MPI_Offset *mpi_off/*out*/);
H5_DLL herr_t H5FD_mpi_comm_info_dup(MPI_Comm comm, MPI_Info info,
MPI_Comm *comm_new, MPI_Info *info_new);
H5_DLL herr_t H5FD_mpi_comm_info_free(MPI_Comm *comm, MPI_Info *info);
#ifdef NOT_YET
H5_DLL herr_t H5FD_mpio_wait_for_left_neighbor(H5FD_t *file);
H5_DLL herr_t H5FD_mpio_signal_right_neighbor(H5FD_t *file);
#endif /* NOT_YET */
H5_DLL herr_t H5FD_mpi_setup_collective(hid_t dxpl_id, MPI_Datatype btype,
MPI_Datatype ftype);
H5_DLL herr_t H5FD_mpi_teardown_collective(hid_t dxpl_id);
/* Driver specific methods */
H5_DLL int H5FD_mpi_get_rank(const H5FD_t *file);
H5_DLL int H5FD_mpi_get_size(const H5FD_t *file);
H5_DLL MPI_Comm H5FD_mpi_get_comm(const H5FD_t *_file);
#ifdef __cplusplus
}
#endif
#endif /* H5_HAVE_PARALLEL */
#endif /* H5FDmpi_H */

60
libs/cygwin/include/H5FDmpio.h Executable file
View File

@ -0,0 +1,60 @@
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* Copyright by the Board of Trustees of the University of Illinois. *
* All rights reserved. *
* *
* This file is part of HDF5. The full HDF5 copyright notice, including *
* terms governing use, modification, and redistribution, is contained in *
* the files COPYING and Copyright.html. COPYING can be found at the root *
* of the source code distribution tree; Copyright.html can be found at the *
* root level of an installed copy of the electronic HDF5 document set and *
* is linked from the top-level documents page. It can also be found at *
* http://hdf.ncsa.uiuc.edu/HDF5/doc/Copyright.html. If you do not have *
* access to either file, you may request a copy from hdfhelp@ncsa.uiuc.edu. *
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
/*
* Programmer: Robb Matzke <matzke@llnl.gov>
* Monday, August 2, 1999
*
* Purpose: The public header file for the mpio driver.
*/
#ifndef H5FDmpio_H
#define H5FDmpio_H
#ifdef H5_HAVE_PARALLEL
# define H5FD_MPIO (H5FD_mpio_init())
#else
# define H5FD_MPIO (-1)
#endif /* H5_HAVE_PARALLEL */
/* Macros */
#define IS_H5FD_MPIO(f) /* (H5F_t *f) */ \
(H5FD_MPIO==H5F_get_driver_id(f))
#ifdef H5_HAVE_PARALLEL
/*Turn on H5FDmpio_debug if H5F_DEBUG is on */
#ifdef H5F_DEBUG
#ifndef H5FDmpio_DEBUG
#define H5FDmpio_DEBUG
#endif
#endif
/* Function prototypes */
#ifdef __cplusplus
extern "C" {
#endif
H5_DLL hid_t H5FD_mpio_init(void);
H5_DLL void H5FD_mpio_term(void);
H5_DLL herr_t H5Pset_fapl_mpio(hid_t fapl_id, MPI_Comm comm, MPI_Info info);
H5_DLL herr_t H5Pget_fapl_mpio(hid_t fapl_id, MPI_Comm *comm/*out*/,
MPI_Info *info/*out*/);
H5_DLL herr_t H5Pset_dxpl_mpio(hid_t dxpl_id, H5FD_mpio_xfer_t xfer_mode);
H5_DLL herr_t H5Pget_dxpl_mpio(hid_t dxpl_id, H5FD_mpio_xfer_t *xfer_mode/*out*/);
#ifdef __cplusplus
}
#endif
#endif /* H5_HAVE_PARALLEL */
#endif

View File

@ -0,0 +1,61 @@
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* Copyright by the Board of Trustees of the University of Illinois. *
* All rights reserved. *
* *
* This file is part of HDF5. The full HDF5 copyright notice, including *
* terms governing use, modification, and redistribution, is contained in *
* the files COPYING and Copyright.html. COPYING can be found at the root *
* of the source code distribution tree; Copyright.html can be found at the *
* root level of an installed copy of the electronic HDF5 document set and *
* is linked from the top-level documents page. It can also be found at *
* http://hdf.ncsa.uiuc.edu/HDF5/doc/Copyright.html. If you do not have *
* access to either file, you may request a copy from hdfhelp@ncsa.uiuc.edu. *
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
/*
* Programmer: Quincey Koziol <koziol@ncsa.uiuc.edu>
* Thursday, July 11, 2002
*
* Purpose: The public header file for the mpiposix driver.
*/
#ifndef __H5FDmpiposix_H
#define __H5FDmpiposix_H
#ifdef H5_HAVE_PARALLEL
# define H5FD_MPIPOSIX (H5FD_mpiposix_init())
#else
# define H5FD_MPIPOSIX (-1)
#endif
/* Macros */
#define IS_H5FD_MPIPOSIX(f) /* (H5F_t *f) */ \
(H5FD_MPIPOSIX==H5F_get_driver_id(f))
#ifdef H5_HAVE_PARALLEL
/* Function prototypes */
#ifdef __cplusplus
extern "C" {
#endif
H5_DLL hid_t H5FD_mpiposix_init(void);
H5_DLL void H5FD_mpiposix_term(void);
#ifdef H5_WANT_H5_V1_4_COMPAT
H5_DLL herr_t H5Pset_fapl_mpiposix(hid_t fapl_id, MPI_Comm comm);
H5_DLL herr_t H5Pget_fapl_mpiposix(hid_t fapl_id, MPI_Comm *comm/*out*/);
#else /* H5_WANT_H5_V1_4_COMPAT */
H5_DLL herr_t H5Pset_fapl_mpiposix(hid_t fapl_id, MPI_Comm comm, hbool_t use_gpfs);
H5_DLL herr_t H5Pget_fapl_mpiposix(hid_t fapl_id, MPI_Comm *comm/*out*/, hbool_t *use_gpfs/*out*/);
#endif /* H5_WANT_H5_V1_4_COMPAT */
#ifdef __cplusplus
}
#endif
#endif /*H5_HAVE_PARALLEL*/
#endif /* __H5FDmpiposix_H */

51
libs/cygwin/include/H5FDmulti.h Executable file
View File

@ -0,0 +1,51 @@
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* Copyright by the Board of Trustees of the University of Illinois. *
* All rights reserved. *
* *
* This file is part of HDF5. The full HDF5 copyright notice, including *
* terms governing use, modification, and redistribution, is contained in *
* the files COPYING and Copyright.html. COPYING can be found at the root *
* of the source code distribution tree; Copyright.html can be found at the *
* root level of an installed copy of the electronic HDF5 document set and *
* is linked from the top-level documents page. It can also be found at *
* http://hdf.ncsa.uiuc.edu/HDF5/doc/Copyright.html. If you do not have *
* access to either file, you may request a copy from hdfhelp@ncsa.uiuc.edu. *
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
/*
* Programmer: Robb Matzke <matzke@llnl.gov>
* Monday, August 2, 1999
*
* Purpose: The public header file for the "multi" driver.
*/
#ifndef H5FDmulti_H
#define H5FDmulti_H
#include "H5Ipublic.h"
#include "H5Ppublic.h" /* Property lists */
#include "H5Fpublic.h"
#define H5FD_MULTI (H5FD_multi_init())
#ifdef __cplusplus
extern "C" {
#endif
H5_DLL hid_t H5FD_multi_init(void);
H5_DLL void H5FD_multi_term(void);
H5_DLL herr_t H5Pset_fapl_multi(hid_t fapl_id, const H5FD_mem_t *memb_map,
const hid_t *memb_fapl, const char * const *memb_name,
const haddr_t *memb_addr, hbool_t relax);
H5_DLL herr_t H5Pget_fapl_multi(hid_t fapl_id, H5FD_mem_t *memb_map/*out*/,
hid_t *memb_fapl/*out*/, char **memb_name/*out*/,
haddr_t *memb_addr/*out*/, hbool_t *relax/*out*/);
H5_DLL herr_t H5Pset_dxpl_multi(hid_t dxpl_id, const hid_t *memb_dxpl);
H5_DLL herr_t H5Pget_dxpl_multi(hid_t dxpl_id, hid_t *memb_dxpl/*out*/);
H5_DLL herr_t H5Pset_fapl_split(hid_t fapl, const char *meta_ext,
hid_t meta_plist_id, const char *raw_ext,
hid_t raw_plist_id);
#ifdef __cplusplus
}
#endif
#endif

259
libs/cygwin/include/H5FDpublic.h Executable file
View File

@ -0,0 +1,259 @@
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* Copyright by the Board of Trustees of the University of Illinois. *
* All rights reserved. *
* *
* This file is part of HDF5. The full HDF5 copyright notice, including *
* terms governing use, modification, and redistribution, is contained in *
* the files COPYING and Copyright.html. COPYING can be found at the root *
* of the source code distribution tree; Copyright.html can be found at the *
* root level of an installed copy of the electronic HDF5 document set and *
* is linked from the top-level documents page. It can also be found at *
* http://hdf.ncsa.uiuc.edu/HDF5/doc/Copyright.html. If you do not have *
* access to either file, you may request a copy from hdfhelp@ncsa.uiuc.edu. *
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
/*
* Programmer: Robb Matzke <matzke@llnl.gov>
* Monday, July 26, 1999
*/
#ifndef _H5FDpublic_H
#define _H5FDpublic_H
#include "H5public.h"
#include "H5Fpublic.h" /*for H5F_close_degree_t */
#define H5_HAVE_VFL 1 /*define a convenient app feature test*/
#define H5FD_VFD_DEFAULT 0 /* Default VFL driver value */
/*
* Types of allocation requests. The values larger than H5FD_MEM_DEFAULT
* should not change other than adding new types to the end. These numbers
* might appear in files.
*/
typedef enum H5FD_mem_t {
H5FD_MEM_NOLIST = -1, /*must be negative*/
H5FD_MEM_DEFAULT = 0, /*must be zero*/
H5FD_MEM_SUPER = 1,
H5FD_MEM_BTREE = 2,
H5FD_MEM_DRAW = 3,
H5FD_MEM_GHEAP = 4,
H5FD_MEM_LHEAP = 5,
H5FD_MEM_OHDR = 6,
H5FD_MEM_NTYPES /*must be last*/
} H5FD_mem_t;
/*
* A free-list map which maps all types of allocation requests to a single
* free list. This is useful for drivers that don't really care about
* keeping different requests segregated in the underlying file and which
* want to make most efficient reuse of freed memory. The use of the
* H5FD_MEM_SUPER free list is arbitrary.
*/
#define H5FD_FLMAP_SINGLE { \
H5FD_MEM_SUPER, /*default*/ \
H5FD_MEM_SUPER, /*super*/ \
H5FD_MEM_SUPER, /*btree*/ \
H5FD_MEM_SUPER, /*draw*/ \
H5FD_MEM_SUPER, /*gheap*/ \
H5FD_MEM_SUPER, /*lheap*/ \
H5FD_MEM_SUPER /*ohdr*/ \
}
/*
* A free-list map which segregates requests into `raw' or `meta' data
* pools.
*/
#define H5FD_FLMAP_DICHOTOMY { \
H5FD_MEM_SUPER, /*default*/ \
H5FD_MEM_SUPER, /*super*/ \
H5FD_MEM_SUPER, /*btree*/ \
H5FD_MEM_DRAW, /*draw*/ \
H5FD_MEM_SUPER, /*gheap*/ \
H5FD_MEM_SUPER, /*lheap*/ \
H5FD_MEM_SUPER /*ohdr*/ \
}
/*
* The default free list map which causes each request type to use it's own
* free-list.
*/
#define H5FD_FLMAP_DEFAULT { \
H5FD_MEM_DEFAULT, /*default*/ \
H5FD_MEM_DEFAULT, /*super*/ \
H5FD_MEM_DEFAULT, /*btree*/ \
H5FD_MEM_DEFAULT, /*draw*/ \
H5FD_MEM_DEFAULT, /*gheap*/ \
H5FD_MEM_DEFAULT, /*lheap*/ \
H5FD_MEM_DEFAULT /*ohdr*/ \
}
/* Define VFL driver features that can be enabled on a per-driver basis */
/* These are returned with the 'query' function pointer in H5FD_class_t */
/*
* Defining the H5FD_FEAT_AGGREGATE_METADATA for a VFL driver means that
* the library will attempt to allocate a larger block for metadata and
* then sub-allocate each metadata request from that larger block.
*/
#define H5FD_FEAT_AGGREGATE_METADATA 0x00000001
/*
* Defining the H5FD_FEAT_ACCUMULATE_METADATA for a VFL driver means that
* the library will attempt to cache metadata as it is written to the file
* and build up a larger block of metadata to eventually pass to the VFL
* 'write' routine.
*
* Distinguish between updating the metadata accumulator on writes and
* reads. This is particularly (perhaps only, even) important for MPI-I/O
* where we guarantee that writes are collective, but reads may not be.
* If we were to allow the metadata accumulator to be written during a
* read operation, the application would hang.
*/
#define H5FD_FEAT_ACCUMULATE_METADATA_WRITE 0x00000002
#define H5FD_FEAT_ACCUMULATE_METADATA_READ 0x00000004
#define H5FD_FEAT_ACCUMULATE_METADATA (H5FD_FEAT_ACCUMULATE_METADATA_WRITE|H5FD_FEAT_ACCUMULATE_METADATA_READ)
/*
* Defining the H5FD_FEAT_DATA_SIEVE for a VFL driver means that
* the library will attempt to cache raw data as it is read from/written to
* a file in a "data seive" buffer. See Rajeev Thakur's papers:
* http://www.mcs.anl.gov/~thakur/papers/romio-coll.ps.gz
* http://www.mcs.anl.gov/~thakur/papers/mpio-high-perf.ps.gz
*/
#define H5FD_FEAT_DATA_SIEVE 0x00000008
/*
* Defining the H5FD_FEAT_AGGREGATE_SMALLDATA for a VFL driver means that
* the library will attempt to allocate a larger block for "small" raw data
* and then sub-allocate "small" raw data requests from that larger block.
*/
#define H5FD_FEAT_AGGREGATE_SMALLDATA 0x00000010
/* Forward declaration */
typedef struct H5FD_t H5FD_t;
/* Class information for each file driver */
typedef struct H5FD_class_t {
const char *name;
haddr_t maxaddr;
H5F_close_degree_t fc_degree;
hsize_t (*sb_size)(H5FD_t *file);
herr_t (*sb_encode)(H5FD_t *file, char *name/*out*/,
unsigned char *p/*out*/);
herr_t (*sb_decode)(H5FD_t *f, const char *name, const unsigned char *p);
size_t fapl_size;
void * (*fapl_get)(H5FD_t *file);
void * (*fapl_copy)(const void *fapl);
herr_t (*fapl_free)(void *fapl);
size_t dxpl_size;
void * (*dxpl_copy)(const void *dxpl);
herr_t (*dxpl_free)(void *dxpl);
H5FD_t *(*open)(const char *name, unsigned flags, hid_t fapl,
haddr_t maxaddr);
herr_t (*close)(H5FD_t *file);
int (*cmp)(const H5FD_t *f1, const H5FD_t *f2);
herr_t (*query)(const H5FD_t *f1, unsigned long *flags);
haddr_t (*alloc)(H5FD_t *file, H5FD_mem_t type, hid_t dxpl_id, hsize_t size);
herr_t (*free)(H5FD_t *file, H5FD_mem_t type, hid_t dxpl_id,
haddr_t addr, hsize_t size);
haddr_t (*get_eoa)(H5FD_t *file);
herr_t (*set_eoa)(H5FD_t *file, haddr_t addr);
haddr_t (*get_eof)(H5FD_t *file);
herr_t (*get_handle)(H5FD_t *file, hid_t fapl, void**file_handle);
herr_t (*read)(H5FD_t *file, H5FD_mem_t type, hid_t dxpl,
haddr_t addr, size_t size, void *buffer);
herr_t (*write)(H5FD_t *file, H5FD_mem_t type, hid_t dxpl,
haddr_t addr, size_t size, const void *buffer);
herr_t (*flush)(H5FD_t *file, hid_t dxpl_id, unsigned closing);
herr_t (*lock)(H5FD_t *file, unsigned char *oid, unsigned lock_type, hbool_t last);
herr_t (*unlock)(H5FD_t *file, unsigned char *oid, hbool_t last);
H5FD_mem_t fl_map[H5FD_MEM_NTYPES];
} H5FD_class_t;
/* A free list is a singly-linked list of address/size pairs. */
typedef struct H5FD_free_t {
haddr_t addr;
hsize_t size;
struct H5FD_free_t *next;
} H5FD_free_t;
/*
* The main datatype for each driver. Public fields common to all drivers
* are declared here and the driver appends private fields in memory.
*/
struct H5FD_t {
hid_t driver_id; /*driver ID for this file */
const H5FD_class_t *cls; /*constant class info */
unsigned long fileno[2]; /* File serial number */
unsigned long feature_flags; /* VFL Driver feature Flags */
hsize_t threshold; /* Threshold for alignment */
hsize_t alignment; /* Allocation alignment */
hsize_t reserved_alloc; /* Space reserved for later alloc calls */
/* Metadata aggregation fields */
hsize_t def_meta_block_size; /* Metadata allocation
* block size (if
* aggregating metadata) */
hsize_t cur_meta_block_size; /* Current size of metadata
* allocation region left */
haddr_t eoma; /* End of metadata
* allocated region */
/* "Small data" aggregation fields */
hsize_t def_sdata_block_size; /* "Small data"
* allocation block size
* (if aggregating "small
* data") */
hsize_t cur_sdata_block_size; /* Current size of "small
* data" allocation
* region left */
haddr_t eosda; /* End of "small data"
* allocated region */
/* Metadata accumulator fields */
unsigned char *meta_accum; /* Buffer to hold the accumulated metadata */
haddr_t accum_loc; /* File location (offset) of the
* accumulated metadata */
size_t accum_size; /* Size of the accumulated
* metadata buffer used (in
* bytes) */
size_t accum_buf_size; /* Size of the accumulated
* metadata buffer allocated (in
* bytes) */
unsigned accum_dirty; /* Flag to indicate that the
* accumulated metadata is dirty */
haddr_t maxaddr; /* For this file, overrides class */
H5FD_free_t *fl[H5FD_MEM_NTYPES]; /* Freelist per allocation type */
hsize_t maxsize; /* Largest object on FL, or zero */
};
#ifdef __cplusplus
extern "C" {
#endif
/* Function prototypes */
H5_DLL hid_t H5FDregister(const H5FD_class_t *cls);
H5_DLL herr_t H5FDunregister(hid_t driver_id);
H5_DLL H5FD_t *H5FDopen(const char *name, unsigned flags, hid_t fapl_id,
haddr_t maxaddr);
H5_DLL herr_t H5FDclose(H5FD_t *file);
H5_DLL int H5FDcmp(const H5FD_t *f1, const H5FD_t *f2);
H5_DLL int H5FDquery(const H5FD_t *f, unsigned long *flags);
H5_DLL haddr_t H5FDalloc(H5FD_t *file, H5FD_mem_t type, hid_t dxpl_id, hsize_t size);
H5_DLL herr_t H5FDfree(H5FD_t *file, H5FD_mem_t type, hid_t dxpl_id,
haddr_t addr, hsize_t size);
H5_DLL haddr_t H5FDrealloc(H5FD_t *file, H5FD_mem_t type, hid_t dxpl_id,
haddr_t addr, hsize_t old_size, hsize_t new_size);
H5_DLL haddr_t H5FDget_eoa(H5FD_t *file);
H5_DLL herr_t H5FDset_eoa(H5FD_t *file, haddr_t eof);
H5_DLL haddr_t H5FDget_eof(H5FD_t *file);
H5_DLL herr_t H5FDget_vfd_handle(H5FD_t *file, hid_t fapl, void**file_handle);
H5_DLL herr_t H5FDread(H5FD_t *file, H5FD_mem_t type, hid_t dxpl_id,
haddr_t addr, size_t size, void *buf/*out*/);
H5_DLL herr_t H5FDwrite(H5FD_t *file, H5FD_mem_t type, hid_t dxpl_id,
haddr_t addr, size_t size, const void *buf);
H5_DLL herr_t H5FDflush(H5FD_t *file, hid_t dxpl_id, unsigned closing);
#ifdef __cplusplus
}
#endif
#endif

40
libs/cygwin/include/H5FDsec2.h Executable file
View File

@ -0,0 +1,40 @@
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* Copyright by the Board of Trustees of the University of Illinois. *
* All rights reserved. *
* *
* This file is part of HDF5. The full HDF5 copyright notice, including *
* terms governing use, modification, and redistribution, is contained in *
* the files COPYING and Copyright.html. COPYING can be found at the root *
* of the source code distribution tree; Copyright.html can be found at the *
* root level of an installed copy of the electronic HDF5 document set and *
* is linked from the top-level documents page. It can also be found at *
* http://hdf.ncsa.uiuc.edu/HDF5/doc/Copyright.html. If you do not have *
* access to either file, you may request a copy from hdfhelp@ncsa.uiuc.edu. *
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
/*
* Programmer: Robb Matzke <matzke@llnl.gov>
* Monday, August 2, 1999
*
* Purpose: The public header file for the sec2 driver.
*/
#ifndef H5FDsec2_H
#define H5FDsec2_H
#include "H5Ipublic.h"
#define H5FD_SEC2 (H5FD_sec2_init())
#ifdef __cplusplus
extern "C" {
#endif
H5_DLL hid_t H5FD_sec2_init(void);
H5_DLL void H5FD_sec2_term(void);
H5_DLL herr_t H5Pset_fapl_sec2(hid_t fapl_id);
#ifdef __cplusplus
}
#endif
#endif

57
libs/cygwin/include/H5FDsrb.h Executable file
View File

@ -0,0 +1,57 @@
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* Copyright by the Board of Trustees of the University of Illinois. *
* All rights reserved. *
* *
* This file is part of HDF5. The full HDF5 copyright notice, including *
* terms governing use, modification, and redistribution, is contained in *
* the files COPYING and Copyright.html. COPYING can be found at the root *
* of the source code distribution tree; Copyright.html can be found at the *
* root level of an installed copy of the electronic HDF5 document set and *
* is linked from the top-level documents page. It can also be found at *
* http://hdf.ncsa.uiuc.edu/HDF5/doc/Copyright.html. If you do not have *
* access to either file, you may request a copy from hdfhelp@ncsa.uiuc.edu. *
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
/*
* Programmer: Raymond Lu <slu@ncsa.uiuc.edu>
* Wednesday, April 12, 2000
* Purpose: The public header file for the SRB driver.
*/
#ifndef H5FDsrb_H
#define H5FDsrb_H
#include "H5FDpublic.h"
#include "H5Ipublic.h"
#ifdef H5_HAVE_SRB
#define H5FD_SRB (H5FD_srb_init())
typedef struct SRB_Info { /* Define the SRB info object. */
char *srbHost; /* SRB host address of server */
char *srbPort; /* SRB host port number */
char *srbAuth; /* SRB Authentication-password */
int storSysType; /* Storage Type: 0=Unix, 1=UniTree, 2=HPSS,
* 3=FTP, 4=HTTP */
int mode; /* File mode-Unix access mode */
int size; /* File Size-Only valid for HPSS, -1 is default */
} SRB_Info;
#ifdef __cplusplus
extern "C" {
#endif
H5_DLL hid_t H5FD_srb_init(void);
H5_DLL void H5FD_srb_term(void);
H5_DLL herr_t H5Pset_fapl_srb(hid_t fapl_id, SRB_Info info);
H5_DLL herr_t H5Pget_fapl_srb(hid_t fapl_id, SRB_Info *info);
#ifdef __cplusplus
}
#endif
#else
#define H5FD_SRB (-1)
#endif /* H5_HAVE_SRB */
#endif /* H5FDsrb_H */

40
libs/cygwin/include/H5FDstdio.h Executable file
View File

@ -0,0 +1,40 @@
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* Copyright by the Board of Trustees of the University of Illinois. *
* All rights reserved. *
* *
* This file is part of HDF5. The full HDF5 copyright notice, including *
* terms governing use, modification, and redistribution, is contained in *
* the files COPYING and Copyright.html. COPYING can be found at the root *
* of the source code distribution tree; Copyright.html can be found at the *
* root level of an installed copy of the electronic HDF5 document set and *
* is linked from the top-level documents page. It can also be found at *
* http://hdf.ncsa.uiuc.edu/HDF5/doc/Copyright.html. If you do not have *
* access to either file, you may request a copy from hdfhelp@ncsa.uiuc.edu. *
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
/*
* Programmer: Robb Matzke <matzke@llnl.gov>
* Monday, August 2, 1999
*
* Purpose: The public header file for the sec2 driver.
*/
#ifndef H5FDstdio_H
#define H5FDstdio_H
#include "H5Ipublic.h"
#define H5FD_STDIO (H5FD_stdio_init())
#ifdef __cplusplus
extern "C" {
#endif
H5_DLL hid_t H5FD_stdio_init(void);
H5_DLL void H5FD_stdio_term(void);
H5_DLL herr_t H5Pset_fapl_stdio(hid_t fapl_id);
#ifdef __cplusplus
}
#endif
#endif

View File

@ -0,0 +1,82 @@
/*
* Copyright <20> 2000 The author.
* The author prefers this code not be used for military purposes.
*
*
* Author: Thomas Radke <tradke@aei-potsdam.mpg.de>
* Tuesday, September 12, 2000
*
* Purpose: The public header file for the Stream Virtual File Driver.
*
* Modifications:
* Thomas Radke, Thursday, October 26, 2000
* Added support for Windows.
*
*/
#ifndef H5FDstream_H
#define H5FDstream_H
#ifdef H5_HAVE_STREAM
/* check what sockets type we have (Unix or Windows sockets)
Note that only MS compilers require to use Windows sockets
but gcc under Windows does not. */
#if ! defined(H5_HAVE_WINSOCK_H) || defined(__GNUC__)
#define H5FD_STREAM_HAVE_UNIX_SOCKETS 1
#endif
/* define the data type for socket descriptors
and the constant indicating an invalid descriptor */
#ifdef H5FD_STREAM_HAVE_UNIX_SOCKETS
#define H5FD_STREAM_SOCKET_TYPE int
#define H5FD_STREAM_INVALID_SOCKET -1
#else
#include <winsock.h>
#define H5FD_STREAM_SOCKET_TYPE SOCKET
#define H5FD_STREAM_INVALID_SOCKET INVALID_SOCKET
#endif
#define H5FD_STREAM (H5FD_stream_init())
#ifdef __cplusplus
extern "C" {
#endif
/* prototype for read broadcast callback routine */
typedef int (*H5FD_stream_broadcast_t) (unsigned char **file,
haddr_t *len,
void *arg);
/* driver-specific file access properties */
typedef struct H5FD_stream_fapl_t
{
size_t increment; /* how much to grow memory in reallocs */
H5FD_STREAM_SOCKET_TYPE socket; /* externally provided socket descriptor*/
hbool_t do_socket_io; /* do I/O on socket */
int backlog; /* backlog argument for listen call */
H5FD_stream_broadcast_t broadcast_fn; /* READ broadcast callback */
void *broadcast_arg; /* READ broadcast callback user argument*/
unsigned int maxhunt; /* how many more ports to try to bind to*/
unsigned short int port; /* port a socket was bound/connected to */
} H5FD_stream_fapl_t;
/* prototypes of exported functions */
H5_DLL hid_t H5FD_stream_init (void);
H5_DLL void H5FD_stream_term(void);
H5_DLL herr_t H5Pset_fapl_stream (hid_t fapl_id,
H5FD_stream_fapl_t *fapl);
H5_DLL herr_t H5Pget_fapl_stream (hid_t fapl_id,
H5FD_stream_fapl_t *fapl /*out*/ );
#ifdef __cplusplus
}
#endif
#endif /* H5_HAVE_STREAM */
#endif /* H5FDstream_H */

122
libs/cygwin/include/H5Fpublic.h Executable file
View File

@ -0,0 +1,122 @@
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* Copyright by the Board of Trustees of the University of Illinois. *
* All rights reserved. *
* *
* This file is part of HDF5. The full HDF5 copyright notice, including *
* terms governing use, modification, and redistribution, is contained in *
* the files COPYING and Copyright.html. COPYING can be found at the root *
* of the source code distribution tree; Copyright.html can be found at the *
* root level of an installed copy of the electronic HDF5 document set and *
* is linked from the top-level documents page. It can also be found at *
* http://hdf.ncsa.uiuc.edu/HDF5/doc/Copyright.html. If you do not have *
* access to either file, you may request a copy from hdfhelp@ncsa.uiuc.edu. *
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
/*
* This file contains public declarations for the H5F module.
*/
#ifndef _H5Fpublic_H
#define _H5Fpublic_H
/* Public header files needed by this file */
#include "H5public.h"
#include "H5Ipublic.h"
/*
* These are the bits that can be passed to the `flags' argument of
* H5Fcreate() and H5Fopen(). Use the bit-wise OR operator (|) to combine
* them as needed. As a side effect, they call H5check_version() to make sure
* that the application is compiled with a version of the hdf5 header files
* which are compatible with the library to which the application is linked.
* We're assuming that these constants are used rather early in the hdf5
* session.
*
* NOTE: When adding H5F_ACC_* macros, remember to redefine them in H5Fprivate.h
*
*/
/* When this header is included from H5Fprivate.h, don't make calls to H5check() */
#undef H5CHECK
#ifndef _H5Fprivate_H
#define H5CHECK H5check(),
#else /* _H5Fprivate_H */
#define H5CHECK
#endif /* _H5Fprivate_H */
#define H5F_ACC_RDONLY (H5CHECK 0x0000u) /*absence of rdwr => rd-only */
#define H5F_ACC_RDWR (H5CHECK 0x0001u) /*open for read and write */
#define H5F_ACC_TRUNC (H5CHECK 0x0002u) /*overwrite existing files */
#define H5F_ACC_EXCL (H5CHECK 0x0004u) /*fail if file already exists*/
#define H5F_ACC_DEBUG (H5CHECK 0x0008u) /*print debug info */
#define H5F_ACC_CREAT (H5CHECK 0x0010u) /*create non-existing files */
#define H5F_OBJ_FILE (0x0001u)
#define H5F_OBJ_DATASET (0x0002u)
#define H5F_OBJ_GROUP (0x0004u)
#define H5F_OBJ_DATATYPE (0x0008u)
#define H5F_OBJ_ATTR (0x0010u)
#define H5F_OBJ_ALL (H5F_OBJ_FILE|H5F_OBJ_DATASET|H5F_OBJ_GROUP|H5F_OBJ_DATATYPE|H5F_OBJ_ATTR)
#ifdef H5_HAVE_PARALLEL
/*
* Use this constant string as the MPI_Info key to set H5Fmpio debug flags.
* To turn on H5Fmpio debug flags, set the MPI_Info value with this key to
* have the value of a string consisting of the characters that turn on the
* desired flags.
*/
#define H5F_MPIO_DEBUG_KEY "H5F_mpio_debug_key"
#endif /* H5_HAVE_PARALLEL */
/* The difference between a single file and a set of mounted files */
typedef enum H5F_scope_t {
H5F_SCOPE_LOCAL = 0, /*specified file handle only */
H5F_SCOPE_GLOBAL = 1, /*entire virtual file */
H5F_SCOPE_DOWN = 2 /*for internal use only */
} H5F_scope_t;
/* Unlimited file size for H5Pset_external() */
#define H5F_UNLIMITED ((hsize_t)(-1L))
/* How does file close behave?
* H5F_CLOSE_DEFAULT - Use the degree pre-defined by underlining VFL
* H5F_CLOSE_WEAK - file closes only after all opened objects are closed
* H5F_CLOSE_SEMI - if no opened objects, file is close; otherwise, file
close fails
* H5F_CLOSE_STRONG - if there are opened objects, close them first, then
close file
*/
typedef enum H5F_close_degree_t {
H5F_CLOSE_DEFAULT = 0,
H5F_CLOSE_WEAK = 1,
H5F_CLOSE_SEMI = 2,
H5F_CLOSE_STRONG = 3
} H5F_close_degree_t;
#ifdef __cplusplus
extern "C" {
#endif
/* Functions in H5F.c */
H5_DLL htri_t H5Fis_hdf5 (const char *filename);
H5_DLL hid_t H5Fcreate (const char *filename, unsigned flags,
hid_t create_plist, hid_t access_plist);
H5_DLL hid_t H5Fopen (const char *filename, unsigned flags,
hid_t access_plist);
H5_DLL hid_t H5Freopen(hid_t file_id);
H5_DLL herr_t H5Fflush(hid_t object_id, H5F_scope_t scope);
H5_DLL herr_t H5Fclose (hid_t file_id);
H5_DLL hid_t H5Fget_create_plist (hid_t file_id);
H5_DLL hid_t H5Fget_access_plist (hid_t file_id);
H5_DLL int H5Fget_obj_count(hid_t file_id, unsigned types);
H5_DLL int H5Fget_obj_ids(hid_t file_id, unsigned types, int max_objs, hid_t *obj_id_list);
H5_DLL herr_t H5Fget_vfd_handle(hid_t file_id, hid_t fapl, void** file_handle);
H5_DLL herr_t H5Fmount(hid_t loc, const char *name, hid_t child, hid_t plist);
H5_DLL herr_t H5Funmount(hid_t loc, const char *name);
H5_DLL hssize_t H5Fget_freespace(hid_t file_id);
H5_DLL herr_t H5Fget_filesize(hid_t file_id, hsize_t *size);
H5_DLL ssize_t H5Fget_name(hid_t obj_id, char *name, size_t size);
#ifdef __cplusplus
}
#endif
#endif

138
libs/cygwin/include/H5Gpublic.h Executable file
View File

@ -0,0 +1,138 @@
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* Copyright by the Board of Trustees of the University of Illinois. *
* All rights reserved. *
* *
* This file is part of HDF5. The full HDF5 copyright notice, including *
* terms governing use, modification, and redistribution, is contained in *
* the files COPYING and Copyright.html. COPYING can be found at the root *
* of the source code distribution tree; Copyright.html can be found at the *
* root level of an installed copy of the electronic HDF5 document set and *
* is linked from the top-level documents page. It can also be found at *
* http://hdf.ncsa.uiuc.edu/HDF5/doc/Copyright.html. If you do not have *
* access to either file, you may request a copy from hdfhelp@ncsa.uiuc.edu. *
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
/*-------------------------------------------------------------------------
*
* Created: H5Gproto.h
* Jul 11 1997
* Robb Matzke <matzke@llnl.gov>
*
* Purpose: Public declarations for the H5G package (symbol
* tables).
*
* Modifications:
*
*-------------------------------------------------------------------------
*/
#ifndef _H5Gpublic_H
#define _H5Gpublic_H
/* Public headers needed by this file */
#include <sys/types.h>
#include "H5public.h"
#include "H5Ipublic.h"
#include "H5Opublic.h"
#ifdef __cplusplus
extern "C" {
#endif
/* Types of links */
typedef enum H5G_link_t {
H5G_LINK_ERROR = -1,
H5G_LINK_HARD = 0,
H5G_LINK_SOFT = 1
} H5G_link_t;
/*
* An object has a certain type. The first few numbers are reserved for use
* internally by HDF5. Users may add their own types with higher values. The
* values are never stored in the file -- they only exist while an
* application is running. An object may satisfy the `isa' function for more
* than one type.
*/
#ifdef H5_WANT_H5_V1_4_COMPAT
#define H5G_UNKNOWN -1 /* Unknown object type */
#define H5G_LINK 0 /* Object is a symbolic link */
#define H5G_GROUP 1 /* Object is a group */
#define H5G_DATASET 2 /* Object is a dataset */
#define H5G_TYPE 3 /* Object is a named data type */
#define H5G_RESERVED_4 4 /* Reserved for future use */
#define H5G_RESERVED_5 5 /* Reserved for future use */
#define H5G_RESERVED_6 6 /* Reserved for future use */
#define H5G_RESERVED_7 7 /* Reserved for future use */
#else /*H5_WANT_H5_V1_4_COMPAT*/
typedef enum H5G_obj_t {
H5G_UNKNOWN = -1, /* Unknown object type */
H5G_LINK, /* Object is a symbolic link */
H5G_GROUP, /* Object is a group */
H5G_DATASET, /* Object is a dataset */
H5G_TYPE, /* Object is a named data type */
H5G_RESERVED_4, /* Reserved for future use */
H5G_RESERVED_5, /* Reserved for future use */
H5G_RESERVED_6, /* Reserved for future use */
H5G_RESERVED_7 /* Reserved for future use */
} H5G_obj_t;
#endif /*H5_WANT_H5_V1_4_COMPAT*/
#define H5G_NTYPES 256 /* Max possible number of types */
#define H5G_NLIBTYPES 8 /* Number of internal types */
#define H5G_NUSERTYPES (H5G_NTYPES-H5G_NLIBTYPES)
#define H5G_USERTYPE(X) (8+(X)) /* User defined types */
/* Information about an object */
typedef struct H5G_stat_t {
unsigned long fileno[2]; /*file number */
unsigned long objno[2]; /*object number */
unsigned nlink; /*number of hard links to object*/
#ifdef H5_WANT_H5_V1_4_COMPAT
int type; /*basic object type */
#else /*H5_WANT_H5_V1_4_COMPAT*/
H5G_obj_t type; /*basic object type */
#endif /*H5_WANT_H5_V1_4_COMPAT*/
time_t mtime; /*modification time */
size_t linklen; /*symbolic link value length */
H5O_stat_t ohdr; /* Object header information */
} H5G_stat_t;
#define H5G_SAME_LOC 0
#define H5Glink(cur_loc_id, type, cur_name, new_name) \
H5Glink2(cur_loc_id, cur_name, type, H5G_SAME_LOC, new_name)
#define H5Gmove(src_loc_id, src_name, dst_name) \
H5Gmove2(src_loc_id, src_name, H5G_SAME_LOC, dst_name)
typedef herr_t (*H5G_iterate_t)(hid_t group, const char *name,
void *op_data);
H5_DLL hid_t H5Gcreate(hid_t loc_id, const char *name, size_t size_hint);
H5_DLL hid_t H5Gopen(hid_t loc_id, const char *name);
H5_DLL herr_t H5Gclose(hid_t group_id);
H5_DLL herr_t H5Giterate(hid_t loc_id, const char *name, int *idx,
H5G_iterate_t op, void *op_data);
H5_DLL herr_t H5Gget_num_objs(hid_t loc_id, hsize_t *num_objs);
H5_DLL ssize_t H5Gget_objname_by_idx(hid_t loc_id, hsize_t idx, char* name, size_t size);
#ifdef H5_WANT_H5_V1_4_COMPAT
H5_DLL int H5Gget_objtype_by_idx(hid_t loc_id, hsize_t idx);
#else /*H5_WANT_H5_V1_4_COMPAT*/
H5_DLL H5G_obj_t H5Gget_objtype_by_idx(hid_t loc_id, hsize_t idx);
#endif /*H5_WANT_H5_V1_4_COMPAT*/
H5_DLL herr_t H5Gmove2(hid_t src_loc, const char *src, hid_t dst_loc,
const char *dst);
H5_DLL herr_t H5Glink2(hid_t src_loc, const char *cur_name, H5G_link_t type,
hid_t dst_loc, const char *new_name);
H5_DLL herr_t H5Gunlink(hid_t loc_id, const char *name);
H5_DLL herr_t H5Gget_objinfo(hid_t loc_id, const char *name,
hbool_t follow_link, H5G_stat_t *statbuf/*out*/);
H5_DLL herr_t H5Gget_linkval(hid_t loc_id, const char *name, size_t size,
char *buf/*out*/);
H5_DLL herr_t H5Gset_comment(hid_t loc_id, const char *name,
const char *comment);
H5_DLL int H5Gget_comment(hid_t loc_id, const char *name, size_t bufsize,
char *buf);
#ifdef __cplusplus
}
#endif
#endif

View File

@ -0,0 +1,32 @@
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* Copyright by the Board of Trustees of the University of Illinois. *
* All rights reserved. *
* *
* This file is part of HDF5. The full HDF5 copyright notice, including *
* terms governing use, modification, and redistribution, is contained in *
* the files COPYING and Copyright.html. COPYING can be found at the root *
* of the source code distribution tree; Copyright.html can be found at the *
* root level of an installed copy of the electronic HDF5 document set and *
* is linked from the top-level documents page. It can also be found at *
* http://hdf.ncsa.uiuc.edu/HDF5/doc/Copyright.html. If you do not have *
* access to either file, you may request a copy from hdfhelp@ncsa.uiuc.edu. *
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
/*
* Programmer: Robb Matzke <matzke@llnl.gov>
* Friday, March 27, 1998
*/
#ifndef _H5HGpublic_H
#define _H5HGpublic_H
/* Public headers needed by this file */
#include "H5public.h"
#ifdef __cplusplus
extern "C" {
#endif
#ifdef __cplusplus
}
#endif
#endif

View File

@ -0,0 +1,40 @@
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* Copyright by the Board of Trustees of the University of Illinois. *
* All rights reserved. *
* *
* This file is part of HDF5. The full HDF5 copyright notice, including *
* terms governing use, modification, and redistribution, is contained in *
* the files COPYING and Copyright.html. COPYING can be found at the root *
* of the source code distribution tree; Copyright.html can be found at the *
* root level of an installed copy of the electronic HDF5 document set and *
* is linked from the top-level documents page. It can also be found at *
* http://hdf.ncsa.uiuc.edu/HDF5/doc/Copyright.html. If you do not have *
* access to either file, you may request a copy from hdfhelp@ncsa.uiuc.edu. *
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
/*-------------------------------------------------------------------------
*
* Created: H5HLpublic.h
* Jul 16 1997
* Robb Matzke <matzke@llnl.gov>
*
* Purpose: Public declarations for the H5HL (local heap) package.
*
* Modifications:
*
*-------------------------------------------------------------------------
*/
#ifndef _H5HLpublic_H
#define _H5HLpublic_H
/* Public headers needed by this file */
#include "H5public.h"
#ifdef __cplusplus
extern "C" {
#endif
#ifdef __cplusplus
}
#endif
#endif

74
libs/cygwin/include/H5Ipublic.h Executable file
View File

@ -0,0 +1,74 @@
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* Copyright by the Board of Trustees of the University of Illinois. *
* All rights reserved. *
* *
* This file is part of HDF5. The full HDF5 copyright notice, including *
* terms governing use, modification, and redistribution, is contained in *
* the files COPYING and Copyright.html. COPYING can be found at the root *
* of the source code distribution tree; Copyright.html can be found at the *
* root level of an installed copy of the electronic HDF5 document set and *
* is linked from the top-level documents page. It can also be found at *
* http://hdf.ncsa.uiuc.edu/HDF5/doc/Copyright.html. If you do not have *
* access to either file, you may request a copy from hdfhelp@ncsa.uiuc.edu. *
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
/*
* This file contains function prototypes for each exported function in
* the H5I module.
*/
#ifndef _H5Ipublic_H
#define _H5Ipublic_H
/* Public headers needed by this file */
#include "H5public.h"
/*
* Group values allowed. Start with `1' instead of `0' because it makes the
* tracing output look better when hid_t values are large numbers. Change the
* GROUP_BITS in H5I.c if the MAXID gets larger than 32 (an assertion will
* fail otherwise).
*
* When adding groups here, add a section to the 'misc19' test in test/tmisc.c
* to verify that the H5I{inc|dec|get}_ref() routines work correctly with in.
*
*/
typedef enum {
H5I_BADID = (-1), /*invalid Group */
H5I_FILE = 1, /*group ID for File objects */
H5I_FILE_CLOSING, /*files pending close due to open objhdrs */
H5I_GROUP, /*group ID for Group objects */
H5I_DATATYPE, /*group ID for Datatype objects */
H5I_DATASPACE, /*group ID for Dataspace objects */
H5I_DATASET, /*group ID for Dataset objects */
H5I_ATTR, /*group ID for Attribute objects */
H5I_TEMPBUF, /*group ID for Temporary buffer objects */
H5I_REFERENCE, /*group ID for Reference objects */
H5I_VFL, /*group ID for virtual file layer */
H5I_GENPROP_CLS, /*group ID for generic property list classes */
H5I_GENPROP_LST, /*group ID for generic property lists */
H5I_NGROUPS /*number of valid groups, MUST BE LAST! */
} H5I_type_t;
/* Type of atoms to return to users */
typedef int hid_t;
/* An invalid object ID. This is also negative for error return. */
#define H5I_INVALID_HID (-1)
#ifdef __cplusplus
extern "C" {
#endif
/* Public API functions */
H5_DLL H5I_type_t H5Iget_type(hid_t id);
H5_DLL hid_t H5Iget_file_id(hid_t id);
H5_DLL ssize_t H5Iget_name(hid_t id, char *name/*out*/, size_t size);
H5_DLL int H5Iinc_ref(hid_t id);
H5_DLL int H5Idec_ref(hid_t id);
H5_DLL int H5Iget_ref(hid_t id);
#ifdef __cplusplus
}
#endif
#endif

View File

@ -0,0 +1,45 @@
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* Copyright by the Board of Trustees of the University of Illinois. *
* All rights reserved. *
* *
* This file is part of HDF5. The full HDF5 copyright notice, including *
* terms governing use, modification, and redistribution, is contained in *
* the files COPYING and Copyright.html. COPYING can be found at the root *
* of the source code distribution tree; Copyright.html can be found at the *
* root level of an installed copy of the electronic HDF5 document set and *
* is linked from the top-level documents page. It can also be found at *
* http://hdf.ncsa.uiuc.edu/HDF5/doc/Copyright.html. If you do not have *
* access to either file, you may request a copy from hdfhelp@ncsa.uiuc.edu. *
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
/*-------------------------------------------------------------------------
*
* Created: H5MMproto.h
* Jul 10 1997
* Robb Matzke <matzke@llnl.gov>
*
* Purpose: Public declarations for the H5MM (memory management)
* package.
*
* Modifications:
*
*-------------------------------------------------------------------------
*/
#ifndef _H5MMpublic_H
#define _H5MMpublic_H
/* Public headers needed by this file */
#include "H5public.h"
/* These typedefs are currently used for VL datatype allocation/freeing */
typedef void *(* H5MM_allocate_t)(size_t size,void *info);
typedef void (* H5MM_free_t)(void *mem, void *free_info);
#ifdef __cplusplus
extern "C" {
#endif
#ifdef __cplusplus
}
#endif
#endif

48
libs/cygwin/include/H5Opublic.h Executable file
View File

@ -0,0 +1,48 @@
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* Copyright by the Board of Trustees of the University of Illinois. *
* All rights reserved. *
* *
* This file is part of HDF5. The full HDF5 copyright notice, including *
* terms governing use, modification, and redistribution, is contained in *
* the files COPYING and Copyright.html. COPYING can be found at the root *
* of the source code distribution tree; Copyright.html can be found at the *
* root level of an installed copy of the electronic HDF5 document set and *
* is linked from the top-level documents page. It can also be found at *
* http://hdf.ncsa.uiuc.edu/HDF5/doc/Copyright.html. If you do not have *
* access to either file, you may request a copy from hdfhelp@ncsa.uiuc.edu. *
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
/*-------------------------------------------------------------------------
*
* Created: H5Opublic.h
* Aug 5 1997
* Robb Matzke <matzke@llnl.gov>
*
* Purpose: Public declarations for the H5O (object header)
* package.
*
* Modifications:
*
*-------------------------------------------------------------------------
*/
#ifndef _H5Opublic_H
#define _H5Opublic_H
/* Public headers needed by this file */
#include "H5public.h"
typedef struct H5O_stat_t {
hsize_t size; /* Total size of object header in file */
hsize_t free; /* Free space within object header */
unsigned nmesgs; /* Number of object header messages */
unsigned nchunks; /* Number of object header chunks */
} H5O_stat_t;
#ifdef __cplusplus
extern "C" {
#endif
#ifdef __cplusplus
}
#endif
#endif

308
libs/cygwin/include/H5Ppublic.h Executable file
View File

@ -0,0 +1,308 @@
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* Copyright by the Board of Trustees of the University of Illinois. *
* All rights reserved. *
* *
* This file is part of HDF5. The full HDF5 copyright notice, including *
* terms governing use, modification, and redistribution, is contained in *
* the files COPYING and Copyright.html. COPYING can be found at the root *
* of the source code distribution tree; Copyright.html can be found at the *
* root level of an installed copy of the electronic HDF5 document set and *
* is linked from the top-level documents page. It can also be found at *
* http://hdf.ncsa.uiuc.edu/HDF5/doc/Copyright.html. If you do not have *
* access to either file, you may request a copy from hdfhelp@ncsa.uiuc.edu. *
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
/*
* This file contains function prototypes for each exported function in the
* H5P module.
*/
#ifndef _H5Ppublic_H
#define _H5Ppublic_H
/* Default Template for creation, access, etc. templates */
#define H5P_DEFAULT 0
/* Public headers needed by this file */
#include "H5public.h"
#include "H5Ipublic.h"
#include "H5Dpublic.h"
#include "H5Fpublic.h"
#include "H5FDpublic.h"
#include "H5MMpublic.h"
#include "H5Zpublic.h"
/* Metroworks <sys/types.h> doesn't define off_t. */
#ifdef __MWERKS__
typedef long off_t;
/* Metroworks does not define EINTR in <errno.h> */
# define EINTR 4
#endif
/*__MWERKS__*/
#ifdef H5_WANT_H5_V1_4_COMPAT
/* Backward compatibility typedef... */
typedef hid_t H5P_class_t; /* Alias H5P_class_t to hid_t */
/* H5P_DATASET_XFER was the name from the beginning through 1.2. It was
* changed to H5P_DATA_XFER on v1.3.0. Then it was changed back to
* H5P_DATASET_XFER right before the release of v1.4.0-beta2.
* Define an alias here to help applications that had ported to v1.3.
* Should be removed in later version.
*/
#define H5P_DATA_XFER H5P_DATASET_XFER
#endif /* H5_WANT_H5_V1_4_COMPAT */
#ifdef __cplusplus
extern "C" {
#endif
/* Define property list class callback function pointer types */
typedef herr_t (*H5P_cls_create_func_t)(hid_t prop_id, void *create_data);
typedef herr_t (*H5P_cls_copy_func_t)(hid_t new_prop_id, hid_t old_prop_id,
void *copy_data);
typedef herr_t (*H5P_cls_close_func_t)(hid_t prop_id, void *close_data);
/* Define property list callback function pointer types */
typedef herr_t (*H5P_prp_cb1_t)(const char *name, size_t size, void *value);
typedef herr_t (*H5P_prp_cb2_t)(hid_t prop_id, const char *name, size_t size, void *value);
typedef H5P_prp_cb1_t H5P_prp_create_func_t;
typedef H5P_prp_cb2_t H5P_prp_set_func_t;
typedef H5P_prp_cb2_t H5P_prp_get_func_t;
typedef H5P_prp_cb2_t H5P_prp_delete_func_t;
typedef H5P_prp_cb1_t H5P_prp_copy_func_t;
typedef int (*H5P_prp_compare_func_t)(const void *value1, const void *value2, size_t size);
typedef H5P_prp_cb1_t H5P_prp_close_func_t;
/* Define property list iteration function type */
typedef herr_t (*H5P_iterate_t)(hid_t id, const char *name, void *iter_data);
/*
* The library created property list classes
*
* NOTE: When adding H5P_* macros, remember to redefine them in H5Pprivate.h
*
*/
/* When this header is included from H5Pprivate.h, don't make calls to H5open() */
#undef H5OPEN
#ifndef _H5Pprivate_H
#define H5OPEN H5open(),
#else /* _H5Pprivate_H */
#define H5OPEN
#endif /* _H5Pprivate_H */
#define H5P_NO_CLASS (H5OPEN H5P_CLS_NO_CLASS_g)
#define H5P_FILE_CREATE (H5OPEN H5P_CLS_FILE_CREATE_g)
#define H5P_FILE_ACCESS (H5OPEN H5P_CLS_FILE_ACCESS_g)
#define H5P_DATASET_CREATE (H5OPEN H5P_CLS_DATASET_CREATE_g)
#define H5P_DATASET_XFER (H5OPEN H5P_CLS_DATASET_XFER_g)
#define H5P_MOUNT (H5OPEN H5P_CLS_MOUNT_g)
H5_DLLVAR hid_t H5P_CLS_NO_CLASS_g;
H5_DLLVAR hid_t H5P_CLS_FILE_CREATE_g;
H5_DLLVAR hid_t H5P_CLS_FILE_ACCESS_g;
H5_DLLVAR hid_t H5P_CLS_DATASET_CREATE_g;
H5_DLLVAR hid_t H5P_CLS_DATASET_XFER_g;
H5_DLLVAR hid_t H5P_CLS_MOUNT_g;
/*
* The library created default property lists
*
* NOTE: When adding H5P_* macros, remember to redefine them in H5Pprivate.h
*
*/
#define H5P_NO_CLASS_DEFAULT (H5OPEN H5P_LST_NO_CLASS_g)
#define H5P_FILE_CREATE_DEFAULT (H5OPEN H5P_LST_FILE_CREATE_g)
#define H5P_FILE_ACCESS_DEFAULT (H5OPEN H5P_LST_FILE_ACCESS_g)
#define H5P_DATASET_CREATE_DEFAULT (H5OPEN H5P_LST_DATASET_CREATE_g)
#define H5P_DATASET_XFER_DEFAULT (H5OPEN H5P_LST_DATASET_XFER_g)
#define H5P_MOUNT_DEFAULT (H5OPEN H5P_LST_MOUNT_g)
H5_DLLVAR hid_t H5P_LST_NO_CLASS_g;
H5_DLLVAR hid_t H5P_LST_FILE_CREATE_g;
H5_DLLVAR hid_t H5P_LST_FILE_ACCESS_g;
H5_DLLVAR hid_t H5P_LST_DATASET_CREATE_g;
H5_DLLVAR hid_t H5P_LST_DATASET_XFER_g;
H5_DLLVAR hid_t H5P_LST_MOUNT_g;
/* Public functions */
H5_DLL hid_t H5Pcreate_class(hid_t parent, const char *name,
H5P_cls_create_func_t cls_create, void *create_data,
H5P_cls_copy_func_t cls_copy, void *copy_data,
H5P_cls_close_func_t cls_close, void *close_data);
H5_DLL char *H5Pget_class_name(hid_t pclass_id);
H5_DLL hid_t H5Pcreate(hid_t cls_id);
H5_DLL herr_t H5Pregister(hid_t cls_id, const char *name, size_t size,
void *def_value, H5P_prp_create_func_t prp_create,
H5P_prp_set_func_t prp_set, H5P_prp_get_func_t prp_get,
H5P_prp_delete_func_t prp_del,
H5P_prp_copy_func_t prp_copy,
H5P_prp_close_func_t prp_close);
H5_DLL herr_t H5Pinsert(hid_t plist_id, const char *name, size_t size,
void *value, H5P_prp_set_func_t prp_set, H5P_prp_get_func_t prp_get,
H5P_prp_delete_func_t prp_delete,
H5P_prp_copy_func_t prp_copy,
H5P_prp_close_func_t prp_close);
H5_DLL herr_t H5Pset(hid_t plist_id, const char *name, void *value);
H5_DLL htri_t H5Pexist(hid_t plist_id, const char *name);
H5_DLL herr_t H5Pget_size(hid_t id, const char *name, size_t *size);
H5_DLL herr_t H5Pget_nprops(hid_t id, size_t *nprops);
H5_DLL hid_t H5Pget_class(hid_t plist_id);
H5_DLL hid_t H5Pget_class_parent(hid_t pclass_id);
H5_DLL herr_t H5Pget(hid_t plist_id, const char *name, void * value);
H5_DLL htri_t H5Pequal(hid_t id1, hid_t id2);
H5_DLL htri_t H5Pisa_class(hid_t plist_id, hid_t pclass_id);
H5_DLL int H5Piterate(hid_t id, int *idx, H5P_iterate_t iter_func,
void *iter_data);
H5_DLL herr_t H5Pcopy_prop(hid_t dst_id, hid_t src_id, const char *name);
H5_DLL herr_t H5Premove(hid_t plist_id, const char *name);
H5_DLL herr_t H5Punregister(hid_t pclass_id, const char *name);
H5_DLL herr_t H5Pclose_class(hid_t plist_id);
H5_DLL herr_t H5Pclose(hid_t plist_id);
H5_DLL hid_t H5Pcopy(hid_t plist_id);
H5_DLL herr_t H5Pget_version(hid_t plist_id, int *boot/*out*/,
int *freelist/*out*/, int *stab/*out*/,
int *shhdr/*out*/);
H5_DLL herr_t H5Pset_userblock(hid_t plist_id, hsize_t size);
H5_DLL herr_t H5Pget_userblock(hid_t plist_id, hsize_t *size);
H5_DLL herr_t H5Pset_alignment(hid_t fapl_id, hsize_t threshold,
hsize_t alignment);
H5_DLL herr_t H5Pget_alignment(hid_t fapl_id, hsize_t *threshold/*out*/,
hsize_t *alignment/*out*/);
H5_DLL herr_t H5Pset_sizes(hid_t plist_id, size_t sizeof_addr,
size_t sizeof_size);
H5_DLL herr_t H5Pget_sizes(hid_t plist_id, size_t *sizeof_addr/*out*/,
size_t *sizeof_size/*out*/);
#ifdef H5_WANT_H5_V1_4_COMPAT
H5_DLL herr_t H5Pset_sym_k(hid_t plist_id, int ik, int lk);
H5_DLL herr_t H5Pget_sym_k(hid_t plist_id, int *ik/*out*/, int *lk/*out*/);
#else /* H5_WANT_H5_V1_4_COMPAT */
H5_DLL herr_t H5Pset_sym_k(hid_t plist_id, int ik, unsigned lk);
H5_DLL herr_t H5Pget_sym_k(hid_t plist_id, int *ik/*out*/, unsigned *lk/*out*/);
#endif /* H5_WANT_H5_V1_4_COMPAT */
H5_DLL herr_t H5Pset_istore_k(hid_t plist_id, int ik);
H5_DLL herr_t H5Pget_istore_k(hid_t plist_id, int *ik/*out*/);
H5_DLL herr_t H5Pset_layout(hid_t plist_id, H5D_layout_t layout);
H5_DLL H5D_layout_t H5Pget_layout(hid_t plist_id);
H5_DLL herr_t H5Pset_chunk(hid_t plist_id, int ndims, const hsize_t dim[]);
H5_DLL int H5Pget_chunk(hid_t plist_id, int max_ndims, hsize_t dim[]/*out*/);
H5_DLL herr_t H5Pset_external(hid_t plist_id, const char *name, off_t offset,
hsize_t size);
H5_DLL int H5Pget_external_count(hid_t plist_id);
H5_DLL herr_t H5Pget_external(hid_t plist_id, int idx, size_t name_size,
char *name/*out*/, off_t *offset/*out*/,
hsize_t *size/*out*/);
H5_DLL herr_t H5Pset_driver(hid_t plist_id, hid_t driver_id,
const void *driver_info);
H5_DLL hid_t H5Pget_driver(hid_t plist_id);
H5_DLL void *H5Pget_driver_info(hid_t plist_id);
H5_DLL herr_t H5Pset_family_offset(hid_t fapl_id, hsize_t offset);
H5_DLL herr_t H5Pget_family_offset(hid_t fapl_id, hsize_t *offset);
H5_DLL herr_t H5Pset_multi_type(hid_t fapl_id, H5FD_mem_t type);
H5_DLL herr_t H5Pget_multi_type(hid_t fapl_id, H5FD_mem_t *type);
#ifdef H5_WANT_H5_V1_4_COMPAT
H5_DLL herr_t H5Pset_buffer(hid_t plist_id, hsize_t size, void *tconv,
void *bkg);
H5_DLL hsize_t H5Pget_buffer(hid_t plist_id, void **tconv/*out*/,
void **bkg/*out*/);
#else /* H5_WANT_H5_V1_4_COMPAT */
H5_DLL herr_t H5Pset_buffer(hid_t plist_id, size_t size, void *tconv,
void *bkg);
H5_DLL size_t H5Pget_buffer(hid_t plist_id, void **tconv/*out*/,
void **bkg/*out*/);
#endif /* H5_WANT_H5_V1_4_COMPAT */
H5_DLL herr_t H5Pset_preserve(hid_t plist_id, hbool_t status);
H5_DLL int H5Pget_preserve(hid_t plist_id);
H5_DLL herr_t H5Pmodify_filter(hid_t plist_id, H5Z_filter_t filter,
unsigned int flags, size_t cd_nelmts,
const unsigned int cd_values[/*cd_nelmts*/]);
H5_DLL herr_t H5Pset_filter(hid_t plist_id, H5Z_filter_t filter,
unsigned int flags, size_t cd_nelmts,
const unsigned int c_values[]);
H5_DLL int H5Pget_nfilters(hid_t plist_id);
H5_DLL H5Z_filter_t H5Pget_filter(hid_t plist_id, int filter,
unsigned int *flags/*out*/,
size_t *cd_nelmts/*out*/,
unsigned cd_values[]/*out*/,
size_t namelen, char name[]);
H5_DLL H5Z_filter_t H5Pget_filter_by_id(hid_t plist_id, H5Z_filter_t id,
unsigned int *flags/*out*/,
size_t *cd_nelmts/*out*/,
unsigned cd_values[]/*out*/,
size_t namelen, char name[]);
H5_DLL htri_t H5Pall_filters_avail(hid_t plist_id);
H5_DLL herr_t H5Pset_deflate(hid_t plist_id, unsigned aggression);
H5_DLL herr_t H5Pset_szip(hid_t plist_id, unsigned options_mask, unsigned pixels_per_block);
H5_DLL herr_t H5Pset_shuffle(hid_t plist_id);
H5_DLL herr_t H5Pset_fletcher32(hid_t plist_id);
H5_DLL herr_t H5Pset_edc_check(hid_t plist_id, H5Z_EDC_t check);
H5_DLL H5Z_EDC_t H5Pget_edc_check(hid_t plist_id);
H5_DLL herr_t H5Pset_filter_callback(hid_t plist_id, H5Z_filter_func_t func,
void* op_data);
#ifdef H5_WANT_H5_V1_4_COMPAT
H5_DLL herr_t H5Pset_cache(hid_t plist_id, int mdc_nelmts, int rdcc_nelmts,
size_t rdcc_nbytes, double rdcc_w0);
H5_DLL herr_t H5Pget_cache(hid_t plist_id, int *mdc_nelmts/*out*/,
int *rdcc_nelmts/*out*/,
size_t *rdcc_nbytes/*out*/, double *rdcc_w0);
#else /* H5_WANT_H5_V1_4_COMPAT */
H5_DLL herr_t H5Pset_cache(hid_t plist_id, int mdc_nelmts, size_t rdcc_nelmts,
size_t rdcc_nbytes, double rdcc_w0);
H5_DLL herr_t H5Pget_cache(hid_t plist_id, int *mdc_nelmts/*out*/,
size_t *rdcc_nelmts/*out*/,
size_t *rdcc_nbytes/*out*/, double *rdcc_w0);
#endif /* H5_WANT_H5_V1_4_COMPAT */
#ifdef H5_WANT_H5_V1_4_COMPAT
H5_DLL herr_t H5Pset_hyper_cache(hid_t plist_id, unsigned cache,
unsigned limit);
H5_DLL herr_t H5Pget_hyper_cache(hid_t plist_id, unsigned *cache,
unsigned *limit);
#endif /* H5_WANT_H5_V1_4_COMPAT */
H5_DLL herr_t H5Pset_btree_ratios(hid_t plist_id, double left, double middle,
double right);
H5_DLL herr_t H5Pget_btree_ratios(hid_t plist_id, double *left/*out*/,
double *middle/*out*/,
double *right/*out*/);
H5_DLL herr_t H5Pset_fill_value(hid_t plist_id, hid_t type_id,
const void *value);
H5_DLL herr_t H5Pget_fill_value(hid_t plist_id, hid_t type_id,
void *value/*out*/);
H5_DLL herr_t H5Pfill_value_defined(hid_t plist, H5D_fill_value_t *status);
H5_DLL herr_t H5Pset_alloc_time(hid_t plist_id, H5D_alloc_time_t
alloc_time);
H5_DLL herr_t H5Pget_alloc_time(hid_t plist_id, H5D_alloc_time_t
*alloc_time/*out*/);
H5_DLL herr_t H5Pset_fill_time(hid_t plist_id, H5D_fill_time_t fill_time);
H5_DLL herr_t H5Pget_fill_time(hid_t plist_id, H5D_fill_time_t
*fill_time/*out*/);
H5_DLL herr_t H5Pset_gc_references(hid_t fapl_id, unsigned gc_ref);
H5_DLL herr_t H5Pget_gc_references(hid_t fapl_id, unsigned *gc_ref/*out*/);
H5_DLL herr_t H5Pset_fclose_degree(hid_t fapl_id, H5F_close_degree_t degree);
H5_DLL herr_t H5Pget_fclose_degree(hid_t fapl_id, H5F_close_degree_t *degree);
H5_DLL herr_t H5Pset_vlen_mem_manager(hid_t plist_id,
H5MM_allocate_t alloc_func,
void *alloc_info, H5MM_free_t free_func,
void *free_info);
H5_DLL herr_t H5Pget_vlen_mem_manager(hid_t plist_id,
H5MM_allocate_t *alloc_func,
void **alloc_info,
H5MM_free_t *free_func,
void **free_info);
H5_DLL herr_t H5Pset_meta_block_size(hid_t fapl_id, hsize_t size);
H5_DLL herr_t H5Pget_meta_block_size(hid_t fapl_id, hsize_t *size/*out*/);
#ifdef H5_WANT_H5_V1_4_COMPAT
H5_DLL herr_t H5Pset_sieve_buf_size(hid_t fapl_id, hsize_t size);
H5_DLL herr_t H5Pget_sieve_buf_size(hid_t fapl_id, hsize_t *size/*out*/);
#else /* H5_WANT_H5_V1_4_COMPAT */
H5_DLL herr_t H5Pset_sieve_buf_size(hid_t fapl_id, size_t size);
H5_DLL herr_t H5Pget_sieve_buf_size(hid_t fapl_id, size_t *size/*out*/);
#endif /* H5_WANT_H5_V1_4_COMPAT */
H5_DLL herr_t H5Pset_hyper_vector_size(hid_t fapl_id, size_t size);
H5_DLL herr_t H5Pget_hyper_vector_size(hid_t fapl_id, size_t *size/*out*/);
H5_DLL herr_t H5Pset_small_data_block_size(hid_t fapl_id, hsize_t size);
H5_DLL herr_t H5Pget_small_data_block_size(hid_t fapl_id, hsize_t *size/*out*/);
H5_DLL herr_t H5Premove_filter(hid_t plist_id, H5Z_filter_t filter);
#ifdef __cplusplus
}
#endif
#endif

85
libs/cygwin/include/H5Rpublic.h Executable file
View File

@ -0,0 +1,85 @@
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* Copyright by the Board of Trustees of the University of Illinois. *
* All rights reserved. *
* *
* This file is part of HDF5. The full HDF5 copyright notice, including *
* terms governing use, modification, and redistribution, is contained in *
* the files COPYING and Copyright.html. COPYING can be found at the root *
* of the source code distribution tree; Copyright.html can be found at the *
* root level of an installed copy of the electronic HDF5 document set and *
* is linked from the top-level documents page. It can also be found at *
* http://hdf.ncsa.uiuc.edu/HDF5/doc/Copyright.html. If you do not have *
* access to either file, you may request a copy from hdfhelp@ncsa.uiuc.edu. *
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
/*
* This file contains public declarations for the H5S module.
*/
#ifndef _H5Rpublic_H
#define _H5Rpublic_H
/* Public headers needed by this file */
#include "H5public.h"
#include "H5Gpublic.h"
#include "H5Ipublic.h"
/*
* Reference types allowed.
*/
typedef enum {
H5R_BADTYPE = (-1), /*invalid Reference Type */
H5R_OBJECT, /*Object reference */
H5R_DATASET_REGION, /*Dataset Region Reference */
H5R_INTERNAL, /*Internal Reference */
H5R_MAXTYPE /*highest type (Invalid as true type) */
} H5R_type_t;
#ifdef LATER
/* Generic reference structure for user's code */
typedef struct {
unsigned long oid[2]; /* OID of object referenced */
unsigned long region[2]; /* heap ID of region in object */
unsigned long file[2]; /* heap ID of external filename */
} href_t;
#endif /* LATER */
/* Note! Be careful with the sizes of the references because they should really
* depend on the run-time values in the file. Unfortunately, the arrays need
* to be defined at compile-time, so we have to go with the worst case sizes for
* them. -QAK
*/
#define H5R_OBJ_REF_BUF_SIZE sizeof(haddr_t)
typedef haddr_t hobj_ref_t; /* Buffer to store OID of object referenced */
/* Needs to be large enough to store largest haddr_t in a worst case machine (ie. 8 bytes currently) */
#define H5R_DSET_REG_REF_BUF_SIZE (sizeof(haddr_t)+4)
/* 4 is used instead of sizeof(int) to permit portability between
the Crays and other machines (the heap ID is always encoded as an int32 anyway)
*/
/* Dataset Region reference structure for user's code */
typedef unsigned char hdset_reg_ref_t[H5R_DSET_REG_REF_BUF_SIZE];/* Buffer to store heap ID and index */
/* Needs to be large enough to store largest haddr_t in a worst case machine (ie. 8 bytes currently) plus an int */
/* Publicly visible datastructures */
#ifdef __cplusplus
extern "C" {
#endif
/* Functions in H5R.c */
H5_DLL herr_t H5Rcreate(void *ref, hid_t loc_id, const char *name,
H5R_type_t ref_type, hid_t space_id);
H5_DLL hid_t H5Rdereference(hid_t dataset, H5R_type_t ref_type, void *ref);
H5_DLL hid_t H5Rget_region(hid_t dataset, H5R_type_t ref_type, void *ref);
#ifdef H5_WANT_H5_V1_4_COMPAT
H5_DLL int H5Rget_object_type(hid_t dataset, void *_ref);
H5_DLL int H5Rget_obj_type(hid_t id, H5R_type_t ref_type, void *_ref);
#else /* H5_WANT_H5_V1_4_COMPAT */
H5_DLL H5G_obj_t H5Rget_obj_type(hid_t id, H5R_type_t ref_type, void *_ref);
#endif /* H5_WANT_H5_V1_4_COMPAT */
#ifdef __cplusplus
}
#endif
#endif /* _H5Rpublic_H */

149
libs/cygwin/include/H5Spublic.h Executable file
View File

@ -0,0 +1,149 @@
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* Copyright by the Board of Trustees of the University of Illinois. *
* All rights reserved. *
* *
* This file is part of HDF5. The full HDF5 copyright notice, including *
* terms governing use, modification, and redistribution, is contained in *
* the files COPYING and Copyright.html. COPYING can be found at the root *
* of the source code distribution tree; Copyright.html can be found at the *
* root level of an installed copy of the electronic HDF5 document set and *
* is linked from the top-level documents page. It can also be found at *
* http://hdf.ncsa.uiuc.edu/HDF5/doc/Copyright.html. If you do not have *
* access to either file, you may request a copy from hdfhelp@ncsa.uiuc.edu. *
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
/*
* This file contains public declarations for the H5S module.
*/
#ifndef _H5Spublic_H
#define _H5Spublic_H
/* Public headers needed by this file */
#include "H5public.h"
#include "H5Ipublic.h"
/* Define atomic datatypes */
#define H5S_ALL 0
#define H5S_UNLIMITED ((hsize_t)(hssize_t)(-1))
/* Define user-level maximum number of dimensions */
#define H5S_MAX_RANK 32
/* Different types of dataspaces */
typedef enum H5S_class_t {
H5S_NO_CLASS = -1, /*error */
H5S_SCALAR = 0, /*scalar variable */
H5S_SIMPLE = 1, /*simple data space */
H5S_COMPLEX = 2 /*complex data space */
} H5S_class_t;
/* Different ways of combining selections */
typedef enum H5S_seloper_t {
H5S_SELECT_NOOP = -1, /* error */
H5S_SELECT_SET = 0, /* Select "set" operation */
H5S_SELECT_OR, /* Binary "or" operation for hyperslabs
* (add new selection to existing selection)
* Original region: AAAAAAAAAA
* New region: BBBBBBBBBB
* A or B: CCCCCCCCCCCCCCCC
*/
H5S_SELECT_AND, /* Binary "and" operation for hyperslabs
* (only leave overlapped regions in selection)
* Original region: AAAAAAAAAA
* New region: BBBBBBBBBB
* A and B: CCCC
*/
H5S_SELECT_XOR, /* Binary "xor" operation for hyperslabs
* (only leave non-overlapped regions in selection)
* Original region: AAAAAAAAAA
* New region: BBBBBBBBBB
* A xor B: CCCCCC CCCCCC
*/
H5S_SELECT_NOTB, /* Binary "not" operation for hyperslabs
* (only leave non-overlapped regions in original selection)
* Original region: AAAAAAAAAA
* New region: BBBBBBBBBB
* A not B: CCCCCC
*/
H5S_SELECT_NOTA, /* Binary "not" operation for hyperslabs
* (only leave non-overlapped regions in new selection)
* Original region: AAAAAAAAAA
* New region: BBBBBBBBBB
* B not A: CCCCCC
*/
H5S_SELECT_APPEND, /* Append elements to end of point selection */
H5S_SELECT_PREPEND, /* Prepend elements to beginning of point selection */
H5S_SELECT_INVALID /* Invalid upper bound on selection operations */
} H5S_seloper_t;
/* Enumerated type for the type of selection */
typedef enum {
H5S_SEL_ERROR = -1, /* Error */
H5S_SEL_NONE = 0, /* Nothing selected */
H5S_SEL_POINTS = 1, /* Sequence of points selected */
H5S_SEL_HYPERSLABS = 2, /* "New-style" hyperslab selection defined */
H5S_SEL_ALL = 3, /* Entire extent selected */
H5S_SEL_N = 4 /*THIS MUST BE LAST */
}H5S_sel_type;
#ifdef __cplusplus
extern "C" {
#endif
/* Functions in H5S.c */
H5_DLL hid_t H5Screate(H5S_class_t type);
H5_DLL hid_t H5Screate_simple(int rank, const hsize_t dims[],
const hsize_t maxdims[]);
H5_DLL herr_t H5Sset_extent_simple(hid_t space_id, int rank,
const hsize_t dims[],
const hsize_t max[]);
H5_DLL hid_t H5Scopy(hid_t space_id);
H5_DLL herr_t H5Sclose(hid_t space_id);
H5_DLL hssize_t H5Sget_simple_extent_npoints(hid_t space_id);
H5_DLL int H5Sget_simple_extent_ndims(hid_t space_id);
H5_DLL int H5Sget_simple_extent_dims(hid_t space_id, hsize_t dims[],
hsize_t maxdims[]);
H5_DLL htri_t H5Sis_simple(hid_t space_id);
H5_DLL herr_t H5Sset_space(hid_t space_id, int rank, const hsize_t *dims);
H5_DLL hssize_t H5Sget_select_npoints(hid_t spaceid);
H5_DLL herr_t H5Sselect_hyperslab(hid_t space_id, H5S_seloper_t op,
const hssize_t start[],
const hsize_t _stride[],
const hsize_t count[],
const hsize_t _block[]);
#ifdef NEW_HYPERSLAB_API
H5_DLL hid_t H5Scombine_hyperslab(hid_t space_id, H5S_seloper_t op,
const hssize_t start[],
const hsize_t _stride[],
const hsize_t count[],
const hsize_t _block[]);
H5_DLL herr_t H5Sselect_select(hid_t space1_id, H5S_seloper_t op,
hid_t space2_id);
H5_DLL hid_t H5Scombine_select(hid_t space1_id, H5S_seloper_t op,
hid_t space2_id);
#endif /* NEW_HYPERSLAB_API */
H5_DLL herr_t H5Sselect_elements(hid_t space_id, H5S_seloper_t op,
size_t num_elemn,
const hssize_t **coord);
H5_DLL H5S_class_t H5Sget_simple_extent_type(hid_t space_id);
H5_DLL herr_t H5Sset_extent_none(hid_t space_id);
H5_DLL herr_t H5Sextent_copy(hid_t dst_id,hid_t src_id);
H5_DLL herr_t H5Sselect_all(hid_t spaceid);
H5_DLL herr_t H5Sselect_none(hid_t spaceid);
H5_DLL herr_t H5Soffset_simple(hid_t space_id, const hssize_t *offset);
H5_DLL htri_t H5Sselect_valid(hid_t spaceid);
H5_DLL hssize_t H5Sget_select_hyper_nblocks(hid_t spaceid);
H5_DLL hssize_t H5Sget_select_elem_npoints(hid_t spaceid);
H5_DLL herr_t H5Sget_select_hyper_blocklist(hid_t spaceid, hsize_t startblock, hsize_t numblocks, hsize_t *buf);
H5_DLL herr_t H5Sget_select_elem_pointlist(hid_t spaceid, hsize_t startpoint, hsize_t numpoints, hsize_t *buf);
#ifdef H5_WANT_H5_V1_4_COMPAT
H5_DLL herr_t H5Sget_select_bounds(hid_t spaceid, hsize_t *start, hsize_t *end);
#else /* H5_WANT_H5_V1_4_COMPAT */
H5_DLL herr_t H5Sget_select_bounds(hid_t spaceid, hssize_t *start, hssize_t *end);
#endif /* H5_WANT_H5_V1_4_COMPAT */
H5_DLL H5S_sel_type H5Sget_select_type(hid_t spaceid);
#ifdef __cplusplus
}
#endif
#endif

566
libs/cygwin/include/H5Tpublic.h Executable file
View File

@ -0,0 +1,566 @@
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* Copyright by the Board of Trustees of the University of Illinois. *
* All rights reserved. *
* *
* This file is part of HDF5. The full HDF5 copyright notice, including *
* terms governing use, modification, and redistribution, is contained in *
* the files COPYING and Copyright.html. COPYING can be found at the root *
* of the source code distribution tree; Copyright.html can be found at the *
* root level of an installed copy of the electronic HDF5 document set and *
* is linked from the top-level documents page. It can also be found at *
* http://hdf.ncsa.uiuc.edu/HDF5/doc/Copyright.html. If you do not have *
* access to either file, you may request a copy from hdfhelp@ncsa.uiuc.edu. *
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
/*
* This file contains public declarations for the H5T module.
*/
#ifndef _H5Tpublic_H
#define _H5Tpublic_H
/* Public headers needed by this file */
#include "H5public.h"
#include "H5Ipublic.h"
#define HOFFSET(S,M) (offsetof(S,M))
/* These are the various classes of data types */
/* If this goes over 16 types (0-15), the file format will need to change) */
typedef enum H5T_class_t {
H5T_NO_CLASS = -1, /*error */
H5T_INTEGER = 0, /*integer types */
H5T_FLOAT = 1, /*floating-point types */
H5T_TIME = 2, /*date and time types */
H5T_STRING = 3, /*character string types */
H5T_BITFIELD = 4, /*bit field types */
H5T_OPAQUE = 5, /*opaque types */
H5T_COMPOUND = 6, /*compound types */
H5T_REFERENCE = 7, /*reference types */
H5T_ENUM = 8, /*enumeration types */
H5T_VLEN = 9, /*Variable-Length types */
H5T_ARRAY = 10, /*Array types */
H5T_NCLASSES /*this must be last */
} H5T_class_t;
/* Byte orders */
typedef enum H5T_order_t {
H5T_ORDER_ERROR = -1, /*error */
H5T_ORDER_LE = 0, /*little endian */
H5T_ORDER_BE = 1, /*bit endian */
H5T_ORDER_VAX = 2, /*VAX mixed endian */
H5T_ORDER_NONE = 3 /*no particular order (strings, bits,..) */
/*H5T_ORDER_NONE must be last */
} H5T_order_t;
/* Types of integer sign schemes */
typedef enum H5T_sign_t {
H5T_SGN_ERROR = -1, /*error */
H5T_SGN_NONE = 0, /*this is an unsigned type */
H5T_SGN_2 = 1, /*two's complement */
H5T_NSGN = 2 /*this must be last! */
} H5T_sign_t;
/* Floating-point normalization schemes */
typedef enum H5T_norm_t {
H5T_NORM_ERROR = -1, /*error */
H5T_NORM_IMPLIED = 0, /*msb of mantissa isn't stored, always 1 */
H5T_NORM_MSBSET = 1, /*msb of mantissa is always 1 */
H5T_NORM_NONE = 2 /*not normalized */
/*H5T_NORM_NONE must be last */
} H5T_norm_t;
/*
* Character set to use for text strings. Do not change these values since
* they appear in HDF5 files!
*/
typedef enum H5T_cset_t {
H5T_CSET_ERROR = -1, /*error */
H5T_CSET_ASCII = 0, /*US ASCII */
H5T_CSET_RESERVED_1 = 1, /*reserved for later use */
H5T_CSET_RESERVED_2 = 2, /*reserved for later use */
H5T_CSET_RESERVED_3 = 3, /*reserved for later use */
H5T_CSET_RESERVED_4 = 4, /*reserved for later use */
H5T_CSET_RESERVED_5 = 5, /*reserved for later use */
H5T_CSET_RESERVED_6 = 6, /*reserved for later use */
H5T_CSET_RESERVED_7 = 7, /*reserved for later use */
H5T_CSET_RESERVED_8 = 8, /*reserved for later use */
H5T_CSET_RESERVED_9 = 9, /*reserved for later use */
H5T_CSET_RESERVED_10 = 10, /*reserved for later use */
H5T_CSET_RESERVED_11 = 11, /*reserved for later use */
H5T_CSET_RESERVED_12 = 12, /*reserved for later use */
H5T_CSET_RESERVED_13 = 13, /*reserved for later use */
H5T_CSET_RESERVED_14 = 14, /*reserved for later use */
H5T_CSET_RESERVED_15 = 15 /*reserved for later use */
} H5T_cset_t;
#define H5T_NCSET 1 /*Number of character sets actually defined */
/*
* Type of padding to use in character strings. Do not change these values
* since they appear in HDF5 files!
*/
typedef enum H5T_str_t {
H5T_STR_ERROR = -1, /*error */
H5T_STR_NULLTERM = 0, /*null terminate like in C */
H5T_STR_NULLPAD = 1, /*pad with nulls */
H5T_STR_SPACEPAD = 2, /*pad with spaces like in Fortran */
H5T_STR_RESERVED_3 = 3, /*reserved for later use */
H5T_STR_RESERVED_4 = 4, /*reserved for later use */
H5T_STR_RESERVED_5 = 5, /*reserved for later use */
H5T_STR_RESERVED_6 = 6, /*reserved for later use */
H5T_STR_RESERVED_7 = 7, /*reserved for later use */
H5T_STR_RESERVED_8 = 8, /*reserved for later use */
H5T_STR_RESERVED_9 = 9, /*reserved for later use */
H5T_STR_RESERVED_10 = 10, /*reserved for later use */
H5T_STR_RESERVED_11 = 11, /*reserved for later use */
H5T_STR_RESERVED_12 = 12, /*reserved for later use */
H5T_STR_RESERVED_13 = 13, /*reserved for later use */
H5T_STR_RESERVED_14 = 14, /*reserved for later use */
H5T_STR_RESERVED_15 = 15 /*reserved for later use */
} H5T_str_t;
#define H5T_NSTR 3 /*num H5T_str_t types actually defined */
/* Type of padding to use in other atomic types */
typedef enum H5T_pad_t {
H5T_PAD_ERROR = -1, /*error */
H5T_PAD_ZERO = 0, /*always set to zero */
H5T_PAD_ONE = 1, /*always set to one */
H5T_PAD_BACKGROUND = 2, /*set to background value */
H5T_NPAD = 3 /*THIS MUST BE LAST */
} H5T_pad_t;
/* Commands sent to conversion functions */
typedef enum H5T_cmd_t {
H5T_CONV_INIT = 0, /*query and/or initialize private data */
H5T_CONV_CONV = 1, /*convert data from source to dest data type */
H5T_CONV_FREE = 2 /*function is being removed from path */
} H5T_cmd_t;
/* How is the `bkg' buffer used by the conversion function? */
typedef enum H5T_bkg_t {
H5T_BKG_NO = 0, /*background buffer is not needed, send NULL */
H5T_BKG_TEMP = 1, /*bkg buffer used as temp storage only */
H5T_BKG_YES = 2 /*init bkg buf with data before conversion */
} H5T_bkg_t;
/* Type conversion client data */
typedef struct H5T_cdata_t {
H5T_cmd_t command;/*what should the conversion function do? */
H5T_bkg_t need_bkg;/*is the background buffer needed? */
hbool_t recalc; /*recalculate private data */
void *priv; /*private data */
} H5T_cdata_t;
/* Conversion function persistence */
typedef enum H5T_pers_t {
H5T_PERS_DONTCARE = -1, /*wild card */
H5T_PERS_HARD = 0, /*hard conversion function */
H5T_PERS_SOFT = 1 /*soft conversion function */
} H5T_pers_t;
/* The order to retrieve atomic native datatype */
typedef enum H5T_direction_t {
H5T_DIR_DEFAULT = 0, /*default direction is inscendent */
H5T_DIR_ASCEND = 1, /*in inscendent order */
H5T_DIR_DESCEND = 2 /*in descendent order */
} H5T_direction_t;
/* Variable Length Datatype struct in memory */
/* (This is only used for VL sequences, not VL strings, which are stored in char *'s) */
typedef struct {
size_t len; /* Length of VL data (in base type units) */
void *p; /* Pointer to VL data */
} hvl_t;
/* Variable Length String information */
#define H5T_VARIABLE ((size_t)(-1)) /* Indicate that a string is variable length (null-terminated in C, instead of fixed length) */
#ifdef __cplusplus
extern "C" {
#endif
/* All data type conversion functions are... */
typedef herr_t (*H5T_conv_t) (hid_t src_id, hid_t dst_id, H5T_cdata_t *cdata,
size_t nelmts, size_t buf_stride, size_t bkg_stride, void *buf,
void *bkg, hid_t dset_xfer_plist);
/*
* If an error occurs during a data type conversion then the function
* registered with H5Tset_overflow() is called. It's arguments are the
* source and destination data types, a buffer which has the source value,
* and a buffer to receive an optional result for the overflow conversion.
* If the overflow handler chooses a value for the result it should return
* non-negative; otherwise the hdf5 library will choose an appropriate
* result.
*/
typedef herr_t (*H5T_overflow_t)(hid_t src_id, hid_t dst_id,
void *src_buf, void *dst_buf);
/* When this header is included from H5Tprivate.h, don't make calls to H5open() */
#undef H5OPEN
#ifndef _H5Tprivate_H
#define H5OPEN H5open(),
#else /* _H5Tprivate_H */
#define H5OPEN
#endif /* _H5Tprivate_H */
/*
* The IEEE floating point types in various byte orders.
*/
#define H5T_IEEE_F32BE (H5OPEN H5T_IEEE_F32BE_g)
#define H5T_IEEE_F32LE (H5OPEN H5T_IEEE_F32LE_g)
#define H5T_IEEE_F64BE (H5OPEN H5T_IEEE_F64BE_g)
#define H5T_IEEE_F64LE (H5OPEN H5T_IEEE_F64LE_g)
H5_DLLVAR hid_t H5T_IEEE_F32BE_g;
H5_DLLVAR hid_t H5T_IEEE_F32LE_g;
H5_DLLVAR hid_t H5T_IEEE_F64BE_g;
H5_DLLVAR hid_t H5T_IEEE_F64LE_g;
/*
* These are "standard" types. For instance, signed (2's complement) and
* unsigned integers of various sizes and byte orders.
*/
#define H5T_STD_I8BE (H5OPEN H5T_STD_I8BE_g)
#define H5T_STD_I8LE (H5OPEN H5T_STD_I8LE_g)
#define H5T_STD_I16BE (H5OPEN H5T_STD_I16BE_g)
#define H5T_STD_I16LE (H5OPEN H5T_STD_I16LE_g)
#define H5T_STD_I32BE (H5OPEN H5T_STD_I32BE_g)
#define H5T_STD_I32LE (H5OPEN H5T_STD_I32LE_g)
#define H5T_STD_I64BE (H5OPEN H5T_STD_I64BE_g)
#define H5T_STD_I64LE (H5OPEN H5T_STD_I64LE_g)
#define H5T_STD_U8BE (H5OPEN H5T_STD_U8BE_g)
#define H5T_STD_U8LE (H5OPEN H5T_STD_U8LE_g)
#define H5T_STD_U16BE (H5OPEN H5T_STD_U16BE_g)
#define H5T_STD_U16LE (H5OPEN H5T_STD_U16LE_g)
#define H5T_STD_U32BE (H5OPEN H5T_STD_U32BE_g)
#define H5T_STD_U32LE (H5OPEN H5T_STD_U32LE_g)
#define H5T_STD_U64BE (H5OPEN H5T_STD_U64BE_g)
#define H5T_STD_U64LE (H5OPEN H5T_STD_U64LE_g)
#define H5T_STD_B8BE (H5OPEN H5T_STD_B8BE_g)
#define H5T_STD_B8LE (H5OPEN H5T_STD_B8LE_g)
#define H5T_STD_B16BE (H5OPEN H5T_STD_B16BE_g)
#define H5T_STD_B16LE (H5OPEN H5T_STD_B16LE_g)
#define H5T_STD_B32BE (H5OPEN H5T_STD_B32BE_g)
#define H5T_STD_B32LE (H5OPEN H5T_STD_B32LE_g)
#define H5T_STD_B64BE (H5OPEN H5T_STD_B64BE_g)
#define H5T_STD_B64LE (H5OPEN H5T_STD_B64LE_g)
#define H5T_STD_REF_OBJ (H5OPEN H5T_STD_REF_OBJ_g)
#define H5T_STD_REF_DSETREG (H5OPEN H5T_STD_REF_DSETREG_g)
H5_DLLVAR hid_t H5T_STD_I8BE_g;
H5_DLLVAR hid_t H5T_STD_I8LE_g;
H5_DLLVAR hid_t H5T_STD_I16BE_g;
H5_DLLVAR hid_t H5T_STD_I16LE_g;
H5_DLLVAR hid_t H5T_STD_I32BE_g;
H5_DLLVAR hid_t H5T_STD_I32LE_g;
H5_DLLVAR hid_t H5T_STD_I64BE_g;
H5_DLLVAR hid_t H5T_STD_I64LE_g;
H5_DLLVAR hid_t H5T_STD_U8BE_g;
H5_DLLVAR hid_t H5T_STD_U8LE_g;
H5_DLLVAR hid_t H5T_STD_U16BE_g;
H5_DLLVAR hid_t H5T_STD_U16LE_g;
H5_DLLVAR hid_t H5T_STD_U32BE_g;
H5_DLLVAR hid_t H5T_STD_U32LE_g;
H5_DLLVAR hid_t H5T_STD_U64BE_g;
H5_DLLVAR hid_t H5T_STD_U64LE_g;
H5_DLLVAR hid_t H5T_STD_B8BE_g;
H5_DLLVAR hid_t H5T_STD_B8LE_g;
H5_DLLVAR hid_t H5T_STD_B16BE_g;
H5_DLLVAR hid_t H5T_STD_B16LE_g;
H5_DLLVAR hid_t H5T_STD_B32BE_g;
H5_DLLVAR hid_t H5T_STD_B32LE_g;
H5_DLLVAR hid_t H5T_STD_B64BE_g;
H5_DLLVAR hid_t H5T_STD_B64LE_g;
H5_DLLVAR hid_t H5T_STD_REF_OBJ_g;
H5_DLLVAR hid_t H5T_STD_REF_DSETREG_g;
/*
* Types which are particular to Unix.
*/
#define H5T_UNIX_D32BE (H5OPEN H5T_UNIX_D32BE_g)
#define H5T_UNIX_D32LE (H5OPEN H5T_UNIX_D32LE_g)
#define H5T_UNIX_D64BE (H5OPEN H5T_UNIX_D64BE_g)
#define H5T_UNIX_D64LE (H5OPEN H5T_UNIX_D64LE_g)
H5_DLLVAR hid_t H5T_UNIX_D32BE_g;
H5_DLLVAR hid_t H5T_UNIX_D32LE_g;
H5_DLLVAR hid_t H5T_UNIX_D64BE_g;
H5_DLLVAR hid_t H5T_UNIX_D64LE_g;
/*
* Types particular to the C language. String types use `bytes' instead
* of `bits' as their size.
*/
#define H5T_C_S1 (H5OPEN H5T_C_S1_g)
H5_DLLVAR hid_t H5T_C_S1_g;
/*
* Types particular to Fortran.
*/
#define H5T_FORTRAN_S1 (H5OPEN H5T_FORTRAN_S1_g)
H5_DLLVAR hid_t H5T_FORTRAN_S1_g;
/*
* These types are for Intel CPU's. They are little endian with IEEE
* floating point.
*/
#define H5T_INTEL_I8 H5T_STD_I8LE
#define H5T_INTEL_I16 H5T_STD_I16LE
#define H5T_INTEL_I32 H5T_STD_I32LE
#define H5T_INTEL_I64 H5T_STD_I64LE
#define H5T_INTEL_U8 H5T_STD_U8LE
#define H5T_INTEL_U16 H5T_STD_U16LE
#define H5T_INTEL_U32 H5T_STD_U32LE
#define H5T_INTEL_U64 H5T_STD_U64LE
#define H5T_INTEL_B8 H5T_STD_B8LE
#define H5T_INTEL_B16 H5T_STD_B16LE
#define H5T_INTEL_B32 H5T_STD_B32LE
#define H5T_INTEL_B64 H5T_STD_B64LE
#define H5T_INTEL_F32 H5T_IEEE_F32LE
#define H5T_INTEL_F64 H5T_IEEE_F64LE
/*
* These types are for DEC Alpha CPU's. They are little endian with IEEE
* floating point.
*/
#define H5T_ALPHA_I8 H5T_STD_I8LE
#define H5T_ALPHA_I16 H5T_STD_I16LE
#define H5T_ALPHA_I32 H5T_STD_I32LE
#define H5T_ALPHA_I64 H5T_STD_I64LE
#define H5T_ALPHA_U8 H5T_STD_U8LE
#define H5T_ALPHA_U16 H5T_STD_U16LE
#define H5T_ALPHA_U32 H5T_STD_U32LE
#define H5T_ALPHA_U64 H5T_STD_U64LE
#define H5T_ALPHA_B8 H5T_STD_B8LE
#define H5T_ALPHA_B16 H5T_STD_B16LE
#define H5T_ALPHA_B32 H5T_STD_B32LE
#define H5T_ALPHA_B64 H5T_STD_B64LE
#define H5T_ALPHA_F32 H5T_IEEE_F32LE
#define H5T_ALPHA_F64 H5T_IEEE_F64LE
/*
* These types are for MIPS cpu's commonly used in SGI systems. They are big
* endian with IEEE floating point.
*/
#define H5T_MIPS_I8 H5T_STD_I8BE
#define H5T_MIPS_I16 H5T_STD_I16BE
#define H5T_MIPS_I32 H5T_STD_I32BE
#define H5T_MIPS_I64 H5T_STD_I64BE
#define H5T_MIPS_U8 H5T_STD_U8BE
#define H5T_MIPS_U16 H5T_STD_U16BE
#define H5T_MIPS_U32 H5T_STD_U32BE
#define H5T_MIPS_U64 H5T_STD_U64BE
#define H5T_MIPS_B8 H5T_STD_B8BE
#define H5T_MIPS_B16 H5T_STD_B16BE
#define H5T_MIPS_B32 H5T_STD_B32BE
#define H5T_MIPS_B64 H5T_STD_B64BE
#define H5T_MIPS_F32 H5T_IEEE_F32BE
#define H5T_MIPS_F64 H5T_IEEE_F64BE
/*
* The predefined native types. These are the types detected by H5detect and
* they violate the naming scheme a little. Instead of a class name,
* precision and byte order as the last component, they have a C-like type
* name. If the type begins with `U' then it is the unsigned version of the
* integer type; other integer types are signed. The type LLONG corresponds
* to C's `long_long' and LDOUBLE is `long double' (these types might be the
* same as `LONG' and `DOUBLE' respectively.
*/
#define H5T_NATIVE_CHAR (CHAR_MIN?H5T_NATIVE_SCHAR:H5T_NATIVE_UCHAR)
#define H5T_NATIVE_SCHAR (H5OPEN H5T_NATIVE_SCHAR_g)
#define H5T_NATIVE_UCHAR (H5OPEN H5T_NATIVE_UCHAR_g)
#define H5T_NATIVE_SHORT (H5OPEN H5T_NATIVE_SHORT_g)
#define H5T_NATIVE_USHORT (H5OPEN H5T_NATIVE_USHORT_g)
#define H5T_NATIVE_INT (H5OPEN H5T_NATIVE_INT_g)
#define H5T_NATIVE_UINT (H5OPEN H5T_NATIVE_UINT_g)
#define H5T_NATIVE_LONG (H5OPEN H5T_NATIVE_LONG_g)
#define H5T_NATIVE_ULONG (H5OPEN H5T_NATIVE_ULONG_g)
#define H5T_NATIVE_LLONG (H5OPEN H5T_NATIVE_LLONG_g)
#define H5T_NATIVE_ULLONG (H5OPEN H5T_NATIVE_ULLONG_g)
#define H5T_NATIVE_FLOAT (H5OPEN H5T_NATIVE_FLOAT_g)
#define H5T_NATIVE_DOUBLE (H5OPEN H5T_NATIVE_DOUBLE_g)
#define H5T_NATIVE_LDOUBLE (H5OPEN H5T_NATIVE_LDOUBLE_g)
#define H5T_NATIVE_B8 (H5OPEN H5T_NATIVE_B8_g)
#define H5T_NATIVE_B16 (H5OPEN H5T_NATIVE_B16_g)
#define H5T_NATIVE_B32 (H5OPEN H5T_NATIVE_B32_g)
#define H5T_NATIVE_B64 (H5OPEN H5T_NATIVE_B64_g)
#define H5T_NATIVE_OPAQUE (H5OPEN H5T_NATIVE_OPAQUE_g)
#define H5T_NATIVE_HADDR (H5OPEN H5T_NATIVE_HADDR_g)
#define H5T_NATIVE_HSIZE (H5OPEN H5T_NATIVE_HSIZE_g)
#define H5T_NATIVE_HSSIZE (H5OPEN H5T_NATIVE_HSSIZE_g)
#define H5T_NATIVE_HERR (H5OPEN H5T_NATIVE_HERR_g)
#define H5T_NATIVE_HBOOL (H5OPEN H5T_NATIVE_HBOOL_g)
H5_DLLVAR hid_t H5T_NATIVE_SCHAR_g;
H5_DLLVAR hid_t H5T_NATIVE_UCHAR_g;
H5_DLLVAR hid_t H5T_NATIVE_SHORT_g;
H5_DLLVAR hid_t H5T_NATIVE_USHORT_g;
H5_DLLVAR hid_t H5T_NATIVE_INT_g;
H5_DLLVAR hid_t H5T_NATIVE_UINT_g;
H5_DLLVAR hid_t H5T_NATIVE_LONG_g;
H5_DLLVAR hid_t H5T_NATIVE_ULONG_g;
H5_DLLVAR hid_t H5T_NATIVE_LLONG_g;
H5_DLLVAR hid_t H5T_NATIVE_ULLONG_g;
H5_DLLVAR hid_t H5T_NATIVE_FLOAT_g;
H5_DLLVAR hid_t H5T_NATIVE_DOUBLE_g;
H5_DLLVAR hid_t H5T_NATIVE_LDOUBLE_g;
H5_DLLVAR hid_t H5T_NATIVE_B8_g;
H5_DLLVAR hid_t H5T_NATIVE_B16_g;
H5_DLLVAR hid_t H5T_NATIVE_B32_g;
H5_DLLVAR hid_t H5T_NATIVE_B64_g;
H5_DLLVAR hid_t H5T_NATIVE_OPAQUE_g;
H5_DLLVAR hid_t H5T_NATIVE_HADDR_g;
H5_DLLVAR hid_t H5T_NATIVE_HSIZE_g;
H5_DLLVAR hid_t H5T_NATIVE_HSSIZE_g;
H5_DLLVAR hid_t H5T_NATIVE_HERR_g;
H5_DLLVAR hid_t H5T_NATIVE_HBOOL_g;
/* C9x integer types */
#define H5T_NATIVE_INT8 (H5OPEN H5T_NATIVE_INT8_g)
#define H5T_NATIVE_UINT8 (H5OPEN H5T_NATIVE_UINT8_g)
#define H5T_NATIVE_INT_LEAST8 (H5OPEN H5T_NATIVE_INT_LEAST8_g)
#define H5T_NATIVE_UINT_LEAST8 (H5OPEN H5T_NATIVE_UINT_LEAST8_g)
#define H5T_NATIVE_INT_FAST8 (H5OPEN H5T_NATIVE_INT_FAST8_g)
#define H5T_NATIVE_UINT_FAST8 (H5OPEN H5T_NATIVE_UINT_FAST8_g)
H5_DLLVAR hid_t H5T_NATIVE_INT8_g;
H5_DLLVAR hid_t H5T_NATIVE_UINT8_g;
H5_DLLVAR hid_t H5T_NATIVE_INT_LEAST8_g;
H5_DLLVAR hid_t H5T_NATIVE_UINT_LEAST8_g;
H5_DLLVAR hid_t H5T_NATIVE_INT_FAST8_g;
H5_DLLVAR hid_t H5T_NATIVE_UINT_FAST8_g;
#define H5T_NATIVE_INT16 (H5OPEN H5T_NATIVE_INT16_g)
#define H5T_NATIVE_UINT16 (H5OPEN H5T_NATIVE_UINT16_g)
#define H5T_NATIVE_INT_LEAST16 (H5OPEN H5T_NATIVE_INT_LEAST16_g)
#define H5T_NATIVE_UINT_LEAST16 (H5OPEN H5T_NATIVE_UINT_LEAST16_g)
#define H5T_NATIVE_INT_FAST16 (H5OPEN H5T_NATIVE_INT_FAST16_g)
#define H5T_NATIVE_UINT_FAST16 (H5OPEN H5T_NATIVE_UINT_FAST16_g)
H5_DLLVAR hid_t H5T_NATIVE_INT16_g;
H5_DLLVAR hid_t H5T_NATIVE_UINT16_g;
H5_DLLVAR hid_t H5T_NATIVE_INT_LEAST16_g;
H5_DLLVAR hid_t H5T_NATIVE_UINT_LEAST16_g;
H5_DLLVAR hid_t H5T_NATIVE_INT_FAST16_g;
H5_DLLVAR hid_t H5T_NATIVE_UINT_FAST16_g;
#define H5T_NATIVE_INT32 (H5OPEN H5T_NATIVE_INT32_g)
#define H5T_NATIVE_UINT32 (H5OPEN H5T_NATIVE_UINT32_g)
#define H5T_NATIVE_INT_LEAST32 (H5OPEN H5T_NATIVE_INT_LEAST32_g)
#define H5T_NATIVE_UINT_LEAST32 (H5OPEN H5T_NATIVE_UINT_LEAST32_g)
#define H5T_NATIVE_INT_FAST32 (H5OPEN H5T_NATIVE_INT_FAST32_g)
#define H5T_NATIVE_UINT_FAST32 (H5OPEN H5T_NATIVE_UINT_FAST32_g)
H5_DLLVAR hid_t H5T_NATIVE_INT32_g;
H5_DLLVAR hid_t H5T_NATIVE_UINT32_g;
H5_DLLVAR hid_t H5T_NATIVE_INT_LEAST32_g;
H5_DLLVAR hid_t H5T_NATIVE_UINT_LEAST32_g;
H5_DLLVAR hid_t H5T_NATIVE_INT_FAST32_g;
H5_DLLVAR hid_t H5T_NATIVE_UINT_FAST32_g;
#define H5T_NATIVE_INT64 (H5OPEN H5T_NATIVE_INT64_g)
#define H5T_NATIVE_UINT64 (H5OPEN H5T_NATIVE_UINT64_g)
#define H5T_NATIVE_INT_LEAST64 (H5OPEN H5T_NATIVE_INT_LEAST64_g)
#define H5T_NATIVE_UINT_LEAST64 (H5OPEN H5T_NATIVE_UINT_LEAST64_g)
#define H5T_NATIVE_INT_FAST64 (H5OPEN H5T_NATIVE_INT_FAST64_g)
#define H5T_NATIVE_UINT_FAST64 (H5OPEN H5T_NATIVE_UINT_FAST64_g)
H5_DLLVAR hid_t H5T_NATIVE_INT64_g;
H5_DLLVAR hid_t H5T_NATIVE_UINT64_g;
H5_DLLVAR hid_t H5T_NATIVE_INT_LEAST64_g;
H5_DLLVAR hid_t H5T_NATIVE_UINT_LEAST64_g;
H5_DLLVAR hid_t H5T_NATIVE_INT_FAST64_g;
H5_DLLVAR hid_t H5T_NATIVE_UINT_FAST64_g;
/* Operations defined on all data types */
H5_DLL hid_t H5Topen(hid_t loc_id, const char *name);
H5_DLL hid_t H5Tcreate(H5T_class_t type, size_t size);
H5_DLL hid_t H5Tcopy(hid_t type_id);
H5_DLL herr_t H5Tclose(hid_t type_id);
H5_DLL htri_t H5Tequal(hid_t type1_id, hid_t type2_id);
H5_DLL herr_t H5Tlock(hid_t type_id);
H5_DLL herr_t H5Tcommit(hid_t loc_id, const char *name, hid_t type_id);
H5_DLL htri_t H5Tcommitted(hid_t type_id);
/* Operations defined on compound data types */
H5_DLL herr_t H5Tinsert(hid_t parent_id, const char *name, size_t offset,
hid_t member_id);
H5_DLL herr_t H5Tpack(hid_t type_id);
/* Operations defined on enumeration data types */
H5_DLL hid_t H5Tenum_create(hid_t base_id);
H5_DLL herr_t H5Tenum_insert(hid_t type, const char *name, void *value);
H5_DLL herr_t H5Tenum_nameof(hid_t type, void *value, char *name/*out*/,
size_t size);
H5_DLL herr_t H5Tenum_valueof(hid_t type, const char *name,
void *value/*out*/);
/* Operations defined on variable-length data types */
H5_DLL hid_t H5Tvlen_create(hid_t base_id);
/* Operations defined on array data types */
H5_DLL hid_t H5Tarray_create(hid_t base_id, int ndims,
const hsize_t dim[/* ndims */], const int perm[/* ndims */]);
H5_DLL int H5Tget_array_ndims(hid_t type_id);
H5_DLL int H5Tget_array_dims(hid_t type_id, hsize_t dims[], int perm[]);
/* Operations defined on opaque data types */
H5_DLL herr_t H5Tset_tag(hid_t type, const char *tag);
H5_DLL char *H5Tget_tag(hid_t type);
/* Querying property values */
H5_DLL hid_t H5Tget_super(hid_t type);
H5_DLL H5T_class_t H5Tget_class(hid_t type_id);
H5_DLL htri_t H5Tdetect_class(hid_t type_id, H5T_class_t cls);
H5_DLL size_t H5Tget_size(hid_t type_id);
H5_DLL H5T_order_t H5Tget_order(hid_t type_id);
H5_DLL size_t H5Tget_precision(hid_t type_id);
H5_DLL int H5Tget_offset(hid_t type_id);
H5_DLL herr_t H5Tget_pad(hid_t type_id, H5T_pad_t *lsb/*out*/,
H5T_pad_t *msb/*out*/);
H5_DLL H5T_sign_t H5Tget_sign(hid_t type_id);
H5_DLL herr_t H5Tget_fields(hid_t type_id, size_t *spos/*out*/,
size_t *epos/*out*/, size_t *esize/*out*/,
size_t *mpos/*out*/, size_t *msize/*out*/);
H5_DLL size_t H5Tget_ebias(hid_t type_id);
H5_DLL H5T_norm_t H5Tget_norm(hid_t type_id);
H5_DLL H5T_pad_t H5Tget_inpad(hid_t type_id);
H5_DLL H5T_str_t H5Tget_strpad(hid_t type_id);
H5_DLL int H5Tget_nmembers(hid_t type_id);
H5_DLL char *H5Tget_member_name(hid_t type_id, int membno);
H5_DLL int H5Tget_member_index(hid_t type_id, const char *name);
H5_DLL size_t H5Tget_member_offset(hid_t type_id, int membno);
H5_DLL H5T_class_t H5Tget_member_class(hid_t type_id, int membno);
H5_DLL hid_t H5Tget_member_type(hid_t type_id, int membno);
H5_DLL herr_t H5Tget_member_value(hid_t type_id, int membno,
void *value/*out*/);
H5_DLL H5T_cset_t H5Tget_cset(hid_t type_id);
H5_DLL htri_t H5Tis_variable_str(hid_t type_id);
H5_DLL hid_t H5Tget_native_type(hid_t type_id, H5T_direction_t direction);
/* Setting property values */
H5_DLL herr_t H5Tset_size(hid_t type_id, size_t size);
H5_DLL herr_t H5Tset_order(hid_t type_id, H5T_order_t order);
H5_DLL herr_t H5Tset_precision(hid_t type_id, size_t prec);
H5_DLL herr_t H5Tset_offset(hid_t type_id, size_t offset);
H5_DLL herr_t H5Tset_pad(hid_t type_id, H5T_pad_t lsb, H5T_pad_t msb);
H5_DLL herr_t H5Tset_sign(hid_t type_id, H5T_sign_t sign);
H5_DLL herr_t H5Tset_fields(hid_t type_id, size_t spos, size_t epos,
size_t esize, size_t mpos, size_t msize);
H5_DLL herr_t H5Tset_ebias(hid_t type_id, size_t ebias);
H5_DLL herr_t H5Tset_norm(hid_t type_id, H5T_norm_t norm);
H5_DLL herr_t H5Tset_inpad(hid_t type_id, H5T_pad_t pad);
H5_DLL herr_t H5Tset_cset(hid_t type_id, H5T_cset_t cset);
H5_DLL herr_t H5Tset_strpad(hid_t type_id, H5T_str_t strpad);
/* Type conversion database */
H5_DLL herr_t H5Tregister(H5T_pers_t pers, const char *name, hid_t src_id,
hid_t dst_id, H5T_conv_t func);
H5_DLL herr_t H5Tunregister(H5T_pers_t pers, const char *name, hid_t src_id,
hid_t dst_id, H5T_conv_t func);
H5_DLL H5T_conv_t H5Tfind(hid_t src_id, hid_t dst_id, H5T_cdata_t **pcdata);
H5_DLL herr_t H5Tconvert(hid_t src_id, hid_t dst_id, size_t nelmts,
void *buf, void *background, hid_t plist_id);
H5_DLL H5T_overflow_t H5Tget_overflow(void);
H5_DLL herr_t H5Tset_overflow(H5T_overflow_t func);
#ifdef __cplusplus
}
#endif
#endif

185
libs/cygwin/include/H5Zpublic.h Executable file
View File

@ -0,0 +1,185 @@
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* Copyright by the Board of Trustees of the University of Illinois. *
* All rights reserved. *
* *
* This file is part of HDF5. The full HDF5 copyright notice, including *
* terms governing use, modification, and redistribution, is contained in *
* the files COPYING and Copyright.html. COPYING can be found at the root *
* of the source code distribution tree; Copyright.html can be found at the *
* root level of an installed copy of the electronic HDF5 document set and *
* is linked from the top-level documents page. It can also be found at *
* http://hdf.ncsa.uiuc.edu/HDF5/doc/Copyright.html. If you do not have *
* access to either file, you may request a copy from hdfhelp@ncsa.uiuc.edu. *
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
/* Programmer: Robb Matzke <matzke@llnl.gov>
* Thursday, April 16, 1998
*/
#ifndef _H5Zpublic_H
#define _H5Zpublic_H
/*
* Filter identifiers. Values 0 through 255 are for filters defined by the
* HDF5 library. Values 256 through 511 are available for testing new
* filters. Subsequent values should be obtained from the HDF5 development
* team at hdf5dev@ncsa.uiuc.edu. These values will never change because they
* appear in the HDF5 files.
*/
typedef int H5Z_filter_t;
#define H5Z_FILTER_ERROR (-1) /*no filter */
#define H5Z_FILTER_NONE 0 /*reserved indefinitely */
#define H5Z_FILTER_ALL 0 /*symbol to remove all filters in H5Premove_filter */
#define H5Z_FILTER_DEFLATE 1 /*deflation like gzip */
#define H5Z_FILTER_SHUFFLE 2 /*shuffle the data */
#define H5Z_FILTER_FLETCHER32 3 /*fletcher32 checksum of EDC */
#define H5Z_FILTER_SZIP 4 /*szip compression */
#define H5Z_FILTER_RESERVED 256 /*filter ids below this value are reserved */
#define H5Z_FILTER_MAX 65535 /*maximum filter id */
#define H5Z_MAX_NFILTERS 32 /* Maximum number of filters allowed in a pipeline (should probably be allowed to be an unlimited amount) */
/* Flags for filter definition */
#define H5Z_FLAG_DEFMASK 0x00ff /*definition flag mask */
#define H5Z_FLAG_MANDATORY 0x0000 /*filter is mandatory */
#define H5Z_FLAG_OPTIONAL 0x0001 /*filter is optional */
/* Additional flags for filter invocation */
#define H5Z_FLAG_INVMASK 0xff00 /*invocation flag mask */
#define H5Z_FLAG_REVERSE 0x0100 /*reverse direction; read */
#define H5Z_FLAG_SKIP_EDC 0x0200 /*skip EDC filters for read */
/* Special parameters for szip compression */
/* [These are aliases for the similar definitions in szlib.h, which we can't
* include directly due to the duplication of various symbols with the zlib.h
* header file] */
#define H5_SZIP_ALLOW_K13_OPTION_MASK 1
#define H5_SZIP_CHIP_OPTION_MASK 2
#define H5_SZIP_EC_OPTION_MASK 4
#define H5_SZIP_NN_OPTION_MASK 32
#define H5_SZIP_MAX_PIXELS_PER_BLOCK 32
/* Values to decide if EDC is enabled for reading data */
typedef enum H5Z_EDC_t {
H5Z_ERROR_EDC = -1, /* error value */
H5Z_DISABLE_EDC = 0,
H5Z_ENABLE_EDC = 1,
H5Z_NO_EDC = 2 /* must be the last */
} H5Z_EDC_t;
/* Bit flags for H5Zget_filter_info */
#define H5Z_FILTER_CONFIG_ENCODE_ENABLED (0x0001)
#define H5Z_FILTER_CONFIG_DECODE_ENABLED (0x0002)
/* Return values for filter callback function */
typedef enum H5Z_cb_return_t {
H5Z_CB_ERROR = -1,
H5Z_CB_FAIL = 0, /* I/O should fail if filter fails. */
H5Z_CB_CONT = 1, /* I/O continues if filter fails. */
H5Z_CB_NO = 2
} H5Z_cb_return_t;
/* Filter callback function definition */
typedef H5Z_cb_return_t (*H5Z_filter_func_t)(H5Z_filter_t filter, void* buf,
size_t buf_size, void* op_data);
/* Structure for filter callback property */
typedef struct H5Z_cb_t {
H5Z_filter_func_t func;
void* op_data;
} H5Z_cb_t;
#ifdef __cplusplus
extern "C" {
#endif
/*
* Before a dataset gets created, the "can_apply" callbacks for any filters used
* in the dataset creation property list are called
* with the dataset's dataset creation property list, the dataset's datatype and
* a dataspace describing a chunk (for chunked dataset storage).
*
* The "can_apply" callback must determine if the combination of the dataset
* creation property list setting, the datatype and the dataspace represent a
* valid combination to apply this filter to. For example, some cases of
* invalid combinations may involve the filter not operating correctly on
* certain datatypes (or certain datatype sizes), or certain sizes of the chunk
* dataspace.
*
* The "can_apply" callback can be the NULL pointer, in which case, the library
* will assume that it can apply to any combination of dataset creation
* property list values, datatypes and dataspaces.
*
* The "can_apply" callback returns positive a valid combination, zero for an
* invalid combination and negative for an error.
*/
typedef herr_t (*H5Z_can_apply_func_t)(hid_t dcpl_id, hid_t type_id, hid_t space_id);
/*
* After the "can_apply" callbacks are checked for new datasets, the "set_local"
* callbacks for any filters used in the dataset creation property list are
* called. These callbacks receive the dataset's private copy of the dataset
* creation property list passed in to H5Dcreate (i.e. not the actual property
* list passed in to H5Dcreate) and the datatype ID passed in to H5Dcreate
* (which is not copied and should not be modified) and a dataspace describing
* the chunk (for chunked dataset storage) (which should also not be modified).
*
* The "set_local" callback must set any parameters that are specific to this
* dataset, based on the combination of the dataset creation property list
* values, the datatype and the dataspace. For example, some filters perform
* different actions based on different datatypes (or datatype sizes) or
* different number of dimensions or dataspace sizes.
*
* The "set_local" callback can be the NULL pointer, in which case, the library
* will assume that there are no dataset-specific settings for this filter.
*
* The "set_local" callback must return non-negative on success and negative
* for an error.
*/
typedef herr_t (*H5Z_set_local_func_t)(hid_t dcpl_id, hid_t type_id, hid_t space_id);
/*
* A filter gets definition flags and invocation flags (defined above), the
* client data array and size defined when the filter was added to the
* pipeline, the size in bytes of the data on which to operate, and pointers
* to a buffer and its allocated size.
*
* The filter should store the result in the supplied buffer if possible,
* otherwise it can allocate a new buffer, freeing the original. The
* allocated size of the new buffer should be returned through the BUF_SIZE
* pointer and the new buffer through the BUF pointer.
*
* The return value from the filter is the number of bytes in the output
* buffer. If an error occurs then the function should return zero and leave
* all pointer arguments unchanged.
*/
typedef size_t (*H5Z_func_t)(unsigned int flags, size_t cd_nelmts,
const unsigned int cd_values[], size_t nbytes,
size_t *buf_size, void **buf);
/*
* The filter table maps filter identification numbers to structs that
* contain a pointers to the filter function and timing statistics.
*/
typedef struct H5Z_class_t {
H5Z_filter_t id; /* Filter ID number */
const char *name; /* Comment for debugging */
H5Z_can_apply_func_t can_apply; /* The "can apply" callback for a filter */
H5Z_set_local_func_t set_local; /* The "set local" callback for a filter */
H5Z_func_t filter; /* The actual filter function */
} H5Z_class_t;
#ifdef H5_WANT_H5_V1_4_COMPAT
H5_DLL herr_t H5Zregister(H5Z_filter_t id, const char *comment,
H5Z_func_t filter);
#else /* H5_WANT_H5_V1_4_COMPAT */
H5_DLL herr_t H5Zregister(const H5Z_class_t *cls);
#endif /* H5_WANT_H5_V1_4_COMPAT */
H5_DLL herr_t H5Zunregister(H5Z_filter_t id);
H5_DLL htri_t H5Zfilter_avail(H5Z_filter_t id);
H5_DLL herr_t H5Zget_filter_info(H5Z_filter_t filter, unsigned int *filter_config_flags);
#ifdef __cplusplus
}
#endif
#endif

View File

@ -0,0 +1,66 @@
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* Copyright by the Board of Trustees of the University of Illinois. *
* All rights reserved. *
* *
* This file is part of HDF5. The full HDF5 copyright notice, including *
* terms governing use, modification, and redistribution, is contained in *
* the files COPYING and Copyright.html. COPYING can be found at the root *
* of the source code distribution tree; Copyright.html can be found at the *
* root level of an installed copy of the electronic HDF5 document set and *
* is linked from the top-level documents page. It can also be found at *
* http://hdf.ncsa.uiuc.edu/HDF5/doc/Copyright.html. If you do not have *
* access to either file, you may request a copy from hdfhelp@ncsa.uiuc.edu. *
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
/*
* H5api_adpt.h
* Used for the HDF5 dll project
* Created by Patrick Lu on 1/12/99
*/
#ifndef H5API_ADPT_H
#define H5API_ADPT_H
#if defined(WIN32)
#if defined(_HDF5DLL_)
#pragma warning(disable: 4273) /* Disable the dll linkage warnings */
#define H5_DLL __declspec(dllexport)
#define H5_DLLVAR __declspec(dllexport)
#elif defined(_HDF5USEDLL_)
#define H5_DLL __declspec(dllimport)
#define H5_DLLVAR __declspec(dllimport)
#else
#define H5_DLL
#define H5_DLLVAR extern
#endif /* _HDF5DLL_ */
#if defined(_HDF5TESTDLL_)
#pragma warning(disable: 4273) /* Disable the dll linkage warnings */
#define H5TEST_DLL __declspec(dllexport)
#define H5TEST_DLLVAR __declspec(dllexport)
#elif defined(_HDF5TESTUSEDLL_)
#define H5TEST_DLL __declspec(dllimport)
#define H5TEST_DLLVAR __declspec(dllimport)
#else
#define H5TEST_DLL
#define H5TEST_DLLVAR extern
#endif /* _HDF5TESTDLL_ */
/* Added to export or to import C++ APIs - BMR (02-15-2002) */
#if defined(HDF5_CPPDLL_EXPORTS) /* this name is generated at creation */
#define H5_DLLCPP __declspec(dllexport)
#elif defined(HDF5CPP_USEDLL)
#define H5_DLLCPP __declspec(dllimport)
#else
#define H5_DLLCPP
#endif /* HDF5_CPPDLL_EXPORTS */
#else /*WIN32*/
#define H5_DLL
#define H5_DLLVAR extern
#define H5_DLLCPP
#define H5TEST_DLL
#define H5TEST_DLLVAR extern
#endif
#endif /* H5API_ADPT_H */

537
libs/cygwin/include/H5pubconf.h Executable file
View File

@ -0,0 +1,537 @@
/* src/H5config.h. Generated by configure. */
/* src/H5config.h.in. Generated from configure.in by autoheader. */
/* Define if your system can handle converting denormalized floating-point
values. */
#define H5_CONVERT_DENORMAL_FLOAT 1
/* Define if `dev_t' is a scalar */
#define H5_DEV_T_IS_SCALAR 1
/* Define if gettimeofday() populates the tz pointer passed in */
#define H5_GETTIMEOFDAY_GIVES_TZ 1
/* Define if the __attribute__(()) extension is present */
#define H5_HAVE_ATTRIBUTE 1
/* Define to 1 if you have the `BSDgettimeofday' function. */
/* #undef H5_HAVE_BSDGETTIMEOFDAY */
/* Define to 1 if you have the `difftime' function. */
#define H5_HAVE_DIFFTIME 1
/* Define to 1 if you have the <dlfcn.h> header file. */
#define H5_HAVE_DLFCN_H 1
/* Define to 1 if you have the <dmalloc.h> header file. */
/* #undef H5_HAVE_DMALLOC_H */
/* Define to 1 if you have the <features.h> header file. */
#define H5_HAVE_FEATURES_H 1
/* Define if support for deflate filter is enabled */
#define H5_HAVE_FILTER_DEFLATE 1
/* Define if support for Fletcher32 checksum is enabled */
#define H5_HAVE_FILTER_FLETCHER32 1
/* Define if support for shuffle filter is enabled */
#define H5_HAVE_FILTER_SHUFFLE 1
/* Define if support for szip filter is enabled */
/* #undef H5_HAVE_FILTER_SZIP */
/* Define to 1 if you have the `fork' function. */
#define H5_HAVE_FORK 1
/* Define to 1 if you have the `frexpf' function. */
#define H5_HAVE_FREXPF 1
/* Define to 1 if you have the `frexpl' function. */
/* #undef H5_HAVE_FREXPL */
/* Define to 1 if you have the `fseek64' function. */
/* #undef H5_HAVE_FSEEK64 */
/* Define if the function stack tracing code is to be compiled in */
/* #undef H5_HAVE_FUNCSTACK */
/* Define if the compiler understand the __FUNCTION__ keyword */
#define H5_HAVE_FUNCTION 1
/* Define if the Globus GASS is defined */
/* #undef H5_HAVE_GASS */
/* Define to 1 if you have the `GetConsoleScreenBufferInfo' function. */
/* #undef H5_HAVE_GETCONSOLESCREENBUFFERINFO */
/* Define to 1 if you have the `gethostname' function. */
#define H5_HAVE_GETHOSTNAME 1
/* Define to 1 if you have the `getpwuid' function. */
#define H5_HAVE_GETPWUID 1
/* Define to 1 if you have the `getrusage' function. */
#define H5_HAVE_GETRUSAGE 1
/* Define to 1 if you have the `gettextinfo' function. */
/* #undef H5_HAVE_GETTEXTINFO */
/* Define to 1 if you have the `gettimeofday' function. */
#define H5_HAVE_GETTIMEOFDAY 1
/* Define to 1 if you have the `get_fpc_csr' function. */
/* #undef H5_HAVE_GET_FPC_CSR */
/* Define to 1 if you have the <globus_common.h> header file. */
/* #undef H5_HAVE_GLOBUS_COMMON_H */
/* Define if we have GPFS support */
/* #undef H5_HAVE_GPFS */
/* Define to 1 if you have the <gpfs.h> header file. */
/* #undef H5_HAVE_GPFS_H */
/* Define if library will contain instrumentation to detect correct
optimization operation */
/* #undef H5_HAVE_INSTRUMENTED_LIBRARY */
/* Define to 1 if you have the <inttypes.h> header file. */
#define H5_HAVE_INTTYPES_H 1
/* Define to 1 if you have the `ioctl' function. */
#define H5_HAVE_IOCTL 1
/* Define to 1 if you have the <io.h> header file. */
#define H5_HAVE_IO_H 1
/* Define if it's safe to use `long long' for hsize_t and hssize_t */
#define H5_HAVE_LARGE_HSIZET 1
/* Define to 1 if you have the `crypto' library (-lcrypto). */
/* #undef H5_HAVE_LIBCRYPTO */
/* Define to 1 if you have the `dmalloc' library (-ldmalloc). */
/* #undef H5_HAVE_LIBDMALLOC */
/* Define to 1 if you have the `elf' library (-lelf). */
/* #undef H5_HAVE_LIBELF */
/* Define to 1 if you have the `globus_common' library (-lglobus_common). */
/* #undef H5_HAVE_LIBGLOBUS_COMMON */
/* Define to 1 if you have the `globus_gaa' library (-lglobus_gaa). */
/* #undef H5_HAVE_LIBGLOBUS_GAA */
/* Define to 1 if you have the `globus_gass_cache' library
(-lglobus_gass_cache). */
/* #undef H5_HAVE_LIBGLOBUS_GASS_CACHE */
/* Define to 1 if you have the `globus_gass_file' library
(-lglobus_gass_file). */
/* #undef H5_HAVE_LIBGLOBUS_GASS_FILE */
/* Define to 1 if you have the `globus_gass_transfer' library
(-lglobus_gass_transfer). */
/* #undef H5_HAVE_LIBGLOBUS_GASS_TRANSFER */
/* Define to 1 if you have the `globus_gass_transfer_assist' library
(-lglobus_gass_transfer_assist). */
/* #undef H5_HAVE_LIBGLOBUS_GASS_TRANSFER_ASSIST */
/* Define to 1 if you have the `globus_gss' library (-lglobus_gss). */
/* #undef H5_HAVE_LIBGLOBUS_GSS */
/* Define to 1 if you have the `globus_gss_assist' library
(-lglobus_gss_assist). */
/* #undef H5_HAVE_LIBGLOBUS_GSS_ASSIST */
/* Define to 1 if you have the `globus_io' library (-lglobus_io). */
/* #undef H5_HAVE_LIBGLOBUS_IO */
/* Define to 1 if you have the `lmpe' library (-llmpe). */
/* #undef H5_HAVE_LIBLMPE */
/* Define to 1 if you have the `m' library (-lm). */
#define H5_HAVE_LIBM 1
/* Define to 1 if you have the `mpe' library (-lmpe). */
/* #undef H5_HAVE_LIBMPE */
/* Define to 1 if you have the `mpi' library (-lmpi). */
/* #undef H5_HAVE_LIBMPI */
/* Define to 1 if you have the `mpio' library (-lmpio). */
/* #undef H5_HAVE_LIBMPIO */
/* Define to 1 if you have the `nsl' library (-lnsl). */
/* #undef H5_HAVE_LIBNSL */
/* Define to 1 if you have the `pdb' library (-lpdb). */
/* #undef H5_HAVE_LIBPDB */
/* Define to 1 if you have the `pthread' library (-lpthread). */
/* #undef H5_HAVE_LIBPTHREAD */
/* Define to 1 if you have the `silo' library (-lsilo). */
/* #undef H5_HAVE_LIBSILO */
/* Define to 1 if you have the `socket' library (-lsocket). */
/* #undef H5_HAVE_LIBSOCKET */
/* Define to 1 if you have the `SrbClient' library (-lSrbClient). */
/* #undef H5_HAVE_LIBSRBCLIENT */
/* Define to 1 if you have the `ssl' library (-lssl). */
/* #undef H5_HAVE_LIBSSL */
/* Define to 1 if you have the `sz' library (-lsz). */
/* #undef H5_HAVE_LIBSZ */
/* Define to 1 if you have the `z' library (-lz). */
#define H5_HAVE_LIBZ 1
/* Define to 1 if you have the `longjmp' function. */
#define H5_HAVE_LONGJMP 1
/* Define to 1 if you have the `lseek64' function. */
/* #undef H5_HAVE_LSEEK64 */
/* Define to 1 if you have the <memory.h> header file. */
#define H5_HAVE_MEMORY_H 1
/* Define if we have MPE support */
/* #undef H5_HAVE_MPE */
/* Define to 1 if you have the <mpe.h> header file. */
/* #undef H5_HAVE_MPE_H */
/* Define to 1 if you have the <netinet/tcp.h> header file. */
#define H5_HAVE_NETINET_TCP_H 1
/* Define if we have parallel support */
/* #undef H5_HAVE_PARALLEL */
/* Define to 1 if you have the <pdb.h> header file. */
/* #undef H5_HAVE_PDB_H */
/* Define to 1 if you have the <pthread.h> header file. */
/* #undef H5_HAVE_PTHREAD_H */
/* Define to 1 if you have the <setjmp.h> header file. */
#define H5_HAVE_SETJMP_H 1
/* Define to 1 if you have the `setsysinfo' function. */
/* #undef H5_HAVE_SETSYSINFO */
/* Define to 1 if you have the `sigaction' function. */
#define H5_HAVE_SIGACTION 1
/* Define to 1 if you have the `signal' function. */
#define H5_HAVE_SIGNAL 1
/* Define to 1 if you have the `snprintf' function. */
#define H5_HAVE_SNPRINTF 1
/* Define if `socklen_t' is defined */
#define H5_HAVE_SOCKLEN_T 1
/* Define if the SRB is defined */
/* #undef H5_HAVE_SRB */
/* Define to 1 if you have the <srbClient.h> header file. */
/* #undef H5_HAVE_SRBCLIENT_H */
/* Define if `struct stat' has the `st_blocks' field */
#define H5_HAVE_STAT_ST_BLOCKS 1
/* Define to 1 if you have the <stddef.h> header file. */
#define H5_HAVE_STDDEF_H 1
/* Define to 1 if you have the <stdint.h> header file. */
#define H5_HAVE_STDINT_H 1
/* Define to 1 if you have the <stdlib.h> header file. */
#define H5_HAVE_STDLIB_H 1
/* Define to 1 if you have the `strdup' function. */
#define H5_HAVE_STRDUP 1
/* Define if the stream virtual file driver should be compiled */
#define H5_HAVE_STREAM 1
/* Define to 1 if you have the <strings.h> header file. */
#define H5_HAVE_STRINGS_H 1
/* Define to 1 if you have the <string.h> header file. */
#define H5_HAVE_STRING_H 1
/* Define if `struct text_info' is defined */
/* #undef H5_HAVE_STRUCT_TEXT_INFO */
/* Define if `struct timezone' is defined */
#define H5_HAVE_STRUCT_TIMEZONE 1
/* Define to 1 if `tm_zone' is member of `struct tm'. */
/* #undef H5_HAVE_STRUCT_TM_TM_ZONE */
/* Define if `struct videoconfig' is defined */
/* #undef H5_HAVE_STRUCT_VIDEOCONFIG */
/* Define to 1 if you have the `system' function. */
#define H5_HAVE_SYSTEM 1
/* Define to 1 if you have the <sys/filio.h> header file. */
/* #undef H5_HAVE_SYS_FILIO_H */
/* Define to 1 if you have the <sys/fpu.h> header file. */
/* #undef H5_HAVE_SYS_FPU_H */
/* Define to 1 if you have the <sys/ioctl.h> header file. */
#define H5_HAVE_SYS_IOCTL_H 1
/* Define to 1 if you have the <sys/proc.h> header file. */
/* #undef H5_HAVE_SYS_PROC_H */
/* Define to 1 if you have the <sys/resource.h> header file. */
#define H5_HAVE_SYS_RESOURCE_H 1
/* Define to 1 if you have the <sys/socket.h> header file. */
#define H5_HAVE_SYS_SOCKET_H 1
/* Define to 1 if you have the <sys/stat.h> header file. */
#define H5_HAVE_SYS_STAT_H 1
/* Define to 1 if you have the <sys/sysinfo.h> header file. */
/* #undef H5_HAVE_SYS_SYSINFO_H */
/* Define to 1 if you have the <sys/timeb.h> header file. */
#define H5_HAVE_SYS_TIMEB_H 1
/* Define to 1 if you have the <sys/time.h> header file. */
#define H5_HAVE_SYS_TIME_H 1
/* Define to 1 if you have the <sys/types.h> header file. */
#define H5_HAVE_SYS_TYPES_H 1
/* Define to 1 if you have the <szlib.h> header file. */
/* #undef H5_HAVE_SZLIB_H */
/* Define if we have thread safe support */
/* #undef H5_HAVE_THREADSAFE */
/* Define if `timezone' is a global variable */
/* #undef H5_HAVE_TIMEZONE */
/* Define if the ioctl TIOCGETD is defined */
/* #undef H5_HAVE_TIOCGETD */
/* Define if the ioctl TIOGWINSZ is defined */
/* #undef H5_HAVE_TIOCGWINSZ */
/* Define if `tm_gmtoff' is a member of `struct tm' */
/* #undef H5_HAVE_TM_GMTOFF */
/* Define to 1 if your `struct tm' has `tm_zone'. Deprecated, use
`HAVE_STRUCT_TM_TM_ZONE' instead. */
/* #undef H5_HAVE_TM_ZONE */
/* Define to 1 if you don't have `tm_zone' but do have the external array
`tzname'. */
#define H5_HAVE_TZNAME 1
/* Define to 1 if you have the <unistd.h> header file. */
#define H5_HAVE_UNISTD_H 1
/* Define to 1 if you have the `vsnprintf' function. */
#define H5_HAVE_VSNPRINTF 1
/* Define to 1 if you have the `waitpid' function. */
#define H5_HAVE_WAITPID 1
/* Define to 1 if you have the <winsock.h> header file. */
#define H5_HAVE_WINSOCK_H 1
/* Define to 1 if you have the <zlib.h> header file. */
#define H5_HAVE_ZLIB_H 1
/* Define to 1 if you have the `_getvideoconfig' function. */
/* #undef H5_HAVE__GETVIDEOCONFIG */
/* Define to 1 if you have the `_scrsize' function. */
/* #undef H5_HAVE__SCRSIZE */
/* Define if `__tm_gmtoff' is a member of `struct tm' */
/* #undef H5_HAVE___TM_GMTOFF */
/* Define if your system's `MPI_File_set_size' function works for files over
2GB. */
/* #undef H5_MPI_FILE_SET_SIZE_BIG */
/* Define if shared writing must be disabled (CodeWarrior only) */
/* #undef H5_NO_SHARED_WRITING */
/* Define to the address where bug reports for this package should be sent. */
#define H5_PACKAGE_BUGREPORT "hdfhelp@ncsa.uiuc.edu"
/* Define to the full name of this package. */
#define H5_PACKAGE_NAME "HDF5"
/* Define to the full name and version of this package. */
#define H5_PACKAGE_STRING "HDF5 1.6.3-patch"
/* Define to the one symbol short name of this package. */
#define H5_PACKAGE_TARNAME "hdf5"
/* Define to the version of this package. */
#define H5_PACKAGE_VERSION "1.6.3-patch"
/* Width for printf() for type `long long' or `__int64', use `ll' */
#define H5_PRINTF_LL_WIDTH "ll"
/* The size of a `char', as computed by sizeof. */
#define H5_SIZEOF_CHAR 1
/* The size of a `double', as computed by sizeof. */
#define H5_SIZEOF_DOUBLE 8
/* The size of a `float', as computed by sizeof. */
#define H5_SIZEOF_FLOAT 4
/* The size of a `int', as computed by sizeof. */
#define H5_SIZEOF_INT 4
/* The size of a `int16_t', as computed by sizeof. */
#define H5_SIZEOF_INT16_T 2
/* The size of a `int32_t', as computed by sizeof. */
#define H5_SIZEOF_INT32_T 4
/* The size of a `int64_t', as computed by sizeof. */
#define H5_SIZEOF_INT64_T 8
/* The size of a `int8_t', as computed by sizeof. */
#define H5_SIZEOF_INT8_T 1
/* The size of a `int_fast16_t', as computed by sizeof. */
#define H5_SIZEOF_INT_FAST16_T 4
/* The size of a `int_fast32_t', as computed by sizeof. */
#define H5_SIZEOF_INT_FAST32_T 4
/* The size of a `int_fast64_t', as computed by sizeof. */
#define H5_SIZEOF_INT_FAST64_T 8
/* The size of a `int_fast8_t', as computed by sizeof. */
#define H5_SIZEOF_INT_FAST8_T 1
/* The size of a `int_least16_t', as computed by sizeof. */
#define H5_SIZEOF_INT_LEAST16_T 2
/* The size of a `int_least32_t', as computed by sizeof. */
#define H5_SIZEOF_INT_LEAST32_T 4
/* The size of a `int_least64_t', as computed by sizeof. */
#define H5_SIZEOF_INT_LEAST64_T 8
/* The size of a `int_least8_t', as computed by sizeof. */
#define H5_SIZEOF_INT_LEAST8_T 1
/* The size of a `long', as computed by sizeof. */
#define H5_SIZEOF_LONG 4
/* The size of a `long double', as computed by sizeof. */
#define H5_SIZEOF_LONG_DOUBLE 12
/* The size of a `long long', as computed by sizeof. */
#define H5_SIZEOF_LONG_LONG 8
/* The size of a `off_t', as computed by sizeof. */
#define H5_SIZEOF_OFF_T 8
/* The size of a `short', as computed by sizeof. */
#define H5_SIZEOF_SHORT 2
/* The size of a `size_t', as computed by sizeof. */
#define H5_SIZEOF_SIZE_T 4
/* The size of a `ssize_t', as computed by sizeof. */
#define H5_SIZEOF_SSIZE_T 4
/* The size of a `uint16_t', as computed by sizeof. */
#define H5_SIZEOF_UINT16_T 2
/* The size of a `uint32_t', as computed by sizeof. */
#define H5_SIZEOF_UINT32_T 4
/* The size of a `uint64_t', as computed by sizeof. */
#define H5_SIZEOF_UINT64_T 8
/* The size of a `uint8_t', as computed by sizeof. */
#define H5_SIZEOF_UINT8_T 1
/* The size of a `uint_fast16_t', as computed by sizeof. */
#define H5_SIZEOF_UINT_FAST16_T 4
/* The size of a `uint_fast32_t', as computed by sizeof. */
#define H5_SIZEOF_UINT_FAST32_T 4
/* The size of a `uint_fast64_t', as computed by sizeof. */
#define H5_SIZEOF_UINT_FAST64_T 8
/* The size of a `uint_fast8_t', as computed by sizeof. */
#define H5_SIZEOF_UINT_FAST8_T 1
/* The size of a `uint_least16_t', as computed by sizeof. */
#define H5_SIZEOF_UINT_LEAST16_T 2
/* The size of a `uint_least32_t', as computed by sizeof. */
#define H5_SIZEOF_UINT_LEAST32_T 4
/* The size of a `uint_least64_t', as computed by sizeof. */
#define H5_SIZEOF_UINT_LEAST64_T 8
/* The size of a `uint_least8_t', as computed by sizeof. */
#define H5_SIZEOF_UINT_LEAST8_T 1
/* The size of a `__int64', as computed by sizeof. */
#define H5_SIZEOF___INT64 0
/* Define to 1 if you have the ANSI C header files. */
#define H5_STDC_HEADERS 1
/* Define if your system supports pthread_attr_setscope(&attribute,
PTHREAD_SCOPE_SYSTEM) call. */
/* #undef H5_SYSTEM_SCOPE_THREADS */
/* Define if szip encoder is present */
/* #undef H5_SZIP_CAN_ENCODE */
/* Define to 1 if you can safely include both <sys/time.h> and <time.h>. */
#define H5_TIME_WITH_SYS_TIME 1
/* Define to 1 if your <sys/time.h> declares `struct tm'. */
/* #undef H5_TM_IN_SYS_TIME */
/* Define if the HDF5 v1.4 compatibility functions are to be compiled in */
/* #undef H5_WANT_H5_V1_4_COMPAT */
/* Define to 1 if your processor stores words with the most significant byte
first (like Motorola and SPARC, unlike Intel and VAX). */
/* #undef H5_WORDS_BIGENDIAN */
/* Define to empty if `const' does not conform to ANSI C. */
/* #undef H5_const */
/* Define as `__inline' if that's what the C compiler calls it, or to nothing
if it is not supported. */
/* #undef H5_inline */
/* Define to `long' if <sys/types.h> does not define. */
/* #undef H5_off_t */
/* Define to `unsigned long' if <sys/types.h> does not define. */
/* #undef H5_size_t */
/* Define to `long' if <sys/types.h> does not define. */
/* #undef H5_ssize_t */

216
libs/cygwin/include/H5public.h Executable file
View File

@ -0,0 +1,216 @@
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* Copyright by the Board of Trustees of the University of Illinois. *
* All rights reserved. *
* *
* This file is part of HDF5. The full HDF5 copyright notice, including *
* terms governing use, modification, and redistribution, is contained in *
* the files COPYING and Copyright.html. COPYING can be found at the root *
* of the source code distribution tree; Copyright.html can be found at the *
* root level of an installed copy of the electronic HDF5 document set and *
* is linked from the top-level documents page. It can also be found at *
* http://hdf.ncsa.uiuc.edu/HDF5/doc/Copyright.html. If you do not have *
* access to either file, you may request a copy from hdfhelp@ncsa.uiuc.edu. *
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
/* $Id: H5public.h,v 1.1.1.1 2004/11/02 15:54:58 cvs Exp $ */
/*
* This file contains public declarations for the HDF5 module.
*/
#ifndef _H5public_H
#define _H5public_H
/* Include files for public use... */
/*
* Since H5pubconf.h is a generated header file, it is messy to try
* to put a #ifndef _H5pubconf_H ... #endif guard in it.
* HDF5 has set an internal rule that it is being included here.
* Source files should NOT include H5pubconf.h directly but include
* it via H5public.h. The #ifndef _H5public_H guard above would
* prevent repeated include.
*/
#include "H5pubconf.h" /*from configure */
#ifdef H5_HAVE_FEATURES_H
#include <features.h> /*for setting POSIX, BSD, etc. compatibility */
#endif
#ifdef H5_HAVE_SYS_TYPES_H
#include <sys/types.h>
#endif
#ifdef H5_STDC_HEADERS
# include <limits.h> /*for H5T_NATIVE_CHAR defn in H5Tpublic.h */
#endif
#ifndef __cplusplus
#ifdef H5_HAVE_STDINT_H
# include <stdint.h> /*for C9x types */
#endif
#endif
#ifdef H5_HAVE_INTTYPES_H
# include <inttypes.h> /* For uint64_t on some platforms */
#endif
#ifdef H5_HAVE_STDDEF_H
# include <stddef.h>
#endif
#ifdef H5_HAVE_PARALLEL
# include <mpi.h>
#ifndef MPI_FILE_NULL /*MPIO may be defined in mpi.h already */
# include <mpio.h>
#endif
#endif
#ifdef H5_HAVE_GASS /*for Globus GASS I/O */
#include "globus_common.h"
#include "globus_gass_file.h"
#endif
#ifdef H5_HAVE_SRB /*for SRB I/O */
#include <srbClient.h>
#endif
#include "H5api_adpt.h"
#ifdef __cplusplus
extern "C" {
#endif
/* Version numbers */
#define H5_VERS_MAJOR 1 /* For major interface/format changes */
#define H5_VERS_MINOR 6 /* For minor interface/format changes */
#define H5_VERS_RELEASE 3 /* For tweaks, bug-fixes, or development */
#define H5_VERS_SUBRELEASE "patch" /* For pre-releases like snap0 */
/* Empty string for real releases. */
#define H5_VERS_INFO "HDF5 library version: 1.6.3-patch" /* Full version string */
#define H5check() H5check_version(H5_VERS_MAJOR,H5_VERS_MINOR, \
H5_VERS_RELEASE)
/*
* Status return values. Failed integer functions in HDF5 result almost
* always in a negative value (unsigned failing functions sometimes return
* zero for failure) while successfull return is non-negative (often zero).
* The negative failure value is most commonly -1, but don't bet on it. The
* proper way to detect failure is something like:
*
* if ((dset = H5Dopen (file, name))<0) {
* fprintf (stderr, "unable to open the requested dataset\n");
* }
*/
typedef int herr_t;
/*
* Boolean type. Successful return values are zero (false) or positive
* (true). The typical true value is 1 but don't bet on it. Boolean
* functions cannot fail. Functions that return `htri_t' however return zero
* (false), positive (true), or negative (failure). The proper way to test
* for truth from a htri_t function is:
*
* if ((retval = H5Tcommitted(type))>0) {
* printf("data type is committed\n");
* } else if (!retval) {
* printf("data type is not committed\n");
* } else {
* printf("error determining whether data type is committed\n");
* }
*/
typedef unsigned int hbool_t;
typedef int htri_t;
/* Define the ssize_t type if it not is defined */
#if H5_SIZEOF_SSIZE_T==0
/* Undefine this size, we will re-define it in one of the sections below */
#undef H5_SIZEOF_SSIZE_T
#if H5_SIZEOF_SIZE_T==H5_SIZEOF_INT
typedef int ssize_t;
# define H5_SIZEOF_SSIZE_T H5_SIZEOF_INT
#elif H5_SIZEOF_SIZE_T==H5_SIZEOF_LONG
typedef long ssize_t;
# define H5_SIZEOF_SSIZE_T H5_SIZEOF_LONG
#elif H5_SIZEOF_SIZE_T==H5_SIZEOF_LONG_LONG
typedef long long ssize_t;
# define H5_SIZEOF_SSIZE_T H5_SIZEOF_LONG_LONG
#elif H5_SIZEOF_SIZE_T==H5_SIZEOF___INT64
typedef __int64 ssize_t;
# define H5_SIZEOF_SSIZE_T H5_SIZEOF___INT64
#else /* Can't find matching type for ssize_t */
# error "nothing appropriate for ssize_t"
#endif
#endif
/*
* The sizes of file objects have their own types defined here. If large
* sizes are enabled then use a 64-bit data type, otherwise use the size of
* memory objects.
*/
#ifdef H5_HAVE_LARGE_HSIZET
# if H5_SIZEOF_LONG_LONG>=8
typedef unsigned long long hsize_t;
typedef signed long long hssize_t;
# define H5_SIZEOF_HSIZE_T H5_SIZEOF_LONG_LONG
# elif H5_SIZEOF___INT64>=8
typedef unsigned __int64 hsize_t;
typedef signed __int64 hssize_t;
# define H5_SIZEOF_HSIZE_T H5_SIZEOF___INT64
# endif
#else /* H5_HAVE_LARGE_HSIZET */
typedef size_t hsize_t;
typedef ssize_t hssize_t;
# define H5_SIZEOF_HSIZE_T H5_SIZEOF_SIZE_T
#endif /* H5_HAVE_LARGE_HSIZET */
/*
* File addresses have there own types.
*/
#if H5_SIZEOF_INT64_T>=8
typedef uint64_t haddr_t;
# define HADDR_UNDEF ((haddr_t)(int64_t)(-1))
# ifdef H5_HAVE_PARALLEL
# define HADDR_AS_MPI_TYPE MPI_LONG_LONG_INT
# endif /* H5_HAVE_PARALLEL */
#elif H5_SIZEOF_INT>=8
typedef unsigned haddr_t;
# define HADDR_UNDEF ((haddr_t)(-1))
# ifdef H5_HAVE_PARALLEL
# define HADDR_AS_MPI_TYPE MPI_UNSIGNED
# endif /* H5_HAVE_PARALLEL */
#elif H5_SIZEOF_LONG>=8
typedef unsigned long haddr_t;
# define HADDR_UNDEF ((haddr_t)(long)(-1))
# ifdef H5_HAVE_PARALLEL
# define HADDR_AS_MPI_TYPE MPI_UNSIGNED_LONG
# endif /* H5_HAVE_PARALLEL */
#elif H5_SIZEOF_LONG_LONG>=8
typedef unsigned long long haddr_t;
# define HADDR_UNDEF ((haddr_t)(long long)(-1))
# ifdef H5_HAVE_PARALLEL
# define HADDR_AS_MPI_TYPE MPI_LONG_LONG_INT
# endif /* H5_HAVE_PARALLEL */
#elif H5_SIZEOF___INT64>=8
typedef unsigned __int64 haddr_t;
# define HADDR_UNDEF ((haddr_t)(__int64)(-1))
# ifdef H5_HAVE_PARALLEL
# define HADDR_AS_MPI_TYPE MPI_LONG_LONG_INT
# endif /* H5_HAVE_PARALLEL */
#else
# error "nothing appropriate for haddr_t"
#endif
#define HADDR_MAX (HADDR_UNDEF-1)
/* Functions in H5.c */
H5_DLL herr_t H5open(void);
H5_DLL herr_t H5close(void);
H5_DLL herr_t H5dont_atexit(void);
H5_DLL herr_t H5garbage_collect(void);
H5_DLL herr_t H5set_free_list_limits (int reg_global_lim, int reg_list_lim,
int arr_global_lim, int arr_list_lim, int blk_global_lim,
int blk_list_lim);
H5_DLL herr_t H5get_libversion(unsigned *majnum, unsigned *minnum,
unsigned *relnum);
H5_DLL herr_t H5check_version(unsigned majnum, unsigned minnum,
unsigned relnum);
#ifdef __cplusplus
}
#endif
#endif

55
libs/cygwin/include/hdf5.h Executable file
View File

@ -0,0 +1,55 @@
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* Copyright by the Board of Trustees of the University of Illinois. *
* All rights reserved. *
* *
* This file is part of HDF5. The full HDF5 copyright notice, including *
* terms governing use, modification, and redistribution, is contained in *
* the files COPYING and Copyright.html. COPYING can be found at the root *
* of the source code distribution tree; Copyright.html can be found at the *
* root level of an installed copy of the electronic HDF5 document set and *
* is linked from the top-level documents page. It can also be found at *
* http://hdf.ncsa.uiuc.edu/HDF5/doc/Copyright.html. If you do not have *
* access to either file, you may request a copy from hdfhelp@ncsa.uiuc.edu. *
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
/*
* This is the main public HDF5 include file. Put further information in
* a particular header file and include that here, don't fill this file with
* lots of gunk...
*/
#ifndef _HDF5_H
#define _HDF5_H
#include "H5public.h"
#include "H5Apublic.h" /* Attributes */
#include "H5ACpublic.h" /* Metadata cache */
#include "H5Bpublic.h" /* B-trees */
#include "H5Dpublic.h" /* Datasets */
#include "H5Epublic.h" /* Errors */
#include "H5Fpublic.h" /* Files */
#include "H5FDpublic.h" /* File drivers */
#include "H5Gpublic.h" /* Groups */
#include "H5HGpublic.h" /* Global heaps */
#include "H5HLpublic.h" /* Local heaps */
#include "H5Ipublic.h" /* ID management */
#include "H5MMpublic.h" /* Memory management */
#include "H5Opublic.h" /* Object headers */
#include "H5Ppublic.h" /* Property lists */
#include "H5Rpublic.h" /* References */
#include "H5Spublic.h" /* Dataspaces */
#include "H5Tpublic.h" /* Datatypes */
#include "H5Zpublic.h" /* Data filters */
/* Predefined file drivers */
#include "H5FDcore.h" /* Files stored entirely in memory */
#include "H5FDfamily.h" /* File families */
#include "H5FDgass.h" /* Remote files using GASS I/O */
#include "H5FDlog.h" /* sec2 driver with I/O logging (for debugging) */
#include "H5FDmpi.h" /* MPI-based file drivers */
#include "H5FDmulti.h" /* Usage-partitioned file family */
#include "H5FDsec2.h" /* POSIX unbuffered file I/O */
#include "H5FDsrb.h" /* Remote access using SRB */
#include "H5FDstdio.h" /* Standard C buffered I/O */
#include "H5FDstream.h" /* In-memory files streamed via sockets */
#endif

315
libs/cygwin/include/napi.h Executable file
View File

@ -0,0 +1,315 @@
/*---------------------------------------------------------------------------
NeXus - Neutron & X-ray Common Data Format
Application Program Interface Header File
Copyright (C) 2000-2003 Mark Koennecke, Uwe Filges
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public
License along with this library; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
For further information, see <http://www.neutron.anl.gov/NeXus/>
----------------------------------------------------------------------------*/
#ifndef NEXUSAPI
#define NEXUSAPI
/* NeXus HDF45 */
#define NEXUS_VERSION "2.0.0." /* major.minor.patch */
#define CONSTCHAR char
#if defined(_WIN32) && defined(_DLL)
# ifdef NX45DLL_EXPORTS
# define NX_EXTERNAL __declspec(dllexport)
# else
# define NX_EXTERNAL __declspec(dllimport)
# endif
#else
# define NX_EXTERNAL
#endif
typedef void* NXhandle; /* really a pointer to a NexusFile structure */
typedef int NXstatus;
typedef char NXname[128];
typedef enum {NXACC_READ=1, NXACC_RDWR=2, NXACC_CREATE=3, NXACC_CREATE4=4, NXACC_CREATE5=5} NXaccess;
typedef struct {
char *iname;
int type;
}info_type, *pinfo;
#define NX_OK 1
#define NX_ERROR 0
#define NX_EOD -1
#define NX_UNLIMITED -1
#define NX_MAXRANK 32
#define NX_MAXNAMELEN 64
/*-------------------------------------------------------------------------
HDF Datatype values for datatype parameters
in the Nexus API
NX_FLOAT32 32 bit float
NX_FLOAT64 64 nit float == double
NX_INT8 8 bit integer == byte
NX_UINT8 8 bit unsigned integer
NX_INT16 16 bit integer
NX_UINT16 16 bit unsigned integer
NX_INT32 32 bit integer
NX_UINT32 32 bit unsigned integer
NX_CHAR 8 bit character
--------------------------------------------------------------------------*/
/* Map NeXus to HDF types */
#define NX_FLOAT32 5
#define NX_FLOAT64 6
#define NX_INT8 20
#define NX_UINT8 21
#define NX_INT16 22
#define NX_UINT16 23
#define NX_INT32 24
#define NX_UINT32 25
#define NX_CHAR 4
/* Map NeXus compression methods to HDF compression methods */
#define NX_COMP_NONE 100
#define NX_COMP_LZW 200
#define NX_COMP_RLE 300
#define NX_COMP_HUF 400
#ifdef HDF4
#include <mfhdf.h>
#endif
#ifdef HDF5
#include <hdf5.h>
#endif
typedef struct {
#ifdef HDF4
int32 iTag; /* HDF4 variable */
int32 iRef; /* HDF4 variable */
#endif
#ifdef HDF5
char iTag5[1024]; /* HDF5 variable */
char iRef5[1024]; /* HDF5 variable */
char iRefd[1024]; /* HDF5 variable */
#endif
} NXlink;
#define NXMAXSTACK 50
#define CONCAT(__a,__b) __a##__b /* token concatenation */
#if defined(__unix) || defined(__unix__) || defined (__VMS)
# ifdef __VMS
# define MANGLE(__arg) __arg
# else
# define MANGLE(__arg) CONCAT(__arg,_)
# endif
# define CALLING_STYLE /* blank */
# define NXopen MANGLE(nxiopen)
# define NXclose MANGLE(nxiclose)
# define NXmakegroup MANGLE(nximakegroup)
# define NXopengroup MANGLE(nxiopengroup)
# define NXclosegroup MANGLE(nxiclosegroup)
# define NXmakedata MANGLE(nximakedata)
# define NXcompmakedata MANGLE(nxicompmakedata)
# define NXcompress MANGLE(nxicompress)
# define NXopendata MANGLE(nxiopendata)
# define NXclosedata MANGLE(nxiclosedata)
# define NXputdata MANGLE(nxiputdata)
# define NXputslab MANGLE(nxiputslab)
# define NXputattr MANGLE(nxiputattr)
# define NXgetdataID MANGLE(nxigetdataid)
# define NXmakelink MANGLE(nximakelink)
# define NXmalloc MANGLE(nximalloc)
# define NXfree MANGLE(nxifree)
# define NXflush MANGLE(nxiflush)
# define NXgetinfo MANGLE(nxigetinfo)
# define NXgetnextentry MANGLE(nxigetnextentry)
# define NXgetdata MANGLE(nxigetdata)
# define NXgetslab MANGLE(nxigetslab)
# define NXgetnextattr MANGLE(nxigetnextattr)
# define NXgetattr MANGLE(nxigetattr)
# define NXgetattrinfo MANGLE(nxigetattrinfo)
# define NXgetgroupID MANGLE(nxigetgroupid)
# define NXgetgroupinfo MANGLE(nxigetgroupinfo)
# define NXsameID MANGLE(nxisameid)
# define NXinitgroupdir MANGLE(nxiinitgroupdir)
# define NXinitattrdir MANGLE(nxiinitattrdir)
# define NXsetcache MANGLE(nxisetcache)
/* FORTRAN helpers - for NeXus internal use only */
# define NXfopen MANGLE(nxifopen)
# define NXfclose MANGLE(nxifclose)
# define NXfflush MANGLE(nxifflush)
# define NXfmakedata MANGLE(nxifmakedata)
# define NXfcompmakedata MANGLE(nxifcompmakedata)
# define NXfcompress MANGLE(nxifcompress)
# define NXfputattr MANGLE(nxifputattr)
#elif defined(_WIN32)
/*
* START OF WINDOWS SPECIFIC CONFIGURATION
*
* Added by Freddie Akeroyd 9/8/2002
*
* Various PC calling conventions - you need only uncomment one of the following definitions of MANGLE()
* anlong with the appropriate CALLING_STYLE
* The choice arises because under Windows the default way FORTRAN calls FORTRAN is different
* from the dafault way C calls C, and so when you need to have FORTRAN calling C you must
* force them to use the same convention. Notice the use of "default way" above ... by choice
* of compiler options (or compiler vendor) you may actually have FORTRAN calling in the C way
* etc., so you might need to experiment with the options below until you get no "unresolved symbols"
*
* Choice 1: Should allow both FORTRAN and C NeXus interfaces to work in a "default" setup
* Choice 2: For when choice 1: gives problems and you only require the C interface
* Choice 3: An alternative to 1: which may allow both FORTRAN and C in a non-default setup
*/
# define MANGLE(__arg) __arg /* Choice 1 */
# define CALLING_STYLE __stdcall /* Choice 1 */
/* # define MANGLE(__arg) __arg /* Choice 2 */
/* # define CALLING_STYLE /* Choice 2 */
/* # define MANGLE(__arg) CONCAT(__arg,_) /* Choice 3 */
/* # define CALLING_STYLE __stdcall /* Choice 3 */
/*
* END OF WINDOWS SPECIFIC CONFIGURATION
*/
# define NXopen MANGLE(NXIOPEN)
# define NXclose MANGLE(NXICLOSE)
# define NXflush MANGLE(NXIFLUSH)
# define NXmakegroup MANGLE(NXIMAKEGROUP)
# define NXopengroup MANGLE(NXIOPENGROUP)
# define NXclosegroup MANGLE(NXICLOSEGROUP)
# define NXmakedata MANGLE(NXIMAKEDATA)
# define NXcompress MANGLE(NXICOMPRESS)
# define NXopendata MANGLE(NXIOPENDATA)
# define NXclosedata MANGLE(NXICLOSEDATA)
# define NXgetdata MANGLE(NXIGETDATA)
# define NXgetslab MANGLE(NXIGETSLAB)
# define NXgetattr MANGLE(NXIGETATTR)
# define NXgetdim MANGLE(NXIGETDIM)
# define NXputdata MANGLE(NXIPUTDATA)
# define NXputslab MANGLE(NXIPUTSLAB)
# define NXputattr MANGLE(NXIPUTATTR)
# define NXputdim MANGLE(NXIPUTDIM)
# define NXgetinfo MANGLE(NXIGETINFO)
# define NXgetgroupinfo MANGLE(NXIGETGROUPINFO)
# define NXsameID MANGLE(NXISAMEID)
# define NXinitgroupdir MANGLE(NXIINITGROUPDIR)
# define NXgetnextentry MANGLE(NXIGETNEXTENTRY)
# define NXgetattrinfo MANGLE(NXIGETATTRINFO)
# define NXinitattrdir MANGLE(NXIINITATTRDIR)
# define NXgetnextattr MANGLE(NXIGETNEXTATTR)
# define NXgetgroupID MANGLE(NXIGETGROUPID)
# define NXgetdataID MANGLE(NXIGETDATAID)
# define NXmakelink MANGLE(NXIMAKELINK)
# define NXmalloc MANGLE(NXIMALLOC)
# define NXfree MANGLE(NXIFREE)
/* FORTRAN helpers - for NeXus internal use only */
# define NXfopen MANGLE(NXIFOPEN)
# define NXfclose MANGLE(NXIFCLOSE)
# define NXfflush MANGLE(NXIFFLUSH)
# define NXfmakedata MANGLE(NXIFMAKEDATA)
# define NXfcompmakedata MANGLE(NXIFCOMPMAKEDATA)
# define NXfcompress MANGLE(NXIFCOMPRESS)
# define NXfputattr MANGLE(NXIFPUTATTR)
#else
# error Cannot compile - unknown operating system
#endif
/*
* Standard interface
*/
#ifdef __cplusplus
extern "C" {
#endif /* __cplusplus */
NX_EXTERNAL NXstatus CALLING_STYLE NXopen(CONSTCHAR * filename, NXaccess access_method, NXhandle* pHandle);
NX_EXTERNAL NXstatus CALLING_STYLE NXclose(NXhandle* pHandle);
NX_EXTERNAL NXstatus CALLING_STYLE NXflush(NXhandle* pHandle);
NX_EXTERNAL NXstatus CALLING_STYLE NXmakegroup (NXhandle handle, CONSTCHAR *name, char* NXclass);
NX_EXTERNAL NXstatus CALLING_STYLE NXopengroup (NXhandle handle, CONSTCHAR *name, char* NXclass);
NX_EXTERNAL NXstatus CALLING_STYLE NXclosegroup(NXhandle handle);
NX_EXTERNAL NXstatus CALLING_STYLE NXmakedata (NXhandle handle, CONSTCHAR* label, int datatype, int rank, int dim[]);
NX_EXTERNAL NXstatus CALLING_STYLE NXcompmakedata (NXhandle handle, CONSTCHAR* label, int datatype, int rank, int dim[], int comp_typ, int bufsize[]);
NX_EXTERNAL NXstatus CALLING_STYLE NXcompress (NXhandle handle, int compr_type);
NX_EXTERNAL NXstatus CALLING_STYLE NXopendata (NXhandle handle, CONSTCHAR* label);
NX_EXTERNAL NXstatus CALLING_STYLE NXclosedata(NXhandle handle);
NX_EXTERNAL NXstatus CALLING_STYLE NXputdata(NXhandle handle, void* data);
NX_EXTERNAL NXstatus CALLING_STYLE NXputattr(NXhandle handle, CONSTCHAR* name, void* data, int iDataLen, int iType);
NX_EXTERNAL NXstatus CALLING_STYLE NXputslab(NXhandle handle, void* data, int start[], int size[]);
NX_EXTERNAL NXstatus CALLING_STYLE NXgetdataID(NXhandle handle, NXlink* pLink);
NX_EXTERNAL NXstatus CALLING_STYLE NXmakelink(NXhandle handle, NXlink* pLink);
NX_EXTERNAL NXstatus CALLING_STYLE NXgetdata(NXhandle handle, void* data);
NX_EXTERNAL NXstatus CALLING_STYLE NXgetinfo(NXhandle handle, int* rank, int dimension[], int* datatype);
NX_EXTERNAL NXstatus CALLING_STYLE NXgetnextentry(NXhandle handle, NXname name, NXname nxclass, int* datatype);
NX_EXTERNAL NXstatus CALLING_STYLE NXgetslab(NXhandle handle, void* data, int start[], int size[]);
NX_EXTERNAL NXstatus CALLING_STYLE NXgetnextattr(NXhandle handle, NXname pName, int *iLength, int *iType);
NX_EXTERNAL NXstatus CALLING_STYLE NXgetattr(NXhandle handle, char* name, void* data, int* iDataLen, int* iType);
NX_EXTERNAL NXstatus CALLING_STYLE NXgetattrinfo(NXhandle handle, int* no_items);
NX_EXTERNAL NXstatus CALLING_STYLE NXgetgroupID(NXhandle handle, NXlink* pLink);
NX_EXTERNAL NXstatus CALLING_STYLE NXgetgroupinfo(NXhandle handle, int* no_items, NXname name, NXname nxclass);
NX_EXTERNAL NXstatus CALLING_STYLE NXsameID(NXhandle handle, NXlink* pFirstID, NXlink* pSecondID);
NX_EXTERNAL NXstatus CALLING_STYLE NXinitgroupdir(NXhandle handle);
NX_EXTERNAL NXstatus CALLING_STYLE NXinitattrdir(NXhandle handle);
NX_EXTERNAL NXstatus CALLING_STYLE NXmalloc(void** data, int rank, int dimensions[], int datatype);
NX_EXTERNAL NXstatus CALLING_STYLE NXfree(void** data);
/*-----------------------------------------------------------------------
A non Nexus standard function to set an error handler
*/
NX_EXTERNAL void CALLING_STYLE NXMSetError(void *pData, void (*ErrFunc)(void *pD, char *text));
/*
another special function for setting the default cache size for HDF-5
*/
NX_EXTERNAL NXstatus CALLING_STYLE NXsetcache(long newVal);
#ifdef __cplusplus
}
#endif /* __cplusplus */
#endif /*NEXUSAPI*/

68
libs/cygwin/include/napi4.h Executable file
View File

@ -0,0 +1,68 @@
/*---------------------------------------------------------------------------
NeXus - Neutron & X-ray Common Data Format
Application Program Interface (HDF4) Header File
Copyright (C) 1997-2002 Mark Koennecke, Przemek Klosowski
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public
License along with this library; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
For further information, see <http://www.neutron.anl.gov/NeXus/>
----------------------------------------------------------------------------*/
#define NXSIGNATURE 959697
#include "napi4.c"
/*
* HDF4 interface
*/
NXstatus CALLING_STYLE NX4open(CONSTCHAR *filename, NXaccess access_method, NXhandle* pHandle);
NXstatus CALLING_STYLE NX4close(NXhandle* pHandle);
NXstatus CALLING_STYLE NX4flush(NXhandle* pHandle);
NXstatus CALLING_STYLE NX4makegroup (NXhandle handle, CONSTCHAR* Vgroup, char* NXclass);
NXstatus CALLING_STYLE NX4opengroup (NXhandle handle, CONSTCHAR* Vgroup, char* NXclass);
NXstatus CALLING_STYLE NX4closegroup(NXhandle handle);
NXstatus CALLING_STYLE NX4makedata (NXhandle handle, CONSTCHAR* label, int datatype, int rank, int dim[]);
NXstatus CALLING_STYLE NX4compmakedata (NXhandle handle, CONSTCHAR* label, int datatype, int rank, int dim[], int comp_typ, int bufsize[]);
NXstatus CALLING_STYLE NX4compress (NXhandle handle, int compr_type);
NXstatus CALLING_STYLE NX4opendata (NXhandle handle, CONSTCHAR* label);
NXstatus CALLING_STYLE NX4closedata(NXhandle handle);
NXstatus CALLING_STYLE NX4getdata(NXhandle handle, void* data);
NXstatus CALLING_STYLE NX4getslab(NXhandle handle, void* data, int start[], int size[]);
NXstatus CALLING_STYLE NX4getattr(NXhandle handle, char* name, void* data, int* iDataLen, int* iType);
NXstatus CALLING_STYLE NX4putdata(NXhandle handle, void* data);
NXstatus CALLING_STYLE NX4putslab(NXhandle handle, void* data, int start[], int size[]);
NXstatus CALLING_STYLE NX4putattr(NXhandle handle, CONSTCHAR* name, void* data, int iDataLen, int iType);
NXstatus CALLING_STYLE NX4getinfo(NXhandle handle, int* rank, int dimension[], int* datatype);
NXstatus CALLING_STYLE NX4getgroupinfo(NXhandle handle, int* no_items, NXname name, NXname nxclass);
NXstatus CALLING_STYLE NX4initgroupdir(NXhandle handle);
NXstatus CALLING_STYLE NX4getnextentry(NXhandle handle, NXname name, NXname nxclass, int* datatype);
NXstatus CALLING_STYLE NX4getattrinfo(NXhandle handle, int* no_items);
NXstatus CALLING_STYLE NX4initattrdir(NXhandle handle);
NXstatus CALLING_STYLE NX4getnextattr(NXhandle handle, NXname pName, int *iLength, int *iType);
NXstatus CALLING_STYLE NX4getgroupID(NXhandle handle, NXlink* pLink);
NXstatus CALLING_STYLE NX4getdataID(NXhandle handle, NXlink* pLink);
NXstatus CALLING_STYLE NX4makelink(NXhandle handle, NXlink* pLink);
NXstatus CALLING_STYLE NX4sameID(NXhandle handle, NXlink* pFirstID, NXlink* pSecondID);

72
libs/cygwin/include/napi5.h Executable file
View File

@ -0,0 +1,72 @@
/*---------------------------------------------------------------------------
NeXus - Neutron & X-ray Common Data Format
Application Program Interface (HDF5) Header File
Copyright (C) 1997-2002 Mark Koennecke, Przemek Klosowski
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public
License along with this library; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
For further information, see <http://www.neutron.anl.gov/NeXus/>
----------------------------------------------------------------------------*/
#define NX5SIGNATURE 959695
#include <hdf5.h>
#include "napi5.c"
/* HDF5 interface */
NXstatus CALLING_STYLE NX5open(CONSTCHAR *filename, NXaccess access_method, NXhandle* pHandle);
NXstatus CALLING_STYLE NX5close(NXhandle* pHandle);
NXstatus CALLING_STYLE NX5flush(NXhandle* pHandle);
NXstatus CALLING_STYLE NX5makegroup (NXhandle handle, CONSTCHAR *name, char* NXclass);
NXstatus CALLING_STYLE NX5opengroup (NXhandle handle, CONSTCHAR *name, char* NXclass);
NXstatus CALLING_STYLE NX5closegroup(NXhandle handle);
NXstatus CALLING_STYLE NX5makedata (NXhandle handle, CONSTCHAR* label, int datatype, int rank, int dim[]);
NXstatus CALLING_STYLE NX5compmakedata (NXhandle handle, CONSTCHAR* label, int datatype, int rank, int dim[], int comp_typ, int bufsize[]);
NXstatus CALLING_STYLE NX5compress (NXhandle handle, int compr_type);
NXstatus CALLING_STYLE NX5opendata (NXhandle handle, CONSTCHAR* label);
NXstatus CALLING_STYLE NX5closedata(NXhandle handle);
NXstatus CALLING_STYLE NX5putdata(NXhandle handle, void* data);
NXstatus CALLING_STYLE NX5putattr(NXhandle handle, CONSTCHAR* name, void* data, int iDataLen, int iType);
NXstatus CALLING_STYLE NX5putslab(NXhandle handle, void* data, int start[], int size[]);
NXstatus CALLING_STYLE NX5getdataID(NXhandle handle, NXlink* pLink);
NXstatus CALLING_STYLE NX5makelink(NXhandle handle, NXlink* pLink);
NXstatus CALLING_STYLE NX5getdata(NXhandle handle, void* data);
NXstatus CALLING_STYLE NX5getinfo(NXhandle handle, int* rank, int dimension[], int* datatype);
NXstatus CALLING_STYLE NX5getnextentry(NXhandle handle, NXname name, NXname nxclass, int* datatype);
NXstatus CALLING_STYLE NX5getslab(NXhandle handle, void* data, int start[], int size[]);
NXstatus CALLING_STYLE NX5getnextattr(NXhandle handle, NXname pName, int *iLength, int *iType);
NXstatus CALLING_STYLE NX5getattr(NXhandle handle, char* name, void* data, int* iDataLen, int* iType);
NXstatus CALLING_STYLE NX5getattrinfo(NXhandle handle, int* no_items);
NXstatus CALLING_STYLE NX5getgroupID(NXhandle handle, NXlink* pLink);
NXstatus CALLING_STYLE NX5getgroupinfo(NXhandle handle, int* no_items, NXname name, NXname nxclass);
NXstatus CALLING_STYLE NX5sameID(NXhandle handle, NXlink* pFirstID, NXlink* pSecondID);
NXstatus CALLING_STYLE NX5initgroupdir(NXhandle handle);
NXstatus CALLING_STYLE NX5initattrdir(NXhandle handle);
herr_t nxgroup_info(hid_t loc_id, const char *name, void *op_data);
herr_t attr_info(hid_t loc_id, const char *name, void *opdata);
herr_t group_info(hid_t loc_id, const char *name, void *opdata);

90
libs/cygwin/include/napif.inc Executable file
View File

@ -0,0 +1,90 @@
C------------------------------------------------------------------------------
C NeXus - Neutron & X-ray Common Data Format
C
C Application Program Interface (Fortran 77) Header File
C
C Copyright (C) 1997-2002 Freddie Akeroyd, Mark Koennecke
C
C This library is free software; you can redistribute it and/or
C modify it under the terms of the GNU Lesser General Public
C License as published by the Free Software Foundation; either
C version 2 of the License, or (at your option) any later version.
C
C This library is distributed in the hope that it will be useful,
C but WITHOUT ANY WARRANTY; without even the implied warranty of
C MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
C Lesser General Public License for more details.
C
C You should have received a copy of the GNU Lesser General Public
C License along with this library; if not, write to the Free Software
C Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
C
C For further information, see <http://www.neutron.anl.gov/NeXus/>
C
C $Id: napif.inc,v 1.1.1.1 2004/11/02 15:54:58 cvs Exp $
C------------------------------------------------------------------------------
C *** Version of NeXus interface - should be consistent with napi.h!
CHARACTER*5 NEXUS_VERSION
PARAMETER(NEXUS_VERSION='2.0.0')
C *** NXaccess enum - access modes for NXopen
INTEGER NXACC_READ,NXACC_RDWR,NXACC_CREATE,
+ NXACC_CREATE4,NXACC_CREATE5
PARAMETER(NXACC_READ=1,NXACC_RDWR=2,NXACC_CREATE=3,
+ NXACC_CREATE4=4,NXACC_CREATE5=5)
C *** NXHANDLESIZE should be the size of an INTEGER*4 array that is (at least)
C *** large enough to hold an NXhandle structure
INTEGER NXHANDLESIZE
PARAMETER(NXHANDLESIZE=600)
C *** NXLINKSIZE is (at least) the size of an INTEGER*4 array that can hold
C *** an NXlink structure: we'll assume 64bit alignment of structure members for safety
INTEGER NXLINKSIZE
PARAMETER(NXLINKSIZE=1028)
C *** Possible NXstatus values - these are returned by all NX routines
INTEGER NX_OK,NX_ERROR,NX_EOD
PARAMETER(NX_OK=1,NX_ERROR=0,NX_EOD=-1)
C *** Maximum values defined in HDF standard
INTEGER NX_MAXRANK,NX_MAXNAMELEN
PARAMETER(NX_MAXRANK=32,NX_MAXNAMELEN=64)
C *** HDF datatypes used by Nexus - see hntdefs.h in HDF distribution
INTEGER DFNT_FLOAT32,DFNT_FLOAT64,DFNT_INT8,DFNT_UINT8,DFNT_INT16,
+ DFNT_UINT16,DFNT_INT32,DFNT_UINT32,DFNT_UCHAR8,DFNT_CHAR8
PARAMETER(DFNT_FLOAT32=5,DFNT_FLOAT64=6,DFNT_INT8=20,
+ DFNT_UINT8=21,DFNT_INT16=22,DFNT_UINT16=23,
+ DFNT_INT32=24,DFNT_UINT32=25,DFNT_UCHAR8=3,
+ DFNT_CHAR8=4)
C *** NeXus names for HDF parameters
INTEGER NX_FLOAT32,NX_FLOAT64,NX_INT8,NX_UINT8,NX_INT16,
+ NX_UINT16,NX_INT32,NX_UINT32,NX_CHAR
PARAMETER(NX_FLOAT32=5,NX_FLOAT64=6,NX_INT8=20,
+ NX_UINT8=21,NX_INT16=22,NX_UINT16=23,
+ NX_INT32=24,NX_UINT32=25,NX_CHAR=4)
C**** NeXus compression schemes
INTEGER NX_COMP_NONE, NX_COMP_LZW, NX_COMP_HUF, NX_COMP_RLE
PARAMETER(NX_COMP_NONE=100,NX_COMP_LZW=200,NX_COMP_RLE=300,
+ NX_COMP_HUF=400)
C**** NeXus Unlimited Dimension
INTEGER NX_UNLIMITED
PARAMETER (NX_UNLIMITED=-1)
INTEGER NXOPEN, NXCLOSE, NXMAKEGROUP, NXOPENGROUP, NXCLOSEGROUP,
+ NXMAKEDATA, NXOPENDATA, NXCLOSEDATA, NXGETDATA,
+ NXGETCHARDATA, NXGETSLAB, NXGETATTR, NXGETCHARATTR,
+ NXGETDIM, NXPUTDATA, NXPUTCHARDATA, NXPUTSLAB,
+ NXPUTATTR, NXPUTCHARATTR, NXPUTDIM, NXGETINFO,
+ NXGETNEXTENTRY, NXGETNEXTATTR, NXGETGROUPID, NXMAKELINK,
+ NXGETGROUPINFO, NXINITGROUPDIR, NXGETATTRINFO,
+ NXINITATTRDIR, NXFLUSH, NXCOMPMAKEDATA
LOGICAL NXSAMEID
EXTERNAL NXOPEN, NXCLOSE, NXMAKEGROUP, NXOPENGROUP, NXCLOSEGROUP,
+ NXMAKEDATA, NXOPENDATA, NXCLOSEDATA, NXGETDATA,
+ NXGETCHARDATA, NXGETSLAB, NXGETATTR, NXGETCHARATTR,
+ NXGETDIM, NXPUTDATA, NXPUTCHARDATA, NXPUTSLAB,
+ NXPUTATTR, NXPUTCHARATTR, NXPUTDIM, NXGETINFO,
+ NXGETNEXTENTRY, NXGETNEXTATTR, NXGETGROUPID, NXMAKELINK,
+ NXGETGROUPINFO, NXINITGROUPDIR, NXGETATTRINFO,
+ NXINITATTRDIR, NXFLUSH, NXCOMPMAKEDATA, NXSAMEID

89
libs/cygwin/include/napif__.inc Executable file
View File

@ -0,0 +1,89 @@
C------------------------------------------------------------------------------
C NeXus - Neutron & X-ray Common Data Format
C
C Application Program Interface (Fortran 77) Header File
C
C Copyright (C) 1997-2002 Freddie Akeroyd, Mark Koennecke
C
C This library is free software; you can redistribute it and/or
C modify it under the terms of the GNU Lesser General Public
C License as published by the Free Software Foundation; either
C version 2 of the License, or (at your option) any later version.
C
C This library is distributed in the hope that it will be useful,
C but WITHOUT ANY WARRANTY; without even the implied warranty of
C MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
C Lesser General Public License for more details.
C
C You should have received a copy of the GNU Lesser General Public
C License along with this library; if not, write to the Free Software
C Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
C
C For further information, see <http://www.neutron.anl.gov/NeXus/>
C
C $Id: napif__.inc,v 1.1.1.1 2004/11/02 15:54:58 cvs Exp $
C------------------------------------------------------------------------------
C *** Version of NeXus interface - should be consistent with napi.h!
CHARACTER*5 NEXUS_VERSION
PARAMETER(NEXUS_VERSION='2.0.0')
C *** NXaccess enum - access modes for NXopen
INTEGER NXACC_READ,NXACC_RDWR,NXACC_CREATE, NXACC_CREATE5
PARAMETER(NXACC_READ=1,NXACC_RDWR=2,NXACC_CREATE=3,
+ NXACC_CREATE4=4,NXACC_CREATE5=5)
C *** NXHANDLESIZE should be the size of an INTEGER*4 array that is (at least)
C *** large enough to hold an NXhandle structure
INTEGER NXHANDLESIZE
PARAMETER(NXHANDLESIZE=600)
C *** NXLINKSIZE is (at least) the size of an INTEGER*4 array that can hold
C *** an NXlink structure: we'll assume 64bit alignment of structure members for safety
INTEGER NXLINKSIZE
PARAMETER(NXLINKSIZE=1028)
C *** Possible NXstatus values - these are returned by all NX routines
INTEGER NX_OK,NX_ERROR,NX_EOD
PARAMETER(NX_OK=1,NX_ERROR=0,NX_EOD=-1)
C *** Maximum values defined in HDF standard
INTEGER NX_MAXRANK,NX_MAXNAMELEN
PARAMETER(NX_MAXRANK=32,NX_MAXNAMELEN=64)
C *** HDF datatypes used by Nexus - see hntdefs.h in HDF distribution
INTEGER DFNT_FLOAT32,DFNT_FLOAT64,DFNT_INT8,DFNT_UINT8,DFNT_INT16,
+ DFNT_UINT16,DFNT_INT32,DFNT_UINT32,DFNT_UCHAR8,DFNT_CHAR8
PARAMETER(DFNT_FLOAT32=5,DFNT_FLOAT64=6,DFNT_INT8=20,
+ DFNT_UINT8=21,DFNT_INT16=22,DFNT_UINT16=23,
+ DFNT_INT32=24,DFNT_UINT32=25,DFNT_UCHAR8=3,
+ DFNT_CHAR8=4)
C *** NeXus names for HDF parameters
INTEGER NX_FLOAT32,NX_FLOAT64,NX_INT8,NX_UINT8,NX_INT16,
+ NX_UINT16,NX_INT32,NX_UINT32,NX_CHAR
PARAMETER(NX_FLOAT32=5,NX_FLOAT64=6,NX_INT8=20,
+ NX_UINT8=21,NX_INT16=22,NX_UINT16=23,
+ NX_INT32=24,NX_UINT32=25,NX_CHAR=4)
C**** NeXus compression schemes
INTEGER NX_COMP_NONE, NX_COMP_LZW, NX_COMP_HUF, NX_COMP_RLE
PARAMETER(NX_COMP_NONE=100,NX_COMP_LZW=200,NX_COMP_RLE=300,
+ NX_COMP_HUF=400)
C**** NeXus Unlimited Dimension
INTEGER NX_UNLIMITED
PARAMETER (NX_UNLIMITED=-1)
INTEGER NXOPEN, NXCLOSE, NXMAKEGROUP, NXOPENGROUP, NXCLOSEGROUP,
+ NXMAKEDATA, NXOPENDATA, NXCLOSEDATA, NXGETDATA,
+ NXGETCHARDATA, NXGETSLAB, NXGETATTR, NXGETCHARATTR,
+ NXGETDIM, NXPUTDATA, NXPUTCHARDATA, NXPUTSLAB,
+ NXPUTATTR, NXPUTCHARATTR, NXPUTDIM, NXGETINFO,
+ NXGETNEXTENTRY, NXGETNEXTATTR, NXGETGROUPID, NXMAKELINK,
+ NXGETGROUPINFO, NXINITGROUPDIR, NXGETATTRINFO,
+ NXINITATTRDIR, NXFLUSH, NXCOMPMAKEDATA
LOGICAL NXSAMEID
EXTERNAL NXOPEN, NXCLOSE, NXMAKEGROUP, NXOPENGROUP, NXCLOSEGROUP,
+ NXMAKEDATA, NXOPENDATA, NXCLOSEDATA, NXGETDATA,
+ NXGETCHARDATA, NXGETSLAB, NXGETATTR, NXGETCHARATTR,
+ NXGETDIM, NXPUTDATA, NXPUTCHARDATA, NXPUTSLAB,
+ NXPUTATTR, NXPUTCHARATTR, NXPUTDIM, NXGETINFO,
+ NXGETNEXTENTRY, NXGETNEXTATTR, NXGETGROUPID, NXMAKELINK,
+ NXGETGROUPINFO, NXINITGROUPDIR, NXGETATTRINFO,
+ NXINITATTRDIR, NXFLUSH, NXCOMPMAKEDATA, NXSAMEID

View File

@ -0,0 +1,8 @@
/libNeXus.a/1.1/Fri Nov 5 08:46:11 2004//
/libdf.a/1.1/Fri Nov 5 08:46:11 2004//
/libhdf5.a/1.1/Fri Nov 5 08:46:11 2004//
/libhdf5.la/1.2/Fri Nov 12 10:31:30 2004//
/libhdf5.settings/1.3/Fri Nov 12 10:31:00 2004//
/libmfhdf.a/1.1/Fri Nov 5 08:46:11 2004//
/libudport.a/1.1/Fri Nov 5 08:46:11 2004//
D

View File

@ -0,0 +1 @@
analysis/fit/libs/cygwin/lib

1
libs/cygwin/lib/CVS/Root Normal file
View File

@ -0,0 +1 @@
/afs/psi.ch/project/sinq/cvs

BIN
libs/cygwin/lib/libNeXus.a Executable file

Binary file not shown.

BIN
libs/cygwin/lib/libdf.a Executable file

Binary file not shown.

BIN
libs/cygwin/lib/libhdf5.a Executable file

Binary file not shown.

32
libs/cygwin/lib/libhdf5.la Executable file
View File

@ -0,0 +1,32 @@
# libhdf5.la - a libtool library file
# Generated by ltmain.sh - GNU libtool 1.4.2 (1.922.2.53 2001/09/11 03:18:52)
#
# Please DO NOT delete this file!
# It is necessary for linking the library.
# The name that we can dlopen(3).
dlname=''
# Names of this library.
library_names=''
# The name of the static archive.
old_library='libhdf5.a'
# Libraries that this one depends upon.
dependency_libs=' -lz'
# Version information for libhdf5.
current=0
age=0
revision=0
# Is this an already installed library?
installed=yes
# Files to dlopen/dlpreopen
dlopen=''
dlpreopen=''
# Directory that this library needs to be installed in:
libdir='/cygdrive/c/work/hdf5-1.6.3-patch/hdf5/lib'

View File

@ -0,0 +1,52 @@
SUMMARY OF THE HDF5 CONFIGURATION
=================================
HDF5 Version: 1.6.3-patch
Configured on: Mon Oct 11 08:49:04 WEST 2004
Configured by: theidel@pc4192
Configure mode: production
Host system: i686-pc-cygwin
Byte sex: little-endian
Libraries: static, shared
Parallel support: no
Installation point: /cygdrive/c/work/hdf5-1.6.3-patch/hdf5
Compiler: /usr/bin/gcc
Compiler switches: -O2 -UH5_DEBUG_API -DNDEBUG
Extra libraries: -lz -lm
Archiver: ar
Ranlib: ranlib
Debugged Packages:
API Tracing: no
File addresses: large
Configure Summary
Compiling Options:
Compilation Mode: Production
C Compiler: gcc
CFLAGS: -O2
CPPFLAGS: -UH5_DEBUG_API -DNDEBUG
LDFLAGS:
Debug Mode: None
Shared Libraries: Yes
Static Libraries: Yes
Statically Linked Executables: No
Tracing: No
Optimization Instrumentation: No
Languages:
C++: No
Fortran: No
Features:
dmalloc: No
Function Stack Tracing: Disabled
GASS: No
GPFS: No
HDF5 v1.4 Compatibility: No
hsize_t: Large
I/O filters (external): deflate
I/O filters (internal): shuffle,fletcher32
Linux Large File Support (LFS): Disabled
MPE: No
Pablo: No
Parallel HDF5: No
SRB: No
Stream VFD: Enabled
Threadsafety: Disabled

BIN
libs/cygwin/lib/libmfhdf.a Executable file

Binary file not shown.

BIN
libs/cygwin/lib/libudport.a Executable file

Binary file not shown.