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 /* 00017 * This file contains library private information about the H5FO module 00018 */ 00019 #ifndef _H5FOprivate_H 00020 #define _H5FOprivate_H 00021 00022 #ifdef LATER 00023 #include "H5FOpublic.h" 00024 #endif /* LATER */ 00025 00026 /* Private headers needed by this file */ 00027 #include "H5private.h" /* Generic Functions */ 00028 #include "H5Fprivate.h" /* File access */ 00029 #include "H5SLprivate.h" /* Skip lists */ 00030 00031 /* Typedefs */ 00032 00033 /* Typedef for open object cache */ 00034 typedef H5SL_t H5FO_t; /* Currently, all open objects are stored in skip list */ 00035 00036 /* Macros */ 00037 00038 /* Private routines */ 00039 H5_DLL herr_t H5FO_create(const H5F_t *f); 00040 H5_DLL void *H5FO_opened(const H5F_t *f, haddr_t addr); 00041 H5_DLL herr_t H5FO_insert(const H5F_t *f, haddr_t addr, void *obj, hbool_t delete_flag); 00042 H5_DLL herr_t H5FO_delete(H5F_t *f, hid_t dxpl_id, haddr_t addr); 00043 H5_DLL herr_t H5FO_mark(const H5F_t *f, haddr_t addr, hbool_t deleted); 00044 H5_DLL hbool_t H5FO_marked(const H5F_t *f, haddr_t addr); 00045 H5_DLL herr_t H5FO_dest(const H5F_t *f); 00046 H5_DLL herr_t H5FO_top_create(H5F_t *f); 00047 H5_DLL herr_t H5FO_top_incr(const H5F_t *f, haddr_t addr); 00048 H5_DLL herr_t H5FO_top_decr(const H5F_t *f, haddr_t addr); 00049 H5_DLL hsize_t H5FO_top_count(const H5F_t *f, haddr_t addr); 00050 H5_DLL herr_t H5FO_top_dest(H5F_t *f); 00051 00052 #endif /* _H5FOprivate_H */ 00053