4634
|
1 /* |
|
2 |
7017
|
3 Copyright (C) 2003, 2005, 2007 John W. Eaton |
4634
|
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 |
7016
|
9 Free Software Foundation; either version 3 of the License, or (at your |
|
10 option) any later version. |
4634
|
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 |
7016
|
18 along with Octave; see the file COPYING. If not, see |
|
19 <http://www.gnu.org/licenses/>. |
4634
|
20 |
|
21 */ |
|
22 |
|
23 #if !defined (octave_ls_mat5_h) |
|
24 #define octave_ls_mat5_h 1 |
|
25 |
|
26 enum mat5_data_type |
|
27 { |
10313
|
28 miINT8 = 1, // 8 bit signed |
|
29 miUINT8, // 8 bit unsigned |
|
30 miINT16, // 16 bit signed |
|
31 miUINT16, // 16 bit unsigned |
|
32 miINT32, // 32 bit signed |
|
33 miUINT32, // 32 bit unsigned |
|
34 miSINGLE, // IEEE 754 single precision float |
4634
|
35 miRESERVE1, |
10313
|
36 miDOUBLE, // IEEE 754 double precision float |
4634
|
37 miRESERVE2, |
|
38 miRESERVE3, |
10313
|
39 miINT64, // 64 bit signed |
|
40 miUINT64, // 64 bit unsigned |
|
41 miMATRIX, // MATLAB array |
|
42 miCOMPRESSED, // Compressed data |
|
43 miUTF8, // Unicode UTF-8 Encoded Character Data |
|
44 miUTF16, // Unicode UTF-16 Encoded Character Data |
|
45 miUTF32 // Unicode UTF-32 Encoded Character Data |
4634
|
46 }; |
|
47 |
|
48 extern int |
|
49 read_mat5_binary_file_header (std::istream& is, bool& swap, |
10313
|
50 bool quiet = false, |
|
51 const std::string& filename = std::string()); |
4634
|
52 extern std::string |
|
53 read_mat5_binary_element (std::istream& is, const std::string& filename, |
10313
|
54 bool swap, bool& global, octave_value& tc); |
4634
|
55 extern bool |
|
56 save_mat5_binary_element (std::ostream& os, |
10313
|
57 const octave_value& tc, const std::string& name, |
|
58 bool mark_as_global, bool mat7_format, |
|
59 bool save_as_floats, bool compressing = false); |
4634
|
60 |
|
61 #endif |