HDF5 C++ API  1.8.20
 All Classes Namespaces Functions Variables Typedefs Friends Pages
H5Library.h
1 // C++ informative line for the emacs editor: -*- C++ -*-
2 /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
3  * Copyright by The HDF Group. *
4  * Copyright by the Board of Trustees of the University of Illinois. *
5  * All rights reserved. *
6  * *
7  * This file is part of HDF5. The full HDF5 copyright notice, including *
8  * terms governing use, modification, and redistribution, is contained in *
9  * the COPYING file, which can be found at the root of the source code *
10  * distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases. *
11  * If you do not have access to either file, you may request a copy from *
12  * help@hdfgroup.org. *
13  * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
14 
15 #ifndef __H5Library_H
16 #define __H5Library_H
17 
18 namespace H5 {
19 
26 class H5_DLLCPP H5Library {
27  public:
28  // Initializes the HDF5 library.
29  static void open();
30 
31  // Flushes all data to disk, closes files, and cleans up memory.
32  static void close();
33 
34  // Instructs library not to install atexit cleanup routine
35  static void dontAtExit();
36 
37  // Returns the HDF library release number.
38  static void getLibVersion(unsigned& majnum, unsigned& minnum, unsigned& relnum);
39 
40  // Verifies that the arguments match the version numbers compiled
41  // into the library
42  static void checkVersion(unsigned majnum, unsigned minnum, unsigned relnum);
43 
44  // Walks through all the garbage collection routines for the library,
45  // which are supposed to free any unused memory they have allocated.
46  static void garbageCollect();
47 
48  // Sets limits on the different kinds of free lists.
49  static void setFreeListLimits(int reg_global_lim, int reg_list_lim, int
50  arr_global_lim, int arr_list_lim, int blk_global_lim, int blk_list_lim);
51 
52  // Initializes C++ library and registers terminating functions at exit.
53  // Only for the library functions, not for user-defined functions.
54  static void initH5cpp(void);
55 
56  // Sends request for terminating the HDF5 library.
57  static void termH5cpp(void);
58 
59 #ifndef DOXYGEN_SHOULD_SKIP_THIS
60  private:
61  // Default constructor - no instance ever created from outsiders
62  H5Library();
63 
64  // Destructor
65  ~H5Library();
66 #endif // DOXYGEN_SHOULD_SKIP_THIS
67 
68 }; // end of H5Library
69 } // namespace H5
70 
71 #endif // __H5Library_H
Class H5Library operates the HDF5 library globably.
Definition: H5Library.h:26


The HDF Group Help Desk:
  Copyright by The HDF Group
and the Board of Trustees of the University of Illinois