1 //////////////////////////////////////////////////////////////////////// 2 // 3 // Copyright (C) 1996-2021 The Octave Project Developers 4 // 5 // See the file COPYRIGHT.md in the top-level directory of this 6 // distribution or <https://octave.org/copyright/>. 7 // 8 // This file is part of Octave. 9 // 10 // Octave is free software: you can redistribute it and/or modify it 11 // under the terms of the GNU General Public License as published by 12 // the Free Software Foundation, either version 3 of the License, or 13 // (at your option) any later version. 14 // 15 // Octave is distributed in the hope that it will be useful, but 16 // WITHOUT ANY WARRANTY; without even the implied warranty of 17 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 18 // GNU General Public License for more details. 19 // 20 // You should have received a copy of the GNU General Public License 21 // along with Octave; see the file COPYING. If not, see 22 // <https://www.gnu.org/licenses/>. 23 // 24 //////////////////////////////////////////////////////////////////////// 25 26 #if ! defined (octave_mach_info_h) 27 #define octave_mach_info_h 1 28 29 #include "octave-config.h" 30 31 #include <string> 32 33 namespace octave 34 { 35 namespace mach_info 36 { 37 enum float_format 38 { 39 // If these values change, you must also change the values 40 // returned by octave_get_float_format. 41 42 flt_fmt_unknown = 0, 43 flt_fmt_ieee_little_endian = 1, 44 flt_fmt_ieee_big_endian = 2, 45 }; 46 47 float_format native_float_format (void); 48 49 bool words_big_endian (void); 50 51 bool words_little_endian (void); 52 53 float_format string_to_float_format (const std::string&); 54 55 std::string float_format_as_string (float_format); 56 } 57 } 58 59 #endif 60