1 /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 2 * Copyright by The HDF Group. * 3 * Copyright by the Board of Trustees of the University of Illinois. * 4 * All rights reserved. * 5 * * 6 * This file is part of HDF5. The full HDF5 copyright notice, including * 7 * terms governing use, modification, and redistribution, is contained in * 8 * the COPYING file, which can be found at the root of the source code * 9 * distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases. * 10 * If you do not have access to either file, you may request a copy from * 11 * help@hdfgroup.org. * 12 * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ 13 14 /* 15 * This file contains private information about the H5RS module 16 */ 17 #ifndef _H5RSprivate_H 18 #define _H5RSprivate_H 19 20 /**************************************/ 21 /* Public headers needed by this file */ 22 /**************************************/ 23 #ifdef LATER 24 #include "H5RSpublic.h" 25 #endif /* LATER */ 26 27 /***************************************/ 28 /* Private headers needed by this file */ 29 /***************************************/ 30 #include "H5private.h" 31 32 /************/ 33 /* Typedefs */ 34 /************/ 35 36 /* Typedef for reference counted string (defined in H5RS.c) */ 37 typedef struct H5RS_str_t H5RS_str_t; 38 39 /**********/ 40 /* Macros */ 41 /**********/ 42 43 /********************/ 44 /* Private routines */ 45 /********************/ 46 H5_DLL H5RS_str_t *H5RS_create(const char *s); 47 H5_DLL H5RS_str_t *H5RS_wrap(const char *s); 48 H5_DLL H5RS_str_t *H5RS_own(char *s); 49 H5_DLL herr_t H5RS_decr(H5RS_str_t *rs); 50 H5_DLL herr_t H5RS_incr(H5RS_str_t *rs); 51 H5_DLL H5RS_str_t *H5RS_dup(H5RS_str_t *s); 52 H5_DLL H5RS_str_t *H5RS_dup_str(const char *s); 53 H5_DLL int H5RS_cmp(const H5RS_str_t *rs1, const H5RS_str_t *rs2); 54 H5_DLL ssize_t H5RS_len(const H5RS_str_t *rs); 55 H5_DLL char *H5RS_get_str(const H5RS_str_t *rs); 56 H5_DLL unsigned H5RS_get_count(const H5RS_str_t *rs); 57 58 #endif /* _H5RSprivate_H */ 59 60