HDF5 C++ API
1.8.15
Main Page
Classes
Examples
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 files COPYING and Copyright.html. COPYING can be found at the root *
10
* of the source code distribution tree; Copyright.html can be found at the *
11
* root level of an installed copy of the electronic HDF5 document set and *
12
* is linked from the top-level documents page. It can also be found at *
13
* http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have *
14
* access to either file, you may request a copy from help@hdfgroup.org. *
15
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
16
17
#ifndef __H5Library_H
18
#define __H5Library_H
19
20
#ifndef H5_NO_NAMESPACE
21
namespace
H5 {
22
#endif
23
24
#ifndef DOXYGEN_SHOULD_SKIP_THIS
25
#define NOTATEXIT (-10) // just in case the HDF5 library use more
26
// negative constants. Note: the solution used for the atexit/global
27
// destructors is not reliable, and desperately needs improvement
28
// It is not even working, inifiteloop message still printed when
29
// calling H5close
30
#endif // DOXYGEN_SHOULD_SKIP_THIS
31
38
class
H5_DLLCPP
H5Library
{
39
public
:
40
#ifndef DOXYGEN_SHOULD_SKIP_THIS
41
static
bool
need_cleanup;
// indicates if H5close should be called
42
#endif // DOXYGEN_SHOULD_SKIP_THIS
43
44
// Initializes the HDF5 library.
45
static
void
open();
46
47
// Flushes all data to disk, closes files, and cleans up memory.
48
static
void
close();
49
50
// Instructs library not to install atexit cleanup routine
51
static
void
dontAtExit();
52
53
// Returns the HDF library release number.
54
static
void
getLibVersion(
unsigned
& majnum,
unsigned
& minnum,
unsigned
& relnum );
55
56
// Verifies that the arguments match the version numbers compiled
57
// into the library
58
static
void
checkVersion(
unsigned
majnum,
unsigned
minnum,
unsigned
relnum );
59
60
// Walks through all the garbage collection routines for the library,
61
// which are supposed to free any unused memory they have allocated.
62
static
void
garbageCollect();
63
64
// Sets limits on the different kinds of free lists.
65
static
void
setFreeListLimits(
int
reg_global_lim,
int
reg_list_lim,
int
66
arr_global_lim,
int
arr_list_lim,
int
blk_global_lim,
int
blk_list_lim);
67
68
private
:
69
// Default constructor - no instance ever created
70
H5Library
() {};
71
72
};
73
#ifndef H5_NO_NAMESPACE
74
}
75
#endif
76
#endif // __H5Library_H
H5::H5Library
Class H5Library operates the HDF5 library globably.
Definition:
H5Library.h:38
Generated on Fri May 8 2015 13:17:58 for HDF5 C++ API by
1.8.5