+ (((r > (h)->man_dtable.max_direct_rows) ? (r - (h)->man_dtable.max_direct_rows) : 0)  * (h)->man_dtable.cparam.width * (h)->sizeof_addr) /* Size of entries for indirect blocks */ \
 
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
 * Copyright by The HDF Group.                                               *
 * 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 COPYING file, which can be found at the root of the source code       *
 * distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases.  *
 * If you do not have access to either file, you may request a copy from     *
 * help@hdfgroup.org.                                                        *
 * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
/*
 * Programmer:  Quincey Koziol <koziol@ncsa.uiuc.edu>
 *      Friday, February 24, 2006
 *
 * Purpose: This file contains declarations which are visible only within
 *      the H5HF package.  Source files outside the H5HF package should
 *      include H5HFprivate.h instead.
 */
#if !(defined H5HF_FRIEND || defined H5HF_MODULE)
#error "Do not include this file outside the H5HF package!"
#endif
#ifndef _H5HFpkg_H
#define _H5HFpkg_H
/* Get package's private header */
#include "H5HFprivate.h"
/* Other private headers needed by this file */
#include "H5ACprivate.h"    /* Metadata cache           */
#include "H5B2private.h"    /* v2 B-trees               */
#include "H5FLprivate.h"    /* Free Lists                           */
#include "H5FSprivate.h"    /* Free space manager           */
#include "H5SLprivate.h"    /* Skip lists               */
/**************************/
/* Package Private Macros */
/**************************/
/* Size of checksum information (on disk) */
#define H5HF_SIZEOF_CHKSUM      4
/* "Standard" size of prefix information for fractal heap metadata */
#define H5HF_METADATA_PREFIX_SIZE(c) (                                        \
    H5_SIZEOF_MAGIC   /* Signature */                                         \
    + (unsigned)1 /* Version */                                               \
    + ((c) ? (unsigned)H5HF_SIZEOF_CHKSUM : (unsigned)0) /* Metadata checksum */ \
    )