ls-mat5.h

Go to the documentation of this file.
00001 /*
00002 
00003 Copyright (C) 2003-2012 John W. Eaton
00004 
00005 This file is part of Octave.
00006 
00007 Octave is free software; you can redistribute it and/or modify it
00008 under the terms of the GNU General Public License as published by the
00009 Free Software Foundation; either version 3 of the License, or (at your
00010 option) any later version.
00011 
00012 Octave is distributed in the hope that it will be useful, but WITHOUT
00013 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
00014 FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
00015 for more details.
00016 
00017 You should have received a copy of the GNU General Public License
00018 along with Octave; see the file COPYING.  If not, see
00019 <http://www.gnu.org/licenses/>.
00020 
00021 */
00022 
00023 #if !defined (octave_ls_mat5_h)
00024 #define octave_ls_mat5_h 1
00025 
00026 enum mat5_data_type
00027   {
00028     miINT8 = 1,                 // 8 bit signed
00029     miUINT8,                    // 8 bit unsigned
00030     miINT16,                    // 16 bit signed
00031     miUINT16,                   // 16 bit unsigned
00032     miINT32,                    // 32 bit signed
00033     miUINT32,                   // 32 bit unsigned
00034     miSINGLE,                   // IEEE 754 single precision float
00035     miRESERVE1,
00036     miDOUBLE,                   // IEEE 754 double precision float
00037     miRESERVE2,
00038     miRESERVE3,
00039     miINT64,                    // 64 bit signed
00040     miUINT64,                   // 64 bit unsigned
00041     miMATRIX,                   // MATLAB array
00042     miCOMPRESSED,               // Compressed data
00043     miUTF8,                     // Unicode UTF-8 Encoded Character Data
00044     miUTF16,                    // Unicode UTF-16 Encoded Character Data
00045     miUTF32                     // Unicode UTF-32 Encoded Character Data
00046   };
00047 
00048 extern int
00049 read_mat5_binary_file_header (std::istream& is, bool& swap,
00050                               bool quiet = false,
00051                               const std::string& filename = std::string());
00052 extern std::string
00053 read_mat5_binary_element (std::istream& is, const std::string& filename,
00054                           bool swap, bool& global, octave_value& tc);
00055 extern bool
00056 save_mat5_binary_element (std::ostream& os,
00057                           const octave_value& tc, const std::string& name,
00058                           bool mark_as_global, bool mat7_format,
00059                           bool save_as_floats, bool compressing = false);
00060 
00061 #endif
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Defines