GNU Octave  4.2.1
A high-level interpreted language, primarily intended for numerical computations, mostly compatible with Matlab
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
oct-hdf5-types.cc
Go to the documentation of this file.
1 /*
2 
3 Copyright (C) 2016-2017 John W. Eaton
4 
5 This file is part of Octave.
6 
7 Octave is free software; you can redistribute it and/or modify it
8 under the terms of the GNU General Public License as published by the
9 Free Software Foundation; either version 3 of the License, or (at your
10 option) any later version.
11 
12 Octave is distributed in the hope that it will be useful, but WITHOUT
13 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
14 FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
15 for more details.
16 
17 You should have received a copy of the GNU General Public License
18 along with Octave; see the file COPYING. If not, see
19 <http://www.gnu.org/licenses/>.
20 
21 */
22 
23 #if defined (HAVE_CONFIG_H)
24 # include "config.h"
25 #endif
26 
27 #include "error.h"
28 #include "errwarn.h"
29 #include "oct-hdf5.h"
30 
31 bool
32 check_hdf5_types (bool warn)
33 {
34  static bool checked = false;
35  static bool ok = false;
36 
37  if (! checked)
38  {
39 #if defined (HAVE_HDF5)
40 
41  ok = sizeof (octave_hdf5_id) >= sizeof (hid_t);
42 
43  if (warn && ! ok)
45  ("Octave:internal",
46  "the size of octave_hdf5_id is smaller than the size of HDF5 hid_t");
47 
48  ok = sizeof (octave_hdf5_err) >= sizeof (herr_t);
49 
50  if (warn && ! ok)
52  ("Octave:internal",
53  "the size of octave_hdf5_err is smaller than the size of HDF5 herr_t");
54 #else
55 
56  octave_unused_parameter (warn);
57 
58  warn_disabled_feature ("check_hdf5_id_type", "HDF5");
59 
60 #endif
61 
62  checked = true;
63  }
64 
65  return ok;
66 }
void warning_with_id(const char *id, const char *fmt,...)
Definition: error.cc:803
int octave_hdf5_err
void warn_disabled_feature(const std::string &fcn, const std::string &feature, const std::string &pkg)
Definition: errwarn.cc:308
int64_t octave_hdf5_id
bool check_hdf5_types(bool warn)