00001 /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 00002 * Copyright by The HDF Group. * 00003 * Copyright by the Board of Trustees of the University of Illinois. * 00004 * All rights reserved. * 00005 * * 00006 * This file is part of HDF5. The full HDF5 copyright notice, including * 00007 * terms governing use, modification, and redistribution, is contained in * 00008 * the files COPYING and Copyright.html. COPYING can be found at the root * 00009 * of the source code distribution tree; Copyright.html can be found at the * 00010 * root level of an installed copy of the electronic HDF5 document set and * 00011 * is linked from the top-level documents page. It can also be found at * 00012 * http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have * 00013 * access to either file, you may request a copy from help@hdfgroup.org. * 00014 * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ 00015 00016 #ifndef _H5PTpublic_H 00017 #define _H5PTpublic_H 00018 00019 00020 #ifdef __cplusplus 00021 extern "C" { 00022 #endif 00023 00024 /*------------------------------------------------------------------------- 00025 * 00026 * Create/Open/Close functions 00027 * 00028 *------------------------------------------------------------------------- 00029 */ 00030 00031 H5_HLDLL hid_t H5PTcreate_fl ( hid_t loc_id, 00032 const char *dset_name, 00033 hid_t dtype_id, 00034 hsize_t chunk_size, 00035 int compression ); 00036 00037 #ifdef VLPT_REMOVED 00038 H5_HLDLL hid_t H5PTcreate_vl ( hid_t loc_id, 00039 const char *dset_name, 00040 hsize_t chunk_size ); 00041 #endif /* VLPT_REMOVED */ 00042 00043 H5_HLDLL hid_t H5PTopen( hid_t loc_id, 00044 const char *dset_name ); 00045 00046 H5_HLDLL herr_t H5PTclose( hid_t table_id ); 00047 00048 00049 /*------------------------------------------------------------------------- 00050 * 00051 * Write functions 00052 * 00053 *------------------------------------------------------------------------- 00054 */ 00055 00056 H5_HLDLL herr_t H5PTappend( hid_t table_id, 00057 size_t nrecords, 00058 const void * data ); 00059 00060 /*------------------------------------------------------------------------- 00061 * 00062 * Read functions 00063 * 00064 *------------------------------------------------------------------------- 00065 */ 00066 00067 00068 H5_HLDLL herr_t H5PTget_next( hid_t table_id, 00069 size_t nrecords, 00070 void * data ); 00071 00072 H5_HLDLL herr_t H5PTread_packets( hid_t table_id, 00073 hsize_t start, 00074 size_t nrecords, 00075 void *data ); 00076 00077 /*------------------------------------------------------------------------- 00078 * 00079 * Inquiry functions 00080 * 00081 *------------------------------------------------------------------------- 00082 */ 00083 00084 00085 H5_HLDLL herr_t H5PTget_num_packets( hid_t table_id, 00086 hsize_t *nrecords ); 00087 00088 H5_HLDLL herr_t H5PTis_valid( hid_t table_id ); 00089 00090 #ifdef VLPT_REMOVED 00091 H5_HLDLL herr_t H5PTis_varlen( hid_t table_id ); 00092 #endif /* VLPT_REMOVED */ 00093 00094 /*------------------------------------------------------------------------- 00095 * 00096 * Packet Table "current index" functions 00097 * 00098 *------------------------------------------------------------------------- 00099 */ 00100 00101 H5_HLDLL herr_t H5PTcreate_index( hid_t table_id ); 00102 00103 H5_HLDLL herr_t H5PTset_index( hid_t table_id, 00104 hsize_t pt_index ); 00105 00106 H5_HLDLL herr_t H5PTget_index( hid_t table_id, 00107 hsize_t *pt_index ); 00108 00109 /*------------------------------------------------------------------------- 00110 * 00111 * Memory Management functions 00112 * 00113 *------------------------------------------------------------------------- 00114 */ 00115 00116 #ifdef VLPT_REMOVED 00117 H5_HLDLL herr_t H5PTfree_vlen_readbuff( hid_t table_id, 00118 size_t bufflen, 00119 void * buff ); 00120 #endif /* VLPT_REMOVED */ 00121 00122 #ifdef __cplusplus 00123 } 00124 #endif 00125 00126 #endif 00127