summaryrefslogtreecommitdiffstats
path: root/scilab/modules
diff options
context:
space:
mode:
authorSamuel GOUGEON <sgougeon@free.fr>2016-08-28 06:31:48 +0200
committerClément DAVID <clement.david@esi-group.com>2021-04-01 20:13:01 +0200
commit4cf41e8516d2c054e53b51aaba411ee7f50c0989 (patch)
treec139afc0351f66b2f99d8ccc9f4894ca4170ce69 /scilab/modules
parent92f54c2a9ba77a9e2f34b9c36f320a2baf5b78a5 (diff)
downloadscilab-4cf41e8516d2c054e53b51aaba411ee7f50c0989.zip
scilab-4cf41e8516d2c054e53b51aaba411ee7f50c0989.tar.gz
* Bug #14397 fixed - mgeti did not read u-int64 > 2^52
http://bugzilla.scilab.org/14397 Change-Id: I4115f4564df90a5cbf408b8e1a3b1667ee981be3
Diffstat (limited to 'scilab/modules')
-rw-r--r--scilab/modules/core/src/c/core.vcxproj826
-rw-r--r--scilab/modules/fileio/Makefile.am1
-rw-r--r--scilab/modules/fileio/Makefile.in16
-rw-r--r--scilab/modules/fileio/help/en_US/mget.xml400
-rw-r--r--scilab/modules/fileio/help/ja_JP/mget.xml488
-rw-r--r--scilab/modules/fileio/help/ru_RU/mget.xml396
-rw-r--r--scilab/modules/fileio/includes/fileio_gw.hxx1
-rw-r--r--scilab/modules/fileio/sci_gateway/cpp/fileio_gw.cpp1
-rw-r--r--scilab/modules/fileio/sci_gateway/cpp/fileio_gw.vcxproj1
-rw-r--r--scilab/modules/fileio/sci_gateway/cpp/fileio_gw.vcxproj.filters3
-rw-r--r--scilab/modules/fileio/sci_gateway/cpp/sci_mgeti.cpp212
-rw-r--r--scilab/modules/fileio/tests/nonreg_tests/bug_14397.tst41
-rw-r--r--scilab/modules/fileio/tests/unit_tests/mgeti.tst33
-rw-r--r--scilab/modules/integer/macros/mgeti.sci63
14 files changed, 1201 insertions, 1281 deletions
diff --git a/scilab/modules/core/src/c/core.vcxproj b/scilab/modules/core/src/c/core.vcxproj
index 0e49fa4..809796c 100644
--- a/scilab/modules/core/src/c/core.vcxproj
+++ b/scilab/modules/core/src/c/core.vcxproj
@@ -1,93 +1,93 @@
1<?xml version="1.0" encoding="utf-8"?> 1<?xml version="1.0" encoding="utf-8"?>
2<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> 2<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
3 <ItemGroup Label="ProjectConfigurations"> 3 <ItemGroup Label="ProjectConfigurations">
4 <ProjectConfiguration Include="Debug|Win32"> 4 <ProjectConfiguration Include="Debug|Win32">
5 <Configuration>Debug</Configuration> 5 <Configuration>Debug</Configuration>
6 <Platform>Win32</Platform> 6 <Platform>Win32</Platform>
7 </ProjectConfiguration> 7 </ProjectConfiguration>
8 <ProjectConfiguration Include="Debug|x64"> 8 <ProjectConfiguration Include="Debug|x64">
9 <Configuration>Debug</Configuration> 9 <Configuration>Debug</Configuration>
10 <Platform>x64</Platform> 10 <Platform>x64</Platform>
11 </ProjectConfiguration> 11 </ProjectConfiguration>
12 <ProjectConfiguration Include="Release|Win32"> 12 <ProjectConfiguration Include="Release|Win32">
13 <Configuration>Release</Configuration> 13 <Configuration>Release</Configuration>
14 <Platform>Win32</Platform> 14 <Platform>Win32</Platform>
15 </ProjectConfiguration> 15 </ProjectConfiguration>
16 <ProjectConfiguration Include="Release|x64"> 16 <ProjectConfiguration Include="Release|x64">
17 <Configuration>Release</Configuration> 17 <Configuration>Release</Configuration>
18 <Platform>x64</Platform> 18 <Platform>x64</Platform>
19 </ProjectConfiguration> 19 </ProjectConfiguration>
20 </ItemGroup> 20 </ItemGroup>
21 <PropertyGroup Label="Globals"> 21 <PropertyGroup Label="Globals">
22 <ProjectGuid>{C6E2BC17-34D8-46E4-85F3-6293CB21ADCD}</ProjectGuid> 22 <ProjectGuid>{C6E2BC17-34D8-46E4-85F3-6293CB21ADCD}</ProjectGuid>
23 <RootNamespace>core</RootNamespace> 23 <RootNamespace>core</RootNamespace>
24 <Keyword>Win32Proj</Keyword> 24 <Keyword>Win32Proj</Keyword>
25 <WindowsTargetPlatformVersion>8.1</WindowsTargetPlatformVersion> 25 <WindowsTargetPlatformVersion>8.1</WindowsTargetPlatformVersion>
26 </PropertyGroup> 26 </PropertyGroup>
27 <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" /> 27 <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
28 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration"> 28 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
29 <ConfigurationType>DynamicLibrary</ConfigurationType> 29 <ConfigurationType>DynamicLibrary</ConfigurationType>
30 <CharacterSet>MultiByte</CharacterSet> 30 <CharacterSet>MultiByte</CharacterSet>
31 <WholeProgramOptimization>false</WholeProgramOptimization> 31 <WholeProgramOptimization>false</WholeProgramOptimization>
32 <PlatformToolset>v141</PlatformToolset> 32 <PlatformToolset>v141</PlatformToolset>
33 </PropertyGroup> 33 </PropertyGroup>
34 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration"> 34 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
35 <ConfigurationType>DynamicLibrary</ConfigurationType> 35 <ConfigurationType>DynamicLibrary</ConfigurationType>
36 <CharacterSet>MultiByte</CharacterSet> 36 <CharacterSet>MultiByte</CharacterSet>
37 <PlatformToolset>v141</PlatformToolset> 37 <PlatformToolset>v141</PlatformToolset>
38 </PropertyGroup> 38 </PropertyGroup>
39 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration"> 39 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
40 <ConfigurationType>DynamicLibrary</ConfigurationType> 40 <ConfigurationType>DynamicLibrary</ConfigurationType>
41 <CharacterSet>MultiByte</CharacterSet> 41 <CharacterSet>MultiByte</CharacterSet>
42 <WholeProgramOptimization>false</WholeProgramOptimization> 42 <WholeProgramOptimization>false</WholeProgramOptimization>
43 <PlatformToolset>v141</PlatformToolset> 43 <PlatformToolset>v141</PlatformToolset>
44 </PropertyGroup> 44 </PropertyGroup>
45 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration"> 45 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
46 <ConfigurationType>DynamicLibrary</ConfigurationType> 46 <ConfigurationType>DynamicLibrary</ConfigurationType>
47 <CharacterSet>MultiByte</CharacterSet> 47 <CharacterSet>MultiByte</CharacterSet>
48 <PlatformToolset>v141</PlatformToolset> 48 <PlatformToolset>v141</PlatformToolset>
49 </PropertyGroup> 49 </PropertyGroup>
50 <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" /> 50 <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
51 <ImportGroup Label="ExtensionSettings"> 51 <ImportGroup Label="ExtensionSettings">
52 </ImportGroup> 52 </ImportGroup>
53 <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets"> 53 <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
54 <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> 54 <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
55 </ImportGroup> 55 </ImportGroup>
56 <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets"> 56 <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
57 <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> 57 <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
58 </ImportGroup> 58 </ImportGroup>
59 <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets"> 59 <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
60 <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> 60 <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
61 </ImportGroup> 61 </ImportGroup>
62 <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets"> 62 <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
63 <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> 63 <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
64 </ImportGroup> 64 </ImportGroup>
65 <PropertyGroup Label="UserMacros" /> 65 <PropertyGroup Label="UserMacros" />
66 <PropertyGroup> 66 <PropertyGroup>
67 <_ProjectFileVersion>10.0.30319.1</_ProjectFileVersion> 67 <_ProjectFileVersion>10.0.30319.1</_ProjectFileVersion>
68 <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(SolutionDir)bin\</OutDir> 68 <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(SolutionDir)bin\</OutDir>
69 <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(ProjectDir)$(Configuration)\</IntDir> 69 <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(ProjectDir)$(Configuration)\</IntDir>
70 <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">false</LinkIncremental> 70 <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">false</LinkIncremental>
71 <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)bin\</OutDir> 71 <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)bin\</OutDir>
72 <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(ProjectDir)$(Configuration)\</IntDir> 72 <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(ProjectDir)$(Configuration)\</IntDir>
73 <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">false</LinkIncremental> 73 <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">false</LinkIncremental>
74 <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(SolutionDir)bin\</OutDir> 74 <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(SolutionDir)bin\</OutDir>
75 <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(ProjectDir)$(Configuration)\</IntDir> 75 <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(ProjectDir)$(Configuration)\</IntDir>
76 <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental> 76 <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
77 <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)bin\</OutDir> 77 <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)bin\</OutDir>
78 <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(ProjectDir)$(Configuration)\</IntDir> 78 <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(ProjectDir)$(Configuration)\</IntDir>
79 <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental> 79 <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
80 </PropertyGroup> 80 </PropertyGroup>
81 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'"> 81 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
82 <ClCompile> 82 <ClCompile>
83 <Optimization>Disabled</Optimization> 83 <Optimization>Disabled</Optimization>
84 <AdditionalIncludeDirectories>.;../../includes;../../../../libs/GetWindowsVersion;../../../../libs/intl;../../../../libs/libxml2;../../../../libs/libxml2/libxml;../../../mexlib/includes;../../../api_scilab/includes;../../../string/includes;../../../functions/includes;../../../dynamic_link/includes;../../../action_binding/includes;../../../output_stream/includes;../../../fileio/includes;../../../elementary_functions/includes;../../../tclsci/includes;../../../localization/includes;../../../tclsci/includes/tcltk;../../../windows_tools/includes;../../../windows_tools/src/c;../../../windows_tools/src/c/scilab_windows;../../../call_scilab/includes;../../../call_scilab/src/c;../../../graphics/includes;../../../io/includes;../../../console/includes;../../../preferences/includes;../../../history_manager/includes;../../../threads/includes;../../../external_objects/includes;../../../functions_manager/includes;../../../jvm/includes;../../../gui/includes;../../../ast/includes/types;../../../ast/includes/ast;../../../ast/includes/analysis;../../../ast/includes/exps;../../../ast/includes/operations;../../../ast/includes/symbol;../../../ast/includes/system_env;../../../ast/includes/parse;../../../fftw/includes;../../../ui_data/includes</AdditionalIncludeDirectories> 84 <AdditionalIncludeDirectories>.;../../includes;../../../../libs/GetWindowsVersion;../../../../libs/intl;../../../../libs/libxml2;../../../../libs/libxml2/libxml;../../../mexlib/includes;../../../api_scilab/includes;../../../string/includes;../../../functions/includes;../../../dynamic_link/includes;../../../action_binding/includes;../../../output_stream/includes;../../../fileio/includes;../../../elementary_functions/includes;../../../tclsci/includes;../../../localization/includes;../../../tclsci/includes/tcltk;../../../windows_tools/includes;../../../windows_tools/src/c;../../../windows_tools/src/c/scilab_windows;../../../call_scilab/includes;../../../call_scilab/src/c;../../../graphics/includes;../../../io/includes;../../../console/includes;../../../preferences/includes;../../../history_manager/includes;../../../threads/includes;../../../external_objects/includes;../../../functions_manager/includes;../../../jvm/includes;../../../gui/includes;../../../ast/includes/types;../../../ast/includes/ast;../../../ast/includes/analysis;../../../ast/includes/exps;../../../ast/includes/operations;../../../ast/includes/symbol;../../../ast/includes/system_env;../../../ast/includes/parse;../../../fftw/includes;../../../ui_data/includes</AdditionalIncludeDirectories>
85 <PreprocessorDefinitions>_CRT_SECURE_NO_DEPRECATE;_DEBUG;_WINDOWS;_USRDLL;CORE_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions> 85 <PreprocessorDefinitions>_CRT_SECURE_NO_DEPRECATE;_DEBUG;_WINDOWS;_USRDLL;CORE_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
86 <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary> 86 <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
87 <WarningLevel>Level3</WarningLevel> 87 <WarningLevel>Level3</WarningLevel>
88 </ClCompile> 88 </ClCompile>
89 <PreLinkEvent> 89 <PreLinkEvent>
90 <Message>Make dependencies</Message> 90 <Message>Make dependencies</Message>
91 <Command>setlocal EnableDelayedExpansion 91 <Command>setlocal EnableDelayedExpansion
92cd $(ConfigurationName) 92cd $(ConfigurationName)
93set LIST_OBJ= 93set LIST_OBJ=
@@ -97,37 +97,37 @@ copy $(ProjectName).def+..\core_export.def ..\$(ProjectName).def &gt;nul
97del *.def &gt;nul 97del *.def &gt;nul
98cd .. 98cd ..
99 99
100</Command> 100</Command>
101 </PreLinkEvent> 101 </PreLinkEvent>
102 <Link> 102 <Link>
103 <AdditionalDependencies>functions_manager.lib;%(AdditionalDependencies)</AdditionalDependencies> 103 <AdditionalDependencies>functions_manager.lib;%(AdditionalDependencies)</AdditionalDependencies>
104 <OutputFile>$(SolutionDir)bin\$(ProjectName).dll</OutputFile> 104 <OutputFile>$(SolutionDir)bin\$(ProjectName).dll</OutputFile>
105 <GenerateDebugInformation>true</GenerateDebugInformation> 105 <GenerateDebugInformation>true</GenerateDebugInformation>
106 <SubSystem>Windows</SubSystem> 106 <SubSystem>Windows</SubSystem>
107 <ImportLibrary>$(SolutionDir)bin\$(ProjectName).lib</ImportLibrary> 107 <ImportLibrary>$(SolutionDir)bin\$(ProjectName).lib</ImportLibrary>
108 <TargetMachine>MachineX86</TargetMachine> 108 <TargetMachine>MachineX86</TargetMachine>
109 <CLRUnmanagedCodeCheck>true</CLRUnmanagedCodeCheck> 109 <CLRUnmanagedCodeCheck>true</CLRUnmanagedCodeCheck>
110 <RandomizedBaseAddress>false</RandomizedBaseAddress> 110 <RandomizedBaseAddress>false</RandomizedBaseAddress>
111 <ModuleDefinitionFile>core.def</ModuleDefinitionFile> 111 <ModuleDefinitionFile>core.def</ModuleDefinitionFile>
112 </Link> 112 </Link>
113 <PreBuildEvent> 113 <PreBuildEvent>
114 <Command>lib /DEF:"$(ProjectDir)functions_manager_Import.def" /SUBSYSTEM:WINDOWS /MACHINE:$(Platform) /OUT:"$(ProjectDir)functions_manager.lib" 1&gt;NUL 2&gt;NUL 114 <Command>lib /DEF:"$(ProjectDir)functions_manager_Import.def" /SUBSYSTEM:WINDOWS /MACHINE:$(Platform) /OUT:"$(ProjectDir)functions_manager.lib" 1&gt;NUL 2&gt;NUL
115</Command> 115</Command>
116 </PreBuildEvent> 116 </PreBuildEvent>
117 </ItemDefinitionGroup> 117 </ItemDefinitionGroup>
118 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'"> 118 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
119 <Midl> 119 <Midl>
120 <TargetEnvironment>X64</TargetEnvironment> 120 <TargetEnvironment>X64</TargetEnvironment>
121 </Midl> 121 </Midl>
122 <ClCompile> 122 <ClCompile>
123 <Optimization>Disabled</Optimization> 123 <Optimization>Disabled</Optimization>
124 <AdditionalIncludeDirectories>.;../../includes;../../../../libs/GetWindowsVersion;../../../../libs/intl;../../../../libs/libxml2;../../../../libs/libxml2/libxml;../../../mexlib/includes;../../../api_scilab/includes;../../../string/includes;../../../functions/includes;../../../dynamic_link/includes;../../../action_binding/includes;../../../output_stream/includes;../../../fileio/includes;../../../elementary_functions/includes;../../../tclsci/includes;../../../localization/includes;../../../tclsci/includes/tcltk;../../../windows_tools/includes;../../../windows_tools/src/c;../../../windows_tools/src/c/scilab_windows;../../../call_scilab/includes;../../../call_scilab/src/c;../../../graphics/includes;../../../io/includes;../../../console/includes;../../../preferences/includes;../../../history_manager/includes;../../../threads/includes;../../../external_objects/includes;../../../functions_manager/includes;../../../jvm/includes;../../../gui/includes;../../../ast/includes/types;../../../ast/includes/ast;../../../ast/includes/analysis;../../../ast/includes/exps;../../../ast/includes/operations;../../../ast/includes/symbol;../../../ast/includes/system_env;../../../ast/includes/parse;../../../fftw/includes;../../../ui_data/includes</AdditionalIncludeDirectories> 124 <AdditionalIncludeDirectories>.;../../includes;../../../../libs/GetWindowsVersion;../../../../libs/intl;../../../../libs/libxml2;../../../../libs/libxml2/libxml;../../../mexlib/includes;../../../api_scilab/includes;../../../string/includes;../../../functions/includes;../../../dynamic_link/includes;../../../action_binding/includes;../../../output_stream/includes;../../../fileio/includes;../../../elementary_functions/includes;../../../tclsci/includes;../../../localization/includes;../../../tclsci/includes/tcltk;../../../windows_tools/includes;../../../windows_tools/src/c;../../../windows_tools/src/c/scilab_windows;../../../call_scilab/includes;../../../call_scilab/src/c;../../../graphics/includes;../../../io/includes;../../../console/includes;../../../preferences/includes;../../../history_manager/includes;../../../threads/includes;../../../external_objects/includes;../../../functions_manager/includes;../../../jvm/includes;../../../gui/includes;../../../ast/includes/types;../../../ast/includes/ast;../../../ast/includes/analysis;../../../ast/includes/exps;../../../ast/includes/operations;../../../ast/includes/symbol;../../../ast/includes/system_env;../../../ast/includes/parse;../../../fftw/includes;../../../ui_data/includes</AdditionalIncludeDirectories>
125 <PreprocessorDefinitions>_CRT_SECURE_NO_DEPRECATE;_DEBUG;_WINDOWS;_USRDLL;CORE_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions> 125 <PreprocessorDefinitions>_CRT_SECURE_NO_DEPRECATE;_DEBUG;_WINDOWS;_USRDLL;CORE_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
126 <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary> 126 <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
127 <WarningLevel>Level3</WarningLevel> 127 <WarningLevel>Level3</WarningLevel>
128 </ClCompile> 128 </ClCompile>
129 <PreLinkEvent> 129 <PreLinkEvent>
130 <Message>Make dependencies</Message> 130 <Message>Make dependencies</Message>
131 <Command>setlocal EnableDelayedExpansion 131 <Command>setlocal EnableDelayedExpansion
132cd $(ConfigurationName) 132cd $(ConfigurationName)
133set LIST_OBJ= 133set LIST_OBJ=
@@ -137,37 +137,37 @@ copy $(ProjectName).def+..\core_export.def ..\$(ProjectName).def &gt;nul
137del *.def &gt;nul 137del *.def &gt;nul
138cd .. 138cd ..
139 139
140</Command> 140</Command>
141 </PreLinkEvent> 141 </PreLinkEvent>
142 <Link> 142 <Link>
143 <AdditionalDependencies>functions_manager.lib;%(AdditionalDependencies)</AdditionalDependencies> 143 <AdditionalDependencies>functions_manager.lib;%(AdditionalDependencies)</AdditionalDependencies>
144 <OutputFile>$(SolutionDir)bin\$(ProjectName).dll</OutputFile> 144 <OutputFile>$(SolutionDir)bin\$(ProjectName).dll</OutputFile>
145 <GenerateDebugInformation>true</GenerateDebugInformation> 145 <GenerateDebugInformation>true</GenerateDebugInformation>
146 <SubSystem>Windows</SubSystem> 146 <SubSystem>Windows</SubSystem>
147 <ImportLibrary>$(SolutionDir)bin\$(ProjectName).lib</ImportLibrary> 147 <ImportLibrary>$(SolutionDir)bin\$(ProjectName).lib</ImportLibrary>
148 <TargetMachine>MachineX64</TargetMachine> 148 <TargetMachine>MachineX64</TargetMachine>
149 <CLRUnmanagedCodeCheck>true</CLRUnmanagedCodeCheck> 149 <CLRUnmanagedCodeCheck>true</CLRUnmanagedCodeCheck>
150 <RandomizedBaseAddress>false</RandomizedBaseAddress> 150 <RandomizedBaseAddress>false</RandomizedBaseAddress>
151 <ModuleDefinitionFile>core.def</ModuleDefinitionFile> 151 <ModuleDefinitionFile>core.def</ModuleDefinitionFile>
152 </Link> 152 </Link>
153 <PreBuildEvent> 153 <PreBuildEvent>
154 <Command>lib /DEF:"$(ProjectDir)functions_manager_Import.def" /SUBSYSTEM:WINDOWS /MACHINE:$(Platform) /OUT:"$(ProjectDir)functions_manager.lib" 1&gt;NUL 2&gt;NUL 154 <Command>lib /DEF:"$(ProjectDir)functions_manager_Import.def" /SUBSYSTEM:WINDOWS /MACHINE:$(Platform) /OUT:"$(ProjectDir)functions_manager.lib" 1&gt;NUL 2&gt;NUL
155</Command> 155</Command>
156 </PreBuildEvent> 156 </PreBuildEvent>
157 </ItemDefinitionGroup> 157 </ItemDefinitionGroup>
158 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'"> 158 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
159 <ClCompile> 159 <ClCompile>
160 <FavorSizeOrSpeed>Speed</FavorSizeOrSpeed> 160 <FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
161 <WholeProgramOptimization>false</WholeProgramOptimization> 161 <WholeProgramOptimization>false</WholeProgramOptimization>
162 <AdditionalIncludeDirectories>.;../../includes;../../../../libs/GetWindowsVersion;../../../../libs/intl;../../../../libs/libxml2;../../../../libs/libxml2/libxml;../../../mexlib/includes;../../../api_scilab/includes;../../../string/includes;../../../functions/includes;../../../dynamic_link/includes;../../../action_binding/includes;../../../output_stream/includes;../../../fileio/includes;../../../elementary_functions/includes;../../../tclsci/includes;../../../localization/includes;../../../tclsci/includes/tcltk;../../../windows_tools/includes;../../../windows_tools/src/c;../../../windows_tools/src/c/scilab_windows;../../../call_scilab/includes;../../../call_scilab/src/c;../../../graphics/includes;../../../io/includes;../../../console/includes;../../../preferences/includes;../../../history_manager/includes;../../../threads/includes;../../../external_objects/includes;../../../functions_manager/includes;../../../jvm/includes;../../../gui/includes;../../../ast/includes/types;../../../ast/includes/ast;../../../ast/includes/analysis;../../../ast/includes/exps;../../../ast/includes/operations;../../../ast/includes/symbol;../../../ast/includes/system_env;../../../ast/includes/parse;../../../fftw/includes;../../../ui_data/includes</AdditionalIncludeDirectories> 162 <AdditionalIncludeDirectories>.;../../includes;../../../../libs/GetWindowsVersion;../../../../libs/intl;../../../../libs/libxml2;../../../../libs/libxml2/libxml;../../../mexlib/includes;../../../api_scilab/includes;../../../string/includes;../../../functions/includes;../../../dynamic_link/includes;../../../action_binding/includes;../../../output_stream/includes;../../../fileio/includes;../../../elementary_functions/includes;../../../tclsci/includes;../../../localization/includes;../../../tclsci/includes/tcltk;../../../windows_tools/includes;../../../windows_tools/src/c;../../../windows_tools/src/c/scilab_windows;../../../call_scilab/includes;../../../call_scilab/src/c;../../../graphics/includes;../../../io/includes;../../../console/includes;../../../preferences/includes;../../../history_manager/includes;../../../threads/includes;../../../external_objects/includes;../../../functions_manager/includes;../../../jvm/includes;../../../gui/includes;../../../ast/includes/types;../../../ast/includes/ast;../../../ast/includes/analysis;../../../ast/includes/exps;../../../ast/includes/operations;../../../ast/includes/symbol;../../../ast/includes/system_env;../../../ast/includes/parse;../../../fftw/includes;../../../ui_data/includes</AdditionalIncludeDirectories>
163 <PreprocessorDefinitions>_CRT_SECURE_NO_DEPRECATE;NDEBUG;_WINDOWS;_USRDLL;CORE_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions> 163 <PreprocessorDefinitions>_CRT_SECURE_NO_DEPRECATE;NDEBUG;_WINDOWS;_USRDLL;CORE_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
164 <StringPooling>true</StringPooling> 164 <StringPooling>true</StringPooling>
165 <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> 165 <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
166 <WarningLevel>Level3</WarningLevel> 166 <WarningLevel>Level3</WarningLevel>
167 <MultiProcessorCompilation>true</MultiProcessorCompilation> 167 <MultiProcessorCompilation>true</MultiProcessorCompilation>
168 </ClCompile> 168 </ClCompile>
169 <PreLinkEvent> 169 <PreLinkEvent>
170 <Message>Make dependencies</Message> 170 <Message>Make dependencies</Message>
171 <Command>setlocal EnableDelayedExpansion 171 <Command>setlocal EnableDelayedExpansion
172cd $(ConfigurationName) 172cd $(ConfigurationName)
173set LIST_OBJ= 173set LIST_OBJ=
@@ -177,42 +177,42 @@ copy $(ProjectName).def+..\core_export.def ..\$(ProjectName).def &gt;nul
177del *.def &gt;nul 177del *.def &gt;nul
178cd .. 178cd ..
179 179
180</Command> 180</Command>
181 </PreLinkEvent> 181 </PreLinkEvent>
182 <Link> 182 <Link>
183 <AdditionalDependencies>functions_manager.lib;%(AdditionalDependencies)</AdditionalDependencies> 183 <AdditionalDependencies>functions_manager.lib;%(AdditionalDependencies)</AdditionalDependencies>
184 <OutputFile>$(SolutionDir)bin\$(ProjectName).dll</OutputFile> 184 <OutputFile>$(SolutionDir)bin\$(ProjectName).dll</OutputFile>
185 <GenerateDebugInformation>false</GenerateDebugInformation> 185 <GenerateDebugInformation>false</GenerateDebugInformation>
186 <SubSystem>Windows</SubSystem> 186 <SubSystem>Windows</SubSystem>
187 <OptimizeReferences>true</OptimizeReferences> 187 <OptimizeReferences>true</OptimizeReferences>
188 <EnableCOMDATFolding>true</EnableCOMDATFolding> 188 <EnableCOMDATFolding>true</EnableCOMDATFolding>
189 <ImportLibrary>$(SolutionDir)bin\$(ProjectName).lib</ImportLibrary> 189 <ImportLibrary>$(SolutionDir)bin\$(ProjectName).lib</ImportLibrary>
190 <TargetMachine>MachineX86</TargetMachine> 190 <TargetMachine>MachineX86</TargetMachine>
191 <CLRUnmanagedCodeCheck>true</CLRUnmanagedCodeCheck> 191 <CLRUnmanagedCodeCheck>true</CLRUnmanagedCodeCheck>
192 <RandomizedBaseAddress>false</RandomizedBaseAddress> 192 <RandomizedBaseAddress>false</RandomizedBaseAddress>
193 <ModuleDefinitionFile>core.def</ModuleDefinitionFile> 193 <ModuleDefinitionFile>core.def</ModuleDefinitionFile>
194 </Link> 194 </Link>
195 <PreBuildEvent> 195 <PreBuildEvent>
196 <Command>lib /DEF:"$(ProjectDir)functions_manager_Import.def" /SUBSYSTEM:WINDOWS /MACHINE:$(Platform) /OUT:"$(ProjectDir)functions_manager.lib" 1&gt;NUL 2&gt;NUL 196 <Command>lib /DEF:"$(ProjectDir)functions_manager_Import.def" /SUBSYSTEM:WINDOWS /MACHINE:$(Platform) /OUT:"$(ProjectDir)functions_manager.lib" 1&gt;NUL 2&gt;NUL
197</Command> 197</Command>
198 </PreBuildEvent> 198 </PreBuildEvent>
199 </ItemDefinitionGroup> 199 </ItemDefinitionGroup>
200 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'"> 200 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
201 <Midl> 201 <Midl>
202 <TargetEnvironment>X64</TargetEnvironment> 202 <TargetEnvironment>X64</TargetEnvironment>
203 </Midl> 203 </Midl>
204 <ClCompile> 204 <ClCompile>
205 <FavorSizeOrSpeed>Speed</FavorSizeOrSpeed> 205 <FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
206 <WholeProgramOptimization>false</WholeProgramOptimization> 206 <WholeProgramOptimization>false</WholeProgramOptimization>
207 <AdditionalIncludeDirectories>.;../../includes;../../../../libs/GetWindowsVersion;../../../../libs/intl;../../../../libs/libxml2;../../../../libs/libxml2/libxml;../../../mexlib/includes;../../../api_scilab/includes;../../../string/includes;../../../functions/includes;../../../dynamic_link/includes;../../../action_binding/includes;../../../output_stream/includes;../../../fileio/includes;../../../elementary_functions/includes;../../../tclsci/includes;../../../localization/includes;../../../tclsci/includes/tcltk;../../../windows_tools/includes;../../../windows_tools/src/c;../../../windows_tools/src/c/scilab_windows;../../../call_scilab/includes;../../../call_scilab/src/c;../../../graphics/includes;../../../io/includes;../../../console/includes;../../../preferences/includes;../../../history_manager/includes;../../../threads/includes;../../../external_objects/includes;../../../functions_manager/includes;../../../jvm/includes;../../../gui/includes;../../../ast/includes/types;../../../ast/includes/ast;../../../ast/includes/analysis;../../../ast/includes/exps;../../../ast/includes/operations;../../../ast/includes/symbol;../../../ast/includes/system_env;../../../ast/includes/parse;../../../fftw/includes;../../../ui_data/includes</AdditionalIncludeDirectories> 207 <AdditionalIncludeDirectories>.;../../includes;../../../../libs/GetWindowsVersion;../../../../libs/intl;../../../../libs/libxml2;../../../../libs/libxml2/libxml;../../../mexlib/includes;../../../api_scilab/includes;../../../string/includes;../../../functions/includes;../../../dynamic_link/includes;../../../action_binding/includes;../../../output_stream/includes;../../../fileio/includes;../../../elementary_functions/includes;../../../tclsci/includes;../../../localization/includes;../../../tclsci/includes/tcltk;../../../windows_tools/includes;../../../windows_tools/src/c;../../../windows_tools/src/c/scilab_windows;../../../call_scilab/includes;../../../call_scilab/src/c;../../../graphics/includes;../../../io/includes;../../../console/includes;../../../preferences/includes;../../../history_manager/includes;../../../threads/includes;../../../external_objects/includes;../../../functions_manager/includes;../../../jvm/includes;../../../gui/includes;../../../ast/includes/types;../../../ast/includes/ast;../../../ast/includes/analysis;../../../ast/includes/exps;../../../ast/includes/operations;../../../ast/includes/symbol;../../../ast/includes/system_env;../../../ast/includes/parse;../../../fftw/includes;../../../ui_data/includes</AdditionalIncludeDirectories>
208 <PreprocessorDefinitions>_CRT_SECURE_NO_DEPRECATE;NDEBUG;_WINDOWS;_USRDLL;CORE_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions> 208 <PreprocessorDefinitions>_CRT_SECURE_NO_DEPRECATE;NDEBUG;_WINDOWS;_USRDLL;CORE_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
209 <StringPooling>true</StringPooling> 209 <StringPooling>true</StringPooling>
210 <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> 210 <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
211 <WarningLevel>Level3</WarningLevel> 211 <WarningLevel>Level3</WarningLevel>
212 <MultiProcessorCompilation>true</MultiProcessorCompilation> 212 <MultiProcessorCompilation>true</MultiProcessorCompilation>
213 </ClCompile> 213 </ClCompile>
214 <PreLinkEvent> 214 <PreLinkEvent>
215 <Message>Make dependencies</Message> 215 <Message>Make dependencies</Message>
216 <Command>setlocal EnableDelayedExpansion 216 <Command>setlocal EnableDelayedExpansion
217cd $(ConfigurationName) 217cd $(ConfigurationName)
218set LIST_OBJ= 218set LIST_OBJ=
@@ -222,233 +222,233 @@ copy $(ProjectName).def+..\core_export.def ..\$(ProjectName).def &gt;nul
222del *.def &gt;nul 222del *.def &gt;nul
223cd .. 223cd ..
224 224
225</Command> 225</Command>
226 </PreLinkEvent> 226 </PreLinkEvent>
227 <Link> 227 <Link>
228 <AdditionalDependencies>functions_manager.lib;%(AdditionalDependencies)</AdditionalDependencies> 228 <AdditionalDependencies>functions_manager.lib;%(AdditionalDependencies)</AdditionalDependencies>
229 <OutputFile>$(SolutionDir)bin\$(ProjectName).dll</OutputFile> 229 <OutputFile>$(SolutionDir)bin\$(ProjectName).dll</OutputFile>
230 <GenerateDebugInformation>false</GenerateDebugInformation> 230 <GenerateDebugInformation>false</GenerateDebugInformation>
231 <SubSystem>Windows</SubSystem> 231 <SubSystem>Windows</SubSystem>
232 <OptimizeReferences>true</OptimizeReferences> 232 <OptimizeReferences>true</OptimizeReferences>
233 <EnableCOMDATFolding>true</EnableCOMDATFolding> 233 <EnableCOMDATFolding>true</EnableCOMDATFolding>
234 <ImportLibrary>$(SolutionDir)bin\$(ProjectName).lib</ImportLibrary> 234 <ImportLibrary>$(SolutionDir)bin\$(ProjectName).lib</ImportLibrary>
235 <TargetMachine>MachineX64</TargetMachine> 235 <TargetMachine>MachineX64</TargetMachine>
236 <CLRUnmanagedCodeCheck>true</CLRUnmanagedCodeCheck> 236 <CLRUnmanagedCodeCheck>true</CLRUnmanagedCodeCheck>
237 <RandomizedBaseAddress>false</RandomizedBaseAddress> 237 <RandomizedBaseAddress>false</RandomizedBaseAddress>
238 <ModuleDefinitionFile>core.def</ModuleDefinitionFile> 238 <ModuleDefinitionFile>core.def</ModuleDefinitionFile>
239 </Link> 239 </Link>
240 <PreBuildEvent> 240 <PreBuildEvent>
241 <Command>lib /DEF:"$(ProjectDir)functions_manager_Import.def" /SUBSYSTEM:WINDOWS /MACHINE:$(Platform) /OUT:"$(ProjectDir)functions_manager.lib" 1&gt;NUL 2&gt;NUL 241 <Command>lib /DEF:"$(ProjectDir)functions_manager_Import.def" /SUBSYSTEM:WINDOWS /MACHINE:$(Platform) /OUT:"$(ProjectDir)functions_manager.lib" 1&gt;NUL 2&gt;NUL
242</Command> 242</Command>
243 </PreBuildEvent> 243 </PreBuildEvent>
244 </ItemDefinitionGroup> 244 </ItemDefinitionGroup>
245 <ItemGroup> 245 <ItemGroup>
246 <ClCompile Include="..\cpp\banner.cpp" /> 246 <ClCompile Include="..\cpp\banner.cpp" />
247 <ClCompile Include="..\cpp\getfunctionsname.cpp" /> 247 <ClCompile Include="..\cpp\getfunctionsname.cpp" />
248 <ClCompile Include="..\cpp\getmacrosname.cpp" /> 248 <ClCompile Include="..\cpp\getmacrosname.cpp" />
249 <ClCompile Include="..\cpp\getvariablesname.cpp" /> 249 <ClCompile Include="..\cpp\getvariablesname.cpp" />
250 <ClCompile Include="..\cpp\InitScilab.cpp" /> 250 <ClCompile Include="..\cpp\InitScilab.cpp" />
251 <ClCompile Include="..\cpp\parsecommand.cpp" /> 251 <ClCompile Include="..\cpp\parsecommand.cpp" />
252 <ClCompile Include="..\cpp\pause.cpp" /> 252 <ClCompile Include="..\cpp\pause.cpp" />
253 <ClCompile Include="..\cpp\runner.cpp" /> 253 <ClCompile Include="..\cpp\runner.cpp" />
254 <ClCompile Include="..\cpp\setformat.cpp" /> 254 <ClCompile Include="..\cpp\setformat.cpp" />
255 <ClCompile Include="..\cpp\setlines.cpp" /> 255 <ClCompile Include="..\cpp\setlines.cpp" />
256 <ClCompile Include="..\cpp\storeCommand.cpp" /> 256 <ClCompile Include="..\cpp\storeCommand.cpp" />
257 <ClCompile Include="..\cpp\tasks.cpp" /> 257 <ClCompile Include="..\cpp\tasks.cpp" />
258 <ClCompile Include="..\cpp\with_module.cpp" /> 258 <ClCompile Include="..\cpp\with_module.cpp" />
259 <ClCompile Include="..\cpp\backtrace_print.cpp" /> 259 <ClCompile Include="..\cpp\backtrace_print.cpp" />
260 <ClCompile Include="backtrace.c" /> 260 <ClCompile Include="backtrace.c" />
261 <ClCompile Include="commandwords.c" /> 261 <ClCompile Include="commandwords.c" />
262 <ClCompile Include="DllmainCore.c" /> 262 <ClCompile Include="DllmainCore.c" />
263 <ClCompile Include="dynamic_gateways.c" /> 263 <ClCompile Include="dynamic_gateways.c" />
264 <ClCompile Include="freeArrayOfString.c" /> 264 <ClCompile Include="freeArrayOfString.c" />
265 <ClCompile Include="getcommandlineargs.c" /> 265 <ClCompile Include="getcommandlineargs.c" />
266 <ClCompile Include="getdynamicdebuginfo.c" /> 266 <ClCompile Include="getdynamicdebuginfo.c" />
267 <ClCompile Include="getdynamicDebugInfo_Windows.c" /> 267 <ClCompile Include="getdynamicDebugInfo_Windows.c" />
268 <ClCompile Include="getmaxMALLOC.c" /> 268 <ClCompile Include="getmaxMALLOC.c" />
269 <ClCompile Include="getmemory.c" /> 269 <ClCompile Include="getmemory.c" />
270 <ClCompile Include="getmodules.c" /> 270 <ClCompile Include="getmodules.c" />
271 <ClCompile Include="getos.c" /> 271 <ClCompile Include="getos.c" />
272 <ClCompile Include="getstaticdebuginfo.c" /> 272 <ClCompile Include="getstaticdebuginfo.c" />
273 <ClCompile Include="getstaticDebugInfo_Windows.c" /> 273 <ClCompile Include="getstaticDebugInfo_Windows.c" />
274 <ClCompile Include="getversion.c" /> 274 <ClCompile Include="getversion.c" />
275 <ClCompile Include="GetXmlFileEncoding.c" /> 275 <ClCompile Include="GetXmlFileEncoding.c" />
276 <ClCompile Include="hashtable\hashtable.c" /> 276 <ClCompile Include="hashtable\hashtable.c" />
277 <ClCompile Include="hashtable\hashtable_utility.c" /> 277 <ClCompile Include="hashtable\hashtable_utility.c" />
278 <ClCompile Include="InitializePreferences.c" /> 278 <ClCompile Include="InitializePreferences.c" />
279 <ClCompile Include="isanan.c" /> 279 <ClCompile Include="isanan.c" />
280 <ClCompile Include="islittleendian.c" /> 280 <ClCompile Include="islittleendian.c" />
281 <ClCompile Include="loadversion.c" /> 281 <ClCompile Include="loadversion.c" />
282 <ClCompile Include="md5.c" /> 282 <ClCompile Include="md5.c" />
283 <ClCompile Include="returnanan.c" /> 283 <ClCompile Include="returnanan.c" />
284 <ClCompile Include="saveCWDInPreferences.c" /> 284 <ClCompile Include="saveCWDInPreferences.c" />
285 <ClCompile Include="setPrecisionFPU.c" /> 285 <ClCompile Include="setPrecisionFPU.c" />
286 <ClCompile Include="transposeMatrix.c" /> 286 <ClCompile Include="transposeMatrix.c" />
287 <ClCompile Include="version.c" /> 287 <ClCompile Include="version.c" />
288 <ClCompile Include="win_mem_alloc.c" /> 288 <ClCompile Include="win_mem_alloc.c" />
289 </ItemGroup> 289 </ItemGroup>
290 <ItemGroup> 290 <ItemGroup>
291 <None Include="..\..\locales\core.pot" /> 291 <None Include="..\..\locales\core.pot" />
292 <None Include="..\..\core.iss" /> 292 <None Include="..\..\core.iss" />
293 <CustomBuildStep Include="..\..\includes\machine.h.vc"> 293 <CustomBuildStep Include="..\..\includes\machine.h.vc">
294 <FileType>Document</FileType> 294 <FileType>Document</FileType>
295 <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> 295 <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
296 <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild> 296 <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
297 <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> 297 <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
298 <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild> 298 <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
299 </CustomBuildStep> 299 </CustomBuildStep>
300 <None Include="..\..\Makefile.am" /> 300 <None Include="..\..\Makefile.am" />
301 <None Include="core.def" /> 301 <None Include="core.def" />
302 <None Include="core_export.def" /> 302 <None Include="core_export.def" />
303 <None Include="functions_manager_Import.def" /> 303 <None Include="functions_manager_Import.def" />
304 </ItemGroup> 304 </ItemGroup>
305 <ItemGroup> 305 <ItemGroup>
306 <ClInclude Include="..\..\includes\backtrace_print.h" /> 306 <ClInclude Include="..\..\includes\backtrace_print.h" />
307 <ClInclude Include="..\..\includes\banner.hxx" /> 307 <ClInclude Include="..\..\includes\banner.hxx" />
308 <ClInclude Include="..\..\includes\BOOL.h" /> 308 <ClInclude Include="..\..\includes\BOOL.h" />
309 <ClInclude Include="..\..\includes\commandwords.h" /> 309 <ClInclude Include="..\..\includes\commandwords.h" />
310 <ClInclude Include="..\..\includes\core_gw.hxx" /> 310 <ClInclude Include="..\..\includes\core_gw.hxx" />
311 <ClInclude Include="..\..\includes\core_math.h" /> 311 <ClInclude Include="..\..\includes\core_math.h" />
312 <ClInclude Include="..\..\includes\dynlib_core.h" /> 312 <ClInclude Include="..\..\includes\dynlib_core.h" />
313 <ClInclude Include="..\..\includes\existfunction.h" /> 313 <ClInclude Include="..\..\includes\existfunction.h" />
314 <ClInclude Include="..\..\includes\exit_status.hxx" /> 314 <ClInclude Include="..\..\includes\exit_status.hxx" />
315 <ClInclude Include="..\..\includes\freeArrayOfString.h" /> 315 <ClInclude Include="..\..\includes\freeArrayOfString.h" />
316 <ClInclude Include="..\..\includes\getcommandlineargs.h" /> 316 <ClInclude Include="..\..\includes\getcommandlineargs.h" />
317 <ClInclude Include="..\..\includes\getfunctionsname.h" /> 317 <ClInclude Include="..\..\includes\getfunctionsname.h" />
318 <ClInclude Include="..\..\includes\getmacrosname.h" /> 318 <ClInclude Include="..\..\includes\getmacrosname.h" />
319 <ClInclude Include="..\..\includes\getmaxMALLOC.h" /> 319 <ClInclude Include="..\..\includes\getmaxMALLOC.h" />
320 <ClInclude Include="..\..\includes\getmemory.h" /> 320 <ClInclude Include="..\..\includes\getmemory.h" />
321 <ClInclude Include="..\..\includes\getmodules.h" /> 321 <ClInclude Include="..\..\includes\getmodules.h" />
322 <ClInclude Include="..\..\includes\getos.h" /> 322 <ClInclude Include="..\..\includes\getos.h" />
323 <ClInclude Include="..\..\includes\getvariablesname.h" /> 323 <ClInclude Include="..\..\includes\getvariablesname.h" />
324 <ClInclude Include="..\..\includes\getversion.h" /> 324 <ClInclude Include="..\..\includes\getversion.h" />
325 <ClInclude Include="..\..\includes\GetXmlFileEncoding.h" /> 325 <ClInclude Include="..\..\includes\GetXmlFileEncoding.h" />
326 <ClInclude Include="..\..\includes\gw_core.h" /> 326 <ClInclude Include="..\..\includes\gw_core.h" />
327 <ClInclude Include="..\..\includes\gw_user.h" /> 327 <ClInclude Include="..\..\includes\gw_user.h" />
328 <ClInclude Include="..\..\includes\gw_user2.h" /> 328 <ClInclude Include="..\..\includes\gw_user2.h" />
329 <ClInclude Include="..\..\includes\hashtable.h" /> 329 <ClInclude Include="..\..\includes\hashtable.h" />
330 <ClInclude Include="..\..\includes\hashtable_private.h" /> 330 <ClInclude Include="..\..\includes\hashtable_private.h" />
331 <ClInclude Include="..\..\includes\hashtable_utility.h" /> 331 <ClInclude Include="..\..\includes\hashtable_utility.h" />
332 <ClInclude Include="..\..\includes\inffic.h" /> 332 <ClInclude Include="..\..\includes\inffic.h" />
333 <ClInclude Include="..\..\includes\InitializePreferences.h" /> 333 <ClInclude Include="..\..\includes\InitializePreferences.h" />
334 <ClInclude Include="..\..\includes\initMacOSXEnv.h" /> 334 <ClInclude Include="..\..\includes\initMacOSXEnv.h" />
335 <ClInclude Include="..\..\includes\InitScilab.h" /> 335 <ClInclude Include="..\..\includes\InitScilab.h" />
336 <ClInclude Include="..\..\includes\isanan.h" /> 336 <ClInclude Include="..\..\includes\isanan.h" />
337 <ClInclude Include="..\..\includes\islittleendian.h" /> 337 <ClInclude Include="..\..\includes\islittleendian.h" />
338 <ClInclude Include="..\..\includes\loadversion.h" /> 338 <ClInclude Include="..\..\includes\loadversion.h" />
339 <ClInclude Include="..\..\includes\machine.h" /> 339 <ClInclude Include="..\..\includes\machine.h" />
340 <ClInclude Include="..\..\includes\md5.h" /> 340 <ClInclude Include="..\..\includes\md5.h" />
341 <ClInclude Include="..\..\includes\parsecommand.h" /> 341 <ClInclude Include="..\..\includes\parsecommand.h" />
342 <ClInclude Include="..\..\includes\pause.h" /> 342 <ClInclude Include="..\..\includes\pause.h" />
343 <ClInclude Include="..\..\includes\sci_malloc.h" /> 343 <ClInclude Include="..\..\includes\sci_malloc.h" />
344 <ClInclude Include="..\..\includes\PARAMS.h" /> 344 <ClInclude Include="..\..\includes\PARAMS.h" />
345 <ClInclude Include="..\..\includes\PATH_MAX.h" /> 345 <ClInclude Include="..\..\includes\PATH_MAX.h" />
346 <ClInclude Include="..\..\includes\realmain.h" /> 346 <ClInclude Include="..\..\includes\realmain.h" />
347 <ClInclude Include="..\..\includes\returnanan.h" /> 347 <ClInclude Include="..\..\includes\returnanan.h" />
348 <ClInclude Include="..\..\includes\runner.hxx" /> 348 <ClInclude Include="..\..\includes\runner.hxx" />
349 <ClInclude Include="..\..\includes\scilabDefaults.h" /> 349 <ClInclude Include="..\..\includes\scilabDefaults.h" />
350 <ClInclude Include="..\..\includes\scimem.h" /> 350 <ClInclude Include="..\..\includes\scimem.h" />
351 <ClInclude Include="..\..\includes\scisparse.h" /> 351 <ClInclude Include="..\..\includes\scisparse.h" />
352 <ClInclude Include="..\..\includes\sci_tools.h" /> 352 <ClInclude Include="..\..\includes\sci_tools.h" />
353 <ClInclude Include="..\..\includes\sci_types.h" /> 353 <ClInclude Include="..\..\includes\sci_types.h" />
354 <ClInclude Include="..\..\includes\setformat.h" /> 354 <ClInclude Include="..\..\includes\setformat.h" />
355 <ClInclude Include="..\..\includes\setlines.h" /> 355 <ClInclude Include="..\..\includes\setlines.h" />
356 <ClInclude Include="..\..\includes\setPrecisionFPU.h" /> 356 <ClInclude Include="..\..\includes\setPrecisionFPU.h" />
357 <ClInclude Include="..\..\includes\sigbas.h" /> 357 <ClInclude Include="..\..\includes\sigbas.h" />
358 <ClInclude Include="..\..\includes\signal_mgmt.h" /> 358 <ClInclude Include="..\..\includes\signal_mgmt.h" />
359 <ClInclude Include="..\..\includes\storeCommand.h" /> 359 <ClInclude Include="..\..\includes\storeCommand.h" />
360 <ClInclude Include="..\..\includes\suspendProcess.h" /> 360 <ClInclude Include="..\..\includes\suspendProcess.h" />
361 <ClInclude Include="..\..\includes\syncexec.h" /> 361 <ClInclude Include="..\..\includes\syncexec.h" />
362 <ClInclude Include="..\..\includes\tasks.hxx" /> 362 <ClInclude Include="..\..\includes\tasks.hxx" />
363 <ClInclude Include="..\..\includes\timer.hxx" /> 363 <ClInclude Include="..\..\includes\timer.hxx" />
364 <ClInclude Include="..\..\includes\transposeMatrix.h" /> 364 <ClInclude Include="..\..\includes\transposeMatrix.h" />
365 <ClInclude Include="..\..\includes\version.h" /> 365 <ClInclude Include="..\..\includes\version.h" />
366 <ClInclude Include="..\..\includes\win_mem_alloc.h" /> 366 <ClInclude Include="..\..\includes\win_mem_alloc.h" />
367 <ClInclude Include="..\..\includes\with_module.h" /> 367 <ClInclude Include="..\..\includes\with_module.h" />
368 <ClInclude Include="..\cpp\partition.hxx" /> 368 <ClInclude Include="..\cpp\partition.hxx" />
369 <ClInclude Include="..\cpp\unrolled_algorithms.hxx" /> 369 <ClInclude Include="..\cpp\unrolled_algorithms.hxx" />
370 <ClInclude Include="backtrace.h" /> 370 <ClInclude Include="backtrace.h" />
371 <ClInclude Include="dynamic_gateways.h" /> 371 <ClInclude Include="dynamic_gateways.h" />
372 <ClInclude Include="getdebuginfo.h" /> 372 <ClInclude Include="getdebuginfo.h" />
373 <ClInclude Include="getdynamicdebuginfo.h" /> 373 <ClInclude Include="getdynamicdebuginfo.h" />
374 <ClInclude Include="getdynamicDebugInfo_Windows.h" /> 374 <ClInclude Include="getdynamicDebugInfo_Windows.h" />
375 <ClInclude Include="getstaticdebuginfo.h" /> 375 <ClInclude Include="getstaticdebuginfo.h" />
376 <ClInclude Include="getstaticDebugInfo_Windows.h" /> 376 <ClInclude Include="getstaticDebugInfo_Windows.h" />
377 <ClInclude Include="gw_dynamic_generic.h" /> 377 <ClInclude Include="gw_dynamic_generic.h" />
378 <ClInclude Include="saveCWDInPreferences.h" /> 378 <ClInclude Include="saveCWDInPreferences.h" />
379 </ItemGroup> 379 </ItemGroup>
380 <ItemGroup> 380 <ItemGroup>
381 <ProjectReference Include="..\..\..\..\libs\GetWindowsVersion\GetWindowsVersion.vcxproj"> 381 <ProjectReference Include="..\..\..\..\libs\GetWindowsVersion\GetWindowsVersion.vcxproj">
382 <Project>{982bf37f-42c4-4d37-8d14-60521b141503}</Project> 382 <Project>{982bf37f-42c4-4d37-8d14-60521b141503}</Project>
383 </ProjectReference> 383 </ProjectReference>
384 <ProjectReference Include="..\..\..\..\tools\Dumpexts\Dumpexts.vcxproj"> 384 <ProjectReference Include="..\..\..\..\tools\Dumpexts\Dumpexts.vcxproj">
385 <Project>{3170e4c2-1173-4264-a222-7ee8ccb3ddf7}</Project> 385 <Project>{3170e4c2-1173-4264-a222-7ee8ccb3ddf7}</Project>
386 </ProjectReference> 386 </ProjectReference>
387 <ProjectReference Include="..\..\..\api_scilab\api_scilab.vcxproj"> 387 <ProjectReference Include="..\..\..\api_scilab\api_scilab.vcxproj">
388 <Project>{43c5bab1-1dca-4743-a183-77e0d42fe7d0}</Project> 388 <Project>{43c5bab1-1dca-4743-a183-77e0d42fe7d0}</Project>
389 </ProjectReference> 389 </ProjectReference>
390 <ProjectReference Include="..\..\..\ast\ast.vcxproj"> 390 <ProjectReference Include="..\..\..\ast\ast.vcxproj">
391 <Project>{0d3fa25b-8116-44ec-a45e-260789daa3d9}</Project> 391 <Project>{0d3fa25b-8116-44ec-a45e-260789daa3d9}</Project>
392 </ProjectReference> 392 </ProjectReference>
393 <ProjectReference Include="..\..\..\console\src\c\console.vcxproj"> 393 <ProjectReference Include="..\..\..\console\src\c\console.vcxproj">
394 <Project>{445d3b85-c9b1-498b-9c88-0a3c2390b1cc}</Project> 394 <Project>{445d3b85-c9b1-498b-9c88-0a3c2390b1cc}</Project>
395 </ProjectReference> 395 </ProjectReference>
396 <ProjectReference Include="..\..\..\dynamic_link\src\c\dynamic_link.vcxproj"> 396 <ProjectReference Include="..\..\..\dynamic_link\src\c\dynamic_link.vcxproj">
397 <Project>{eab6c580-22b3-4359-ba1d-dd7499a96163}</Project> 397 <Project>{eab6c580-22b3-4359-ba1d-dd7499a96163}</Project>
398 </ProjectReference> 398 </ProjectReference>
399 <ProjectReference Include="..\..\..\fftw\fftw.vcxproj"> 399 <ProjectReference Include="..\..\..\fftw\fftw.vcxproj">
400 <Project>{13b86307-5a11-48d6-94be-71f77bcb82d1}</Project> 400 <Project>{13b86307-5a11-48d6-94be-71f77bcb82d1}</Project>
401 </ProjectReference> 401 </ProjectReference>
402 <ProjectReference Include="..\..\..\fileio\fileio.vcxproj"> 402 <ProjectReference Include="..\..\..\fileio\fileio.vcxproj">
403 <Project>{4fc72d4a-80ee-4b1a-8724-0201c1a35621}</Project> 403 <Project>{4fc72d4a-80ee-4b1a-8724-0201c1a35621}</Project>
404 </ProjectReference> 404 </ProjectReference>
405 <ProjectReference Include="..\..\..\graphics\graphics.vcxproj"> 405 <ProjectReference Include="..\..\..\graphics\graphics.vcxproj">
406 <Project>{8ccdd3c2-b025-4a12-a986-1aa28d7c0c33}</Project> 406 <Project>{8ccdd3c2-b025-4a12-a986-1aa28d7c0c33}</Project>
407 </ProjectReference> 407 </ProjectReference>
408 <ProjectReference Include="..\..\..\gui\src\c\gui.vcxproj"> 408 <ProjectReference Include="..\..\..\gui\src\c\gui.vcxproj">
409 <Project>{45ca5b12-7601-4968-ae16-16069fd1a152}</Project> 409 <Project>{45ca5b12-7601-4968-ae16-16069fd1a152}</Project>
410 </ProjectReference> 410 </ProjectReference>
411 <ProjectReference Include="..\..\..\hdf5\src\c\hdf5.vcxproj"> 411 <ProjectReference Include="..\..\..\hdf5\src\c\hdf5.vcxproj">
412 <Project>{a824ea62-af07-4f43-9036-0e63990556bd}</Project> 412 <Project>{a824ea62-af07-4f43-9036-0e63990556bd}</Project>
413 </ProjectReference> 413 </ProjectReference>
414 <ProjectReference Include="..\..\..\history_manager\src\c\history_manager.vcxproj"> 414 <ProjectReference Include="..\..\..\history_manager\src\c\history_manager.vcxproj">
415 <Project>{1b98dc87-44f5-48ae-b5d0-29dd8ad86f5e}</Project> 415 <Project>{1b98dc87-44f5-48ae-b5d0-29dd8ad86f5e}</Project>
416 </ProjectReference> 416 </ProjectReference>
417 <ProjectReference Include="..\..\..\io\src\c\io.vcxproj"> 417 <ProjectReference Include="..\..\..\io\src\c\io.vcxproj">
418 <Project>{80c0f142-184b-4e08-a8ee-5e71437cf904}</Project> 418 <Project>{80c0f142-184b-4e08-a8ee-5e71437cf904}</Project>
419 </ProjectReference> 419 </ProjectReference>
420 <ProjectReference Include="..\..\..\jvm\libjvm.vcxproj"> 420 <ProjectReference Include="..\..\..\jvm\libjvm.vcxproj">
421 <Project>{8ba2dda8-bd04-4d4d-8ee6-6caa955f7470}</Project> 421 <Project>{8ba2dda8-bd04-4d4d-8ee6-6caa955f7470}</Project>
422 </ProjectReference> 422 </ProjectReference>
423 <ProjectReference Include="..\..\..\localization\src\localization.vcxproj"> 423 <ProjectReference Include="..\..\..\localization\src\localization.vcxproj">
424 <Project>{ecffeb0c-1eda-45ee-9a10-b18143852e17}</Project> 424 <Project>{ecffeb0c-1eda-45ee-9a10-b18143852e17}</Project>
425 </ProjectReference> 425 </ProjectReference>
426 <ProjectReference Include="..\..\..\output_stream\src\c\output_stream.vcxproj"> 426 <ProjectReference Include="..\..\..\output_stream\src\c\output_stream.vcxproj">
427 <Project>{a5911cd7-f8e8-440c-a23e-4843a0636f3a}</Project> 427 <Project>{a5911cd7-f8e8-440c-a23e-4843a0636f3a}</Project>
428 </ProjectReference> 428 </ProjectReference>
429 <ProjectReference Include="..\..\..\preferences\src\c\preferences.vcxproj"> 429 <ProjectReference Include="..\..\..\preferences\src\c\preferences.vcxproj">
430 <Project>{7b893e9f-d032-44de-9b71-197a29c4989b}</Project> 430 <Project>{7b893e9f-d032-44de-9b71-197a29c4989b}</Project>
431 </ProjectReference> 431 </ProjectReference>
432 <ProjectReference Include="..\..\..\string\src\c\string.vcxproj"> 432 <ProjectReference Include="..\..\..\string\src\c\string.vcxproj">
433 <Project>{8d45767a-9b03-4905-97f6-d2f3f79141ea}</Project> 433 <Project>{8d45767a-9b03-4905-97f6-d2f3f79141ea}</Project>
434 </ProjectReference> 434 </ProjectReference>
435 <ProjectReference Include="..\..\..\tclsci\tclsci.vcxproj"> 435 <ProjectReference Include="..\..\..\tclsci\tclsci.vcxproj">
436 <Project>{c456d5b8-8a32-496a-a2ee-164b0d734126}</Project> 436 <Project>{c456d5b8-8a32-496a-a2ee-164b0d734126}</Project>
437 </ProjectReference> 437 </ProjectReference>
438 <ProjectReference Include="..\..\..\threads\threads.vcxproj"> 438 <ProjectReference Include="..\..\..\threads\threads.vcxproj">
439 <Project>{50a1ffc8-adc2-4d9e-a2d0-5dcd63188ae9}</Project> 439 <Project>{50a1ffc8-adc2-4d9e-a2d0-5dcd63188ae9}</Project>
440 </ProjectReference> 440 </ProjectReference>
441 <ProjectReference Include="..\..\..\ui_data\src\c\ui_data.vcxproj"> 441 <ProjectReference Include="..\..\..\ui_data\src\c\ui_data.vcxproj">
442 <Project>{142d643b-a9ec-49db-9d48-a925a20f63b1}</Project> 442 <Project>{142d643b-a9ec-49db-9d48-a925a20f63b1}</Project>
443 </ProjectReference> 443 </ProjectReference>
444 <ProjectReference Include="..\..\..\windows_tools\src\c\scilab_windows\scilab_windows.vcxproj"> 444 <ProjectReference Include="..\..\..\windows_tools\src\c\scilab_windows\scilab_windows.vcxproj">
445 <Project>{8028f371-6a94-4a26-8804-6e7f05f1d1aa}</Project> 445 <Project>{8028f371-6a94-4a26-8804-6e7f05f1d1aa}</Project>
446 </ProjectReference> 446 </ProjectReference>
447 <ProjectReference Include="..\..\..\windows_tools\src\c\windows_tools.vcxproj"> 447 <ProjectReference Include="..\..\..\windows_tools\src\c\windows_tools.vcxproj">
448 <Project>{9594ac02-20ee-4fbf-95b4-bfa5865ed7ca}</Project> 448 <Project>{9594ac02-20ee-4fbf-95b4-bfa5865ed7ca}</Project>
449 </ProjectReference> 449 </ProjectReference>
450 </ItemGroup> 450 </ItemGroup>
451 <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" /> 451 <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
452 <ImportGroup Label="ExtensionTargets"> 452 <ImportGroup Label="ExtensionTargets">
453 </ImportGroup> 453 </ImportGroup>
454</Project> \ No newline at end of file 454</Project> \ No newline at end of file
diff --git a/scilab/modules/fileio/Makefile.am b/scilab/modules/fileio/Makefile.am
index 6aeb229..ae31184 100644
--- a/scilab/modules/fileio/Makefile.am
+++ b/scilab/modules/fileio/Makefile.am
@@ -53,6 +53,7 @@ GATEWAY_CPP_SOURCES = \
53 sci_gateway/cpp/sci_mopen.cpp \ 53 sci_gateway/cpp/sci_mopen.cpp \
54 sci_gateway/cpp/sci_mclose.cpp \ 54 sci_gateway/cpp/sci_mclose.cpp \
55 sci_gateway/cpp/sci_mget.cpp \ 55 sci_gateway/cpp/sci_mget.cpp \
56 sci_gateway/cpp/sci_mgeti.cpp \
56 sci_gateway/cpp/sci_mput.cpp \ 57 sci_gateway/cpp/sci_mput.cpp \
57 sci_gateway/cpp/sci_mputl.cpp \ 58 sci_gateway/cpp/sci_mputl.cpp \
58 sci_gateway/cpp/sci_mgetl.cpp \ 59 sci_gateway/cpp/sci_mgetl.cpp \
diff --git a/scilab/modules/fileio/Makefile.in b/scilab/modules/fileio/Makefile.in
index ff112c1..79942ed 100644
--- a/scilab/modules/fileio/Makefile.in
+++ b/scilab/modules/fileio/Makefile.in
@@ -254,6 +254,7 @@ am__objects_4 = sci_gateway/cpp/libscifileio_la-fileio_gw.lo \
254 sci_gateway/cpp/libscifileio_la-sci_mopen.lo \ 254 sci_gateway/cpp/libscifileio_la-sci_mopen.lo \
255 sci_gateway/cpp/libscifileio_la-sci_mclose.lo \ 255 sci_gateway/cpp/libscifileio_la-sci_mclose.lo \
256 sci_gateway/cpp/libscifileio_la-sci_mget.lo \ 256 sci_gateway/cpp/libscifileio_la-sci_mget.lo \
257 sci_gateway/cpp/libscifileio_la-sci_mgeti.lo \
257 sci_gateway/cpp/libscifileio_la-sci_mput.lo \ 258 sci_gateway/cpp/libscifileio_la-sci_mput.lo \
258 sci_gateway/cpp/libscifileio_la-sci_mputl.lo \ 259 sci_gateway/cpp/libscifileio_la-sci_mputl.lo \
259 sci_gateway/cpp/libscifileio_la-sci_mgetl.lo \ 260 sci_gateway/cpp/libscifileio_la-sci_mgetl.lo \
@@ -341,6 +342,7 @@ am__depfiles_remade = \
341 sci_gateway/cpp/$(DEPDIR)/libscifileio_la-sci_mfprintf.Plo \ 342 sci_gateway/cpp/$(DEPDIR)/libscifileio_la-sci_mfprintf.Plo \
342 sci_gateway/cpp/$(DEPDIR)/libscifileio_la-sci_mfscanf.Plo \ 343 sci_gateway/cpp/$(DEPDIR)/libscifileio_la-sci_mfscanf.Plo \
343 sci_gateway/cpp/$(DEPDIR)/libscifileio_la-sci_mget.Plo \ 344 sci_gateway/cpp/$(DEPDIR)/libscifileio_la-sci_mget.Plo \
345 sci_gateway/cpp/$(DEPDIR)/libscifileio_la-sci_mgeti.Plo \
344 sci_gateway/cpp/$(DEPDIR)/libscifileio_la-sci_mgetl.Plo \ 346 sci_gateway/cpp/$(DEPDIR)/libscifileio_la-sci_mgetl.Plo \
345 sci_gateway/cpp/$(DEPDIR)/libscifileio_la-sci_mgetstr.Plo \ 347 sci_gateway/cpp/$(DEPDIR)/libscifileio_la-sci_mgetstr.Plo \
346 sci_gateway/cpp/$(DEPDIR)/libscifileio_la-sci_mopen.Plo \ 348 sci_gateway/cpp/$(DEPDIR)/libscifileio_la-sci_mopen.Plo \
@@ -817,6 +819,7 @@ GATEWAY_CPP_SOURCES = \
817 sci_gateway/cpp/sci_mopen.cpp \ 819 sci_gateway/cpp/sci_mopen.cpp \
818 sci_gateway/cpp/sci_mclose.cpp \ 820 sci_gateway/cpp/sci_mclose.cpp \
819 sci_gateway/cpp/sci_mget.cpp \ 821 sci_gateway/cpp/sci_mget.cpp \
822 sci_gateway/cpp/sci_mgeti.cpp \
820 sci_gateway/cpp/sci_mput.cpp \ 823 sci_gateway/cpp/sci_mput.cpp \
821 sci_gateway/cpp/sci_mputl.cpp \ 824 sci_gateway/cpp/sci_mputl.cpp \
822 sci_gateway/cpp/sci_mgetl.cpp \ 825 sci_gateway/cpp/sci_mgetl.cpp \
@@ -1256,6 +1259,9 @@ sci_gateway/cpp/libscifileio_la-sci_mclose.lo: \
1256sci_gateway/cpp/libscifileio_la-sci_mget.lo: \ 1259sci_gateway/cpp/libscifileio_la-sci_mget.lo: \
1257 sci_gateway/cpp/$(am__dirstamp) \ 1260 sci_gateway/cpp/$(am__dirstamp) \
1258 sci_gateway/cpp/$(DEPDIR)/$(am__dirstamp) 1261 sci_gateway/cpp/$(DEPDIR)/$(am__dirstamp)
1262sci_gateway/cpp/libscifileio_la-sci_mgeti.lo: \
1263 sci_gateway/cpp/$(am__dirstamp) \
1264 sci_gateway/cpp/$(DEPDIR)/$(am__dirstamp)
1259sci_gateway/cpp/libscifileio_la-sci_mput.lo: \ 1265sci_gateway/cpp/libscifileio_la-sci_mput.lo: \
1260 sci_gateway/cpp/$(am__dirstamp) \ 1266 sci_gateway/cpp/$(am__dirstamp) \
1261 sci_gateway/cpp/$(DEPDIR)/$(am__dirstamp) 1267 sci_gateway/cpp/$(DEPDIR)/$(am__dirstamp)
@@ -1409,6 +1415,7 @@ distclean-compile:
1409@AMDEP_TRUE@@am__include@ @am__quote@sci_gateway/cpp/$(DEPDIR)/libscifileio_la-sci_mfprintf.Plo@am__quote@ # am--include-marker 1415@AMDEP_TRUE@@am__include@ @am__quote@sci_gateway/cpp/$(DEPDIR)/libscifileio_la-sci_mfprintf.Plo@am__quote@ # am--include-marker
1410@AMDEP_TRUE@@am__include@ @am__quote@sci_gateway/cpp/$(DEPDIR)/libscifileio_la-sci_mfscanf.Plo@am__quote@ # am--include-marker 1416@AMDEP_TRUE@@am__include@ @am__quote@sci_gateway/cpp/$(DEPDIR)/libscifileio_la-sci_mfscanf.Plo@am__quote@ # am--include-marker
1411@AMDEP_TRUE@@am__include@ @am__quote@sci_gateway/cpp/$(DEPDIR)/libscifileio_la-sci_mget.Plo@am__quote@ # am--include-marker 1417@AMDEP_TRUE@@am__include@ @am__quote@sci_gateway/cpp/$(DEPDIR)/libscifileio_la-sci_mget.Plo@am__quote@ # am--include-marker
1418@AMDEP_TRUE@@am__include@ @am__quote@sci_gateway/cpp/$(DEPDIR)/libscifileio_la-sci_mgeti.Plo@am__quote@ # am--include-marker
1412@AMDEP_TRUE@@am__include@ @am__quote@sci_gateway/cpp/$(DEPDIR)/libscifileio_la-sci_mgetl.Plo@am__quote@ # am--include-marker 1419@AMDEP_TRUE@@am__include@ @am__quote@sci_gateway/cpp/$(DEPDIR)/libscifileio_la-sci_mgetl.Plo@am__quote@ # am--include-marker
1413@AMDEP_TRUE@@am__include@ @am__quote@sci_gateway/cpp/$(DEPDIR)/libscifileio_la-sci_mgetstr.Plo@am__quote@ # am--include-marker 1420@AMDEP_TRUE@@am__include@ @am__quote@sci_gateway/cpp/$(DEPDIR)/libscifileio_la-sci_mgetstr.Plo@am__quote@ # am--include-marker
1414@AMDEP_TRUE@@am__include@ @am__quote@sci_gateway/cpp/$(DEPDIR)/libscifileio_la-sci_mopen.Plo@am__quote@ # am--include-marker 1421@AMDEP_TRUE@@am__include@ @am__quote@sci_gateway/cpp/$(DEPDIR)/libscifileio_la-sci_mopen.Plo@am__quote@ # am--include-marker
@@ -1977,6 +1984,13 @@ sci_gateway/cpp/libscifileio_la-sci_mget.lo: sci_gateway/cpp/sci_mget.cpp
1977@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ 1984@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
1978@am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libscifileio_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o sci_gateway/cpp/libscifileio_la-sci_mget.lo `test -f 'sci_gateway/cpp/sci_mget.cpp' || echo '$(srcdir)/'`sci_gateway/cpp/sci_mget.cpp 1985@am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libscifileio_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o sci_gateway/cpp/libscifileio_la-sci_mget.lo `test -f 'sci_gateway/cpp/sci_mget.cpp' || echo '$(srcdir)/'`sci_gateway/cpp/sci_mget.cpp
1979 1986
1987sci_gateway/cpp/libscifileio_la-sci_mgeti.lo: sci_gateway/cpp/sci_mgeti.cpp
1988@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libscifileio_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT sci_gateway/cpp/libscifileio_la-sci_mgeti.lo -MD -MP -MF sci_gateway/cpp/$(DEPDIR)/libscifileio_la-sci_mgeti.Tpo -c -o sci_gateway/cpp/libscifileio_la-sci_mgeti.lo `test -f 'sci_gateway/cpp/sci_mgeti.cpp' || echo '$(srcdir)/'`sci_gateway/cpp/sci_mgeti.cpp
1989@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) sci_gateway/cpp/$(DEPDIR)/libscifileio_la-sci_mgeti.Tpo sci_gateway/cpp/$(DEPDIR)/libscifileio_la-sci_mgeti.Plo
1990@AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='sci_gateway/cpp/sci_mgeti.cpp' object='sci_gateway/cpp/libscifileio_la-sci_mgeti.lo' libtool=yes @AMDEPBACKSLASH@
1991@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
1992@am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libscifileio_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o sci_gateway/cpp/libscifileio_la-sci_mgeti.lo `test -f 'sci_gateway/cpp/sci_mgeti.cpp' || echo '$(srcdir)/'`sci_gateway/cpp/sci_mgeti.cpp
1993
1980sci_gateway/cpp/libscifileio_la-sci_mput.lo: sci_gateway/cpp/sci_mput.cpp 1994sci_gateway/cpp/libscifileio_la-sci_mput.lo: sci_gateway/cpp/sci_mput.cpp
1981@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libscifileio_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT sci_gateway/cpp/libscifileio_la-sci_mput.lo -MD -MP -MF sci_gateway/cpp/$(DEPDIR)/libscifileio_la-sci_mput.Tpo -c -o sci_gateway/cpp/libscifileio_la-sci_mput.lo `test -f 'sci_gateway/cpp/sci_mput.cpp' || echo '$(srcdir)/'`sci_gateway/cpp/sci_mput.cpp 1995@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libscifileio_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT sci_gateway/cpp/libscifileio_la-sci_mput.lo -MD -MP -MF sci_gateway/cpp/$(DEPDIR)/libscifileio_la-sci_mput.Tpo -c -o sci_gateway/cpp/libscifileio_la-sci_mput.lo `test -f 'sci_gateway/cpp/sci_mput.cpp' || echo '$(srcdir)/'`sci_gateway/cpp/sci_mput.cpp
1982@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) sci_gateway/cpp/$(DEPDIR)/libscifileio_la-sci_mput.Tpo sci_gateway/cpp/$(DEPDIR)/libscifileio_la-sci_mput.Plo 1996@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) sci_gateway/cpp/$(DEPDIR)/libscifileio_la-sci_mput.Tpo sci_gateway/cpp/$(DEPDIR)/libscifileio_la-sci_mput.Plo
@@ -2458,6 +2472,7 @@ distclean: distclean-am
2458 -rm -f sci_gateway/cpp/$(DEPDIR)/libscifileio_la-sci_mfprintf.Plo 2472 -rm -f sci_gateway/cpp/$(DEPDIR)/libscifileio_la-sci_mfprintf.Plo
2459 -rm -f sci_gateway/cpp/$(DEPDIR)/libscifileio_la-sci_mfscanf.Plo 2473 -rm -f sci_gateway/cpp/$(DEPDIR)/libscifileio_la-sci_mfscanf.Plo
2460 -rm -f sci_gateway/cpp/$(DEPDIR)/libscifileio_la-sci_mget.Plo 2474 -rm -f sci_gateway/cpp/$(DEPDIR)/libscifileio_la-sci_mget.Plo
2475 -rm -f sci_gateway/cpp/$(DEPDIR)/libscifileio_la-sci_mgeti.Plo
2461 -rm -f sci_gateway/cpp/$(DEPDIR)/libscifileio_la-sci_mgetl.Plo 2476 -rm -f sci_gateway/cpp/$(DEPDIR)/libscifileio_la-sci_mgetl.Plo
2462 -rm -f sci_gateway/cpp/$(DEPDIR)/libscifileio_la-sci_mgetstr.Plo 2477 -rm -f sci_gateway/cpp/$(DEPDIR)/libscifileio_la-sci_mgetstr.Plo
2463 -rm -f sci_gateway/cpp/$(DEPDIR)/libscifileio_la-sci_mopen.Plo 2478 -rm -f sci_gateway/cpp/$(DEPDIR)/libscifileio_la-sci_mopen.Plo
@@ -2603,6 +2618,7 @@ maintainer-clean: maintainer-clean-am
2603 -rm -f sci_gateway/cpp/$(DEPDIR)/libscifileio_la-sci_mfprintf.Plo 2618 -rm -f sci_gateway/cpp/$(DEPDIR)/libscifileio_la-sci_mfprintf.Plo
2604 -rm -f sci_gateway/cpp/$(DEPDIR)/libscifileio_la-sci_mfscanf.Plo 2619 -rm -f sci_gateway/cpp/$(DEPDIR)/libscifileio_la-sci_mfscanf.Plo
2605 -rm -f sci_gateway/cpp/$(DEPDIR)/libscifileio_la-sci_mget.Plo 2620 -rm -f sci_gateway/cpp/$(DEPDIR)/libscifileio_la-sci_mget.Plo
2621 -rm -f sci_gateway/cpp/$(DEPDIR)/libscifileio_la-sci_mgeti.Plo
2606 -rm -f sci_gateway/cpp/$(DEPDIR)/libscifileio_la-sci_mgetl.Plo 2622 -rm -f sci_gateway/cpp/$(DEPDIR)/libscifileio_la-sci_mgetl.Plo
2607 -rm -f sci_gateway/cpp/$(DEPDIR)/libscifileio_la-sci_mgetstr.Plo 2623 -rm -f sci_gateway/cpp/$(DEPDIR)/libscifileio_la-sci_mgetstr.Plo
2608 -rm -f sci_gateway/cpp/$(DEPDIR)/libscifileio_la-sci_mopen.Plo 2624 -rm -f sci_gateway/cpp/$(DEPDIR)/libscifileio_la-sci_mopen.Plo
diff --git a/scilab/modules/fileio/help/en_US/mget.xml b/scilab/modules/fileio/help/en_US/mget.xml
index 19a2444..2262938 100644
--- a/scilab/modules/fileio/help/en_US/mget.xml
+++ b/scilab/modules/fileio/help/en_US/mget.xml
@@ -3,8 +3,8 @@
3 * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab 3 * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
4 * Copyright (C) 2008 - INRIA 4 * Copyright (C) 2008 - INRIA
5 * ... 5 * ...
6 *
7 * Copyright (C) 2012 - 2016 - Scilab Enterprises 6 * Copyright (C) 2012 - 2016 - Scilab Enterprises
7 * Copyright (C) 2016 - Samuel GOUGEON
8 * 8 *
9 * This file is hereby licensed under the terms of the GNU GPL v2.0, 9 * This file is hereby licensed under the terms of the GNU GPL v2.0,
10 * pursuant to article 5.3.4 of the CeCILL v.2.1. 10 * pursuant to article 5.3.4 of the CeCILL v.2.1.
@@ -14,247 +14,327 @@
14 * along with this program. 14 * along with this program.
15 * 15 *
16 --> 16 -->
17<refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:svg="http://www.w3.org/2000/svg" xmlns:ns5="http://www.w3.org/1999/xhtml" xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:db="http://docbook.org/ns/docbook" xmlns:scilab="http://www.scilab.org" xml:id="mget" xml:lang="en"> 17<refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink"
18 xmlns:svg="http://www.w3.org/2000/svg" xmlns:ns5="http://www.w3.org/1999/xhtml"
19 xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:db="http://docbook.org/ns/docbook"
20 xmlns:scilab="http://www.scilab.org" xml:id="mget" xml:lang="en">
18 <refnamediv> 21 <refnamediv>
19 <refname>mget</refname> 22 <refname>mget</refname>
20 <refpurpose>reads byte or word in a given binary format and converts to 23 <refpurpose>
21 a double type 24 parses numbers in a binary file and returns them as decimals
22 </refpurpose> 25 </refpurpose>
23 </refnamediv> 26 </refnamediv>
27 <refsynopsisdiv>
28 <title>Syntax</title>
29 <synopsis>
30 D = mget(nNumb)
31 D = mget(nNumb, binFormat)
32 D = mget(nNumb, binFormat, fileID)
33 </synopsis>
34 </refsynopsisdiv>
24 <refnamediv xml:id="mgeti"> 35 <refnamediv xml:id="mgeti">
25 <refname>mgeti</refname> 36 <refname>mgeti</refname>
26 <refpurpose> 37 <refpurpose>
27 reads byte or word in a given binary format and returns an int type 38 parses numbers in a binary file and returns them as encoded integers
28 </refpurpose> 39 </refpurpose>
29 </refnamediv> 40 </refnamediv>
30 <refsynopsisdiv> 41 <refsynopsisdiv>
31 <title>Syntax</title> 42 <title>Syntax</title>
32 <synopsis> 43 <synopsis>
33 x = mget([n, type, fd]) 44 I = mgeti(nNumb)
34 x = mgeti([n, type, fd]) 45 I = mgeti(nNumb, binFormat)
46 I = mgeti(nNumb, binFormat, fileID)
35 </synopsis> 47 </synopsis>
36 </refsynopsisdiv> 48 </refsynopsisdiv>
37 <refsection> 49 <refsection>
38 <title>Arguments</title> 50 <title>Arguments</title>
39 <variablelist> 51 <variablelist>
40 <varlistentry> 52 <varlistentry>
41 <term>n</term> 53 <term>fileID</term>
42 <listitem>
43 <para>a positive integer scalar: the number of items to be read.</para>
44 </listitem>
45 </varlistentry>
46 <varlistentry>
47 <term>fd</term>
48 <listitem> 54 <listitem>
49 <para> 55 <para>
50 a scalar: a file descriptor returned by the function <function>mopen</function>. <literal>-1</literal> 56 file identifier (single integer) returned by
51 stands for last opened file. Default value is 57 <function>mopen</function> when opening the file.
52 <literal>-1</literal>. 58 By default, the last opened file is considered.
59 <important>
60 The file must be priorly opened in
61 <emphasis role="bold">r</emphasis>ead
62 <emphasis role="bold">b</emphasis>inary mode with
63 <code>fileID = mopen(filename,'rb')</code>.
64 </important>
53 </para> 65 </para>
54 </listitem> 66 </listitem>
55 </varlistentry> 67 </varlistentry>
56 <varlistentry> 68 <varlistentry>
57 <term>type</term> 69 <term>nNumb</term>
58 <listitem> 70 <listitem>
59 <para> 71 <para>
60 a string: the binary format used to write all the entries of 72 Single integer > 0: number of numbers to be
61 <varname>x</varname>. 73 parsed and returned. Each number is encoded over one or
74 several bytes, according to the used <varname>binFormat</varname>.
75 <note>To read all numbers remaining in the file, use a
76 value <varname>nNumb</varname> big enough.
77 </note>
62 </para> 78 </para>
63 </listitem> 79 </listitem>
64 </varlistentry> 80 </varlistentry>
65 <varlistentry> 81 <varlistentry>
66 <term>x</term> 82 <term>binFormat</term>
67 <listitem>
68 <para>a vector of floating point or integer numbers.</para>
69 </listitem>
70 </varlistentry>
71 </variablelist>
72 </refsection>
73 <refsection>
74 <title>Description</title>
75 <para>
76 The <function>mget</function> function reads data in the input
77 specified by the stream parameter <varname>fd</varname> and returns a
78 vector of floating point data.
79 </para>
80 <para>
81 The <function>mgeti</function> function reads data in the input
82 specified by the stream parameter <varname>fd</varname> and returns a
83 vector of integer data.
84 </para>
85 <para>
86 Data is read at the position at which the file pointer is currently
87 pointing and advances the indicator appropriately.
88 </para>
89 <para>
90 The <varname>type</varname> parameter is a conversion specifier
91 which may be set to any of the following flag characters (with default
92 value <literal>"l"</literal>):
93 </para>
94 <para>
95 <note>
96 On Windows, default behavior is to skip byte 13 (<literal>0x0D</literal>).
97 <function>mopen</function> should be called with the
98 <literal>'b'</literal> option, e.g.
99 <code>fd1 = mopen(file1,'rb')</code>, so that all bytes will be read
100 without exception.
101 </note>
102 </para>
103 <para>Data type:</para>
104 <variablelist>
105 <varlistentry>
106 <term>d</term>
107 <listitem>
108 <para>double</para>
109 </listitem>
110 </varlistentry>
111 <varlistentry>
112 <term>f</term>
113 <listitem>
114 <para>float</para>
115 </listitem>
116 </varlistentry>
117 <varlistentry>
118 <term>l</term>
119 <listitem>
120 <para>long long int</para>
121 </listitem>
122 </varlistentry>
123 <varlistentry>
124 <term>i</term>
125 <listitem>
126 <para>int or long int</para>
127 </listitem>
128 </varlistentry>
129 <varlistentry>
130 <term>s</term>
131 <listitem>
132 <para>short</para>
133 </listitem>
134 </varlistentry>
135 <varlistentry>
136 <term>c</term>
137 <listitem> 83 <listitem>
138 <para>character</para> 84 <para>
139 </listitem> 85 a text word made of one, 2 or 3 character codes: the binary
140 </varlistentry> 86 format used to parse numbers in the binary file.
141 </variablelist> 87 Available binary codes are the following:
142 <para>Optional flag:</para> 88 <table>
143 <variablelist> 89 <tr valign="top">
144 <varlistentry> 90 <td align="right">c</td>
145 <term>u..</term> 91 <td>: individual bytes parsed as
146 <listitem> 92 <literal>int8</literal> integers
147 <para>unsigned (in combination with one of the above types)</para> 93 </td>
94 </tr>
95 <tr valign="top">
96 <td align="right">uc</td>
97 <td>: individual bytes parsed as
98 <literal>uint8</literal> unsigned integers >0
99 </td>
100 </tr>
101 <tr valign="top">
102 <td align="right">s</td>
103 <td>: 2-byte blocks parsed as
104 <literal>int16</literal> integers
105 </td>
106 </tr>
107 <tr valign="top">
108 <td align="right">us</td>
109 <td>: 2-byte blocks parsed as
110 <literal>uint16</literal> unsigned integers >0
111 </td>
112 </tr>
113 <tr valign="top">
114 <td align="right">i</td>
115 <td>: 4-byte blocks parsed as
116 <literal>int32</literal> integers
117 (<emphasis role="bold">default mode</emphasis>).
118 </td>
119 </tr>
120 <tr valign="top">
121 <td align="right">ui</td>
122 <td>: 4-byte blocks parsed as
123 <literal>uint32</literal> unsigned integers >0
124 </td>
125 </tr>
126 <tr valign="top">
127 <td align="right">l</td>
128 <td>: 8-byte blocks parsed as
129 <literal>int64</literal> integers
130 </td>
131 </tr>
132 <tr valign="top">
133 <td align="right">ul</td>
134 <td>: 8-byte blocks parsed as
135 <literal>uint64</literal> unsigned integers >0
136 </td>
137 </tr>
138 <tr>
139 <td/>
140 <td>
141 Only with <function>mget()</function> :
142 </td>
143 </tr>
144 <tr valign="top">
145 <td align="right">f</td>
146 <td>: 4-byte blocks parsed as
147 "single precision" decimal numbers
148 (so-called "<emphasis role="bold">f</emphasis>loats"
149 in oldies)
150 </td>
151 </tr>
152 <tr valign="top">
153 <td align="right">d</td>
154 <td>: 8-byte blocks parsed as
155 <emphasis role="bold">d</emphasis>ecimal numbers
156 </td>
157 </tr>
158 </table>
159 </para>
160 <para>
161 The default order of bytes in a block can be set using
162 a <function>mopen</function> option when opening the file.
163 This order may be forced afterwards using an optional
164 <function>mget</function> or <function>mgeti</function>
165 flag to be appended to <varname>binFormat</varname>:
166 <table>
167 <tr valign="top">
168 <td align="right">..l :</td>
169 <td><emphasis role="bold">l</emphasis>ittle endian
170 (first byte in the block = low power byte)
171 </td>
172 </tr>
173 <tr valign="top">
174 <td align="right">..b :</td>
175 <td><emphasis role="bold">b</emphasis>ig endian
176 (first byte in the block = high power byte)
177 </td>
178 </tr>
179 </table>
180 </para>
148 </listitem> 181 </listitem>
149 </varlistentry> 182 </varlistentry>
150 <varlistentry> 183 <varlistentry>
151 <term>..l</term> 184 <term>D</term>
152 <listitem> 185 <listitem>
153 <para> 186 <para>
154 little endian (in combination with one of the above types) 187 Row of <varname>nNumb</varname> Decimal numbers
188 (or available ones if the End Of File has been reached).
155 </para> 189 </para>
156 </listitem> 190 </listitem>
157 </varlistentry> 191 </varlistentry>
158 <varlistentry> 192 <varlistentry>
159 <term>..b</term> 193 <term>I</term>
160 <listitem> 194 <listitem>
161 <para> 195 <para>
162 big endian (in combination with one of the above types) 196 Row of <varname>nNumb</varname> encoded Integers
197 (or available ones if the End Of File has been reached).
198 The <function>inttype</function> of returned integers
199 depends on the used <varname>binFormat</varname>.
163 </para> 200 </para>
164 </listitem> 201 </listitem>
165 </varlistentry> 202 </varlistentry>
166 </variablelist> 203 </variablelist>
204 </refsection>
205 <refsection>
206 <title>Description</title>
167 <para> 207 <para>
168 Bytes read is automatically swapped if necessary (by checking 208 <function>mget</function> and <function>mgeti</function> start reading
169 <literal>little=endian</literal> status). 209 bytes in the specified file from the current position of the inner
210 file pointer. After reading a block of N bytes (N==1,2,4,8 according
211 to the chosen <varname>binFormat</varname>),
212 <itemizedlist>
213 <listitem>
214 the file pointer is increased by N bytes and set to the
215 beginning of next block.
216 </listitem>
217 <listitem>
218 the read block is ordered according to the default or chosen
219 swapping endian mode. The parsed block is then stored to
220 be returned.
221 </listitem>
222 </itemizedlist>
223 This is iterated <varname>nNumb</varname> times, unless
224 the End Of File is reached: In this case, parsing the file is
225 stopped, the uncomplete block is left (if any), the EOF status is set,
226 and already parsed numbers are returned.
170 </para> 227 </para>
171 <para> 228 <para>
172 This default swapping behavior can be suppressed by adding a flag in 229 When <function>mgeti()</function> is used, parsed numbers are
173 the <function>mopen</function> function. 230 converted into the <function>inttype</function> corresponding to
231 the chosen <varname>binFormat</varname> and then returned.
174 </para> 232 </para>
175 <para> 233 <para>
176 Formats <literal>"l"</literal>, <literal>"d"</literal> and 234 When <function>mget()</function> is used, binary numbers are
177 <literal>"f"</literal> are only valid with the 235 parsed according to <varname>binFormat</varname> but are finally
178 <function>mget</function> function. 236 converted into 8-byte decimal numbers and then returned.
237 <warning>
238 If <literal>int64</literal> or <literal>uint64</literal>
239 integers > 2<superscript>53</superscript> were parsed thanks
240 to the <literal>"ul*"</literal> or <literal>"l*"</literal> format,
241 their final conversion into decimal numbers
242 truncates their mantissa to their 53 highest bits.
243 </warning>
179 </para> 244 </para>
180 </refsection> 245 </refsection>
181 <refsection> 246 <refsection>
182 <title>Examples</title> 247 <title>Examples</title>
183 <programlisting role="example"><![CDATA[ 248 <programlisting role="example"><![CDATA[
184file1 = fullfile(TMPDIR,'test1.bin'); 249binfile = TMPDIR+"/mgetest.bin";
185file2 = fullfile(TMPDIR,'test2.bin'); 250idF = mopen(binfile, "w+b");
186fd1=mopen(file1,'wb'); 251mput(int8(0:16),"uc");
187fd2=mopen(file2,'wb');
188mput(1996,'ull',fd1);
189mput(1996,'ull',fd2);
190mclose(fd1);
191mclose(fd2);
192 252
193fd1=mopen(file1,'rb'); 253 mseek(0);
194if 1996<>mget(1,'ull',fd1) 254 mgeti(1,"uc") // 0 expected
195 write(%io(2),'Bug'); 255 mgeti(2,"uc") // 1, 2 expected
196end 256[mgeti(1,"us"), uint16(3 + 4*256)]
257 mseek(3); // back to the previous position on "3"
258[mgeti(1,"usb"), uint16(4 + 3*256)] // swapped bytes (big endian)
259 mseek(0);
260[mgeti(1,"ui") , uint32(0 + 256*(1 + 256*(2 + 256*3)))]
261 mseek(0);
262[mgeti(1,"uib"), uint32(3 + 256*(2 + 256*(1 + 256*0)))]
263mclose(idF);
197 264
198fd2=mopen(file2,'rb'); 265// uint64 and int64 integers with a relative accuracy of 1/2^64 = %eps/2^12
199if 1996<>mget(1,'ull',fd2) 266// better than decimals one are well handled:
200 write(%io(2),'Bug'); 267 // Generating n 64-bit long integers with bits #0-#63 set randomly:
201end 268n = 5;
269b = grand(64,n,"uin",0,1);
270p = uint64(2).^ndgrid(0:63,1:n);
271x0 = sum(b.*p, "r");
202 272
203mclose(fd1); 273 // We write them in a file, and then re-read them with mgeti():
204mclose(fd2); 274for usign = ["u" ""]
275 for endian = ["l" "b"]
276 binfile = TMPDIR+"/mgetiTestInt64.dat";
277 idF = mopen(binfile, "w+b");
278 x = x0;
279 if usign==""
280 x = int64(x);
281 end
282 mput(x,usign+"l"+endian) // "l" is mandatory to manage all the 64 bits
283
284 // Now, read them in the same mode:
285 mseek(0);
286 xr = mgeti(n, usign+"l"+endian);
287 mclose(idF);
288
289 // Display:
290 wrParse = usign + "l" + endian;
291 printf(" Write as ""%s"" Read as ""%s""\n", wrParse, wrParse);
292 [x' xr']
293 end
294end
205 ]]></programlisting> 295 ]]></programlisting>
206 </refsection> 296 </refsection>
207 <refsection role="see also"> 297 <refsection role="see also">
208 <title>See also</title> 298 <title>See also</title>
209 <simplelist type="inline"> 299 <simplelist type="inline">
210 <member> 300 <member>
211 <link linkend="mclose">mclose</link>
212 </member>
213 <member>
214 <link linkend="meof">meof</link>
215 </member>
216 <member>
217 <link linkend="mfprintf">mfprintf</link>
218 </member>
219 <member>
220 <link linkend="fprintfMat">fprintfMat</link>
221 </member>
222 <member>
223 <link linkend="mfscanf">mfscanf</link>
224 </member>
225 <member>
226 <link linkend="fscanfMat">fscanfMat</link>
227 </member>
228 <member>
229 <link linkend="mgetl">mgetl</link>
230 </member>
231 <member>
232 <link linkend="mgetstr">mgetstr</link>
233 </member>
234 <member>
235 <link linkend="mopen">mopen</link> 301 <link linkend="mopen">mopen</link>
236 </member> 302 </member>
237 <member> 303 <member>
238 <link linkend="mprintf">mprintf</link> 304 <link linkend="mclose">mclose</link>
239 </member> 305 </member>
240 <member> 306 <member>
241 <link linkend="mput">mput</link> 307 <link linkend="mput">mput</link>
242 </member> 308 </member>
243 <member> 309 <member>
244 <link linkend="mputl">mputl</link> 310 <link linkend="mseek">mseek</link>
311 </member>
312 <member>
313 <link linkend="mtell">mtell</link>
245 </member> 314 </member>
246 <member> 315 <member>
247 <link linkend="mputstr">mputstr</link> 316 <link linkend="meof">meof</link>
248 </member> 317 </member>
249 <member> 318 <member>
250 <link linkend="mseek">mseek</link> 319 <link linkend="readb">readb</link>
251 </member> 320 </member>
252 <member> 321 <member>
253 <link linkend="mtell">mtell</link> 322 <link linkend="read4b">read4b</link>
254 </member> 323 </member>
255 <member> 324 <member>
256 <link linkend="mdelete">mdelete</link> 325 <link linkend="inttype">inttype</link>
257 </member> 326 </member>
258 </simplelist> 327 </simplelist>
259 </refsection> 328 </refsection>
329 <refsection role="history">
330 <title>History</title>
331 <revhistory>
332 <revision>
333 <revnumber>6.1.0</revnumber>
334 <revdescription>mgeti(,"ul*"|"l*") is implemented
335 to read uint64 or int64 integers > 2<superscript>52</superscript>.
336 </revdescription>
337 </revision>
338 </revhistory>
339 </refsection>
260</refentry> 340</refentry>
diff --git a/scilab/modules/fileio/help/ja_JP/mget.xml b/scilab/modules/fileio/help/ja_JP/mget.xml
deleted file mode 100644
index 967933c..0000000
--- a/scilab/modules/fileio/help/ja_JP/mget.xml
+++ /dev/null
@@ -1,488 +0,0 @@
1<?xml version="1.0" encoding="UTF-8"?>
2
3<!--
4 * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
5 * Copyright (C) 2008 - INRIA
6 * ...
7 *
8 * Copyright (C) 2012 - 2016 - Scilab Enterprises
9 *
10 * This file is hereby licensed under the terms of the GNU GPL v2.0,
11 * pursuant to article 5.3.4 of the CeCILL v.2.1.
12 * This file was originally licensed under the terms of the CeCILL v2.1,
13 * and continues to be available under such terms.
14 * For more information, see the COPYING file which you should have received
15 * along with this program.
16 *
17 -->
18
19<refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:svg="http://www.w3.org/2000/svg" xmlns:ns5="http://www.w3.org/1999/xhtml" xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:db="http://docbook.org/ns/docbook" xmlns:scilab="http://www.scilab.org" xml:id="mget" xml:lang="ja">
20
21 <refnamediv>
22
23 <refname>mget</refname>
24
25 <refpurpose>
26
27 指定したバイナリ形式で
28
29 バイトまたはワードを読み込み, double に変換
30
31 </refpurpose>
32
33 </refnamediv>
34
35 <refnamediv xml:id="mgeti">
36
37 <refname>mgeti</refname>
38
39 <refpurpose>
40
41 指定したバイナリ形式で
42
43 バイトまたはワードを読み込み, int型に変換
44
45 </refpurpose>
46
47 </refnamediv>
48
49 <refsynopsisdiv>
50
51 <title>呼び出し手順</title>
52
53 <synopsis>
54
55 x = mget([n, type, fd])
56
57 x = mgeti([n, type, fd])
58
59 </synopsis>
60
61 </refsynopsisdiv>
62
63 <refsection>
64
65 <title>引数</title>
66
67 <variablelist>
68
69 <varlistentry>
70
71 <term>n</term>
72
73 <listitem>
74
75 <para>正のスカラー: 読み込むデータの数.</para>
76
77 </listitem>
78
79 </varlistentry>
80
81 <varlistentry>
82
83 <term>fd</term>
84
85 <listitem>
86
87 <para>
88
89 スカラー:
90
91 <function>mopen</function>により返されたファイル記述子.
92
93 <literal>-1</literal>は直近にオープンされたファイルを意味します.
94
95 デフォルト値は<literal>-1</literal>です.
96
97 </para>
98
99 </listitem>
100
101 </varlistentry>
102
103 <varlistentry>
104
105 <term>type</term>
106
107 <listitem>
108
109 <para>
110
111 文字列: <varname>x</varname>の全エントリを書き込むために使用する
112
113 バイナリフォーマットを指定.
114
115 </para>
116
117 </listitem>
118
119 </varlistentry>
120
121 <varlistentry>
122
123 <term>x</term>
124
125 <listitem>
126
127 <para>浮動小数点数または整数値のベクトル</para>
128
129 </listitem>
130
131 </varlistentry>
132
133 </variablelist>
134
135 </refsection>
136
137 <refsection>
138
139 <title>説明</title>
140
141 <para>
142
143 <function>mget</function> 関数は,
144
145 ストリームパラメータ<varname>fd</varname>により指定された入力の
146
147 データを読み込み,浮動小数点数データのベクトルを返します.
148
149 </para>
150
151 <para>
152
153 <function>mgeti</function> 関数は,
154
155 ストリームパラメータ<varname>fd</varname>により指定された入力の
156
157 データを読み込み,整数データのベクトルを返します.
158
159 </para>
160
161 <para>
162
163 ファイルポインタが現在指している場所からデータが読み込まれ,
164
165 適当にインジケータが進まされます.
166
167 </para>
168
169 <para>
170
171 <varname>type</varname>パラメータは変換指定子で,
172
173 以下のフラグ文字のどれか (デフォルト値は<literal>"l"</literal>)を設定できます:
174
175 </para>
176
177 <para>
178
179 <note>
180
181 Windowsにおけるデフォルトの動作では,バイト13
182
183 (<literal>0x0D</literal>)をスキップします.
184
185 <literal>'b'</literal>を指定して<function>mopen</function>を
186
187 コールする必要があります.
188
189 例えば, 例外なく全てのバイトを読み込むには,
190
191 <code>fd1 = mopen(file1,'rb')</code> とします.
192
193 </note>
194
195 </para>
196
197 <para>データ型:</para>
198
199 <variablelist>
200
201 <varlistentry>
202
203 <term>d</term>
204
205 <listitem>
206
207 <para>double</para>
208
209 </listitem>
210
211 </varlistentry>
212
213 <varlistentry>
214
215 <term>f</term>
216
217 <listitem>
218
219 <para>float</para>
220
221 </listitem>
222
223 </varlistentry>
224
225 <varlistentry>
226
227 <term>l</term>
228
229 <listitem>
230
231 <para>long</para>
232
233 </listitem>
234
235 </varlistentry>
236
237 <varlistentry>
238
239 <term>i</term>
240
241 <listitem>
242
243 <para>int</para>
244
245 </listitem>
246
247 </varlistentry>
248
249 <varlistentry>
250
251 <term>s</term>
252
253 <listitem>
254
255 <para>short</para>
256
257 </listitem>
258
259 </varlistentry>
260
261 <varlistentry>
262
263 <term>c</term>
264
265 <listitem>
266
267 <para>character</para>
268
269 </listitem>
270
271 </varlistentry>
272
273 </variablelist>
274
275 <para>オプションのフラグ:</para>
276
277 <variablelist>
278
279 <varlistentry>
280
281 <term>u..</term>
282
283 <listitem>
284
285 <para>符号なし (上記の型のどれかと組み合わせます)</para>
286
287 </listitem>
288
289 </varlistentry>
290
291 <varlistentry>
292
293 <term>..l</term>
294
295 <listitem>
296
297 <para>リトルインディアン (上記の型のどれかと組み合わせます)</para>
298
299 </listitem>
300
301 </varlistentry>
302
303 <varlistentry>
304
305 <term>..b</term>
306
307 <listitem>
308
309 <para>ビッグインディアン (上記の型のどれかと組み合わせます)</para>
310
311 </listitem>
312
313 </varlistentry>
314
315 </variablelist>
316
317 <para>
318
319 (<literal>little=endian</literal>ステータスをチェックすることにより)
320
321 読み込まれたバイトは必要に応じて自動的にスワップされます.
322
323 </para>
324
325 <para>
326
327 このデフォルトのスワップ動作は
328
329 <function>mopen</function>関数にフラグを追加することにより抑制することが
330
331 できます.
332
333 </para>
334
335 <para>
336 フォーマット <literal>"l"</literal>, <literal>"d"</literal>
337
338 および <literal>"f"</literal> は, <function>mget</function>
339
340 関数でのみ有効です.
341
342 </para>
343
344 </refsection>
345
346 <refsection>
347
348 <title>例</title>
349
350 <programlisting role="example"><![CDATA[
351file1 = fullfile(TMPDIR,'test1.bin');
352file2 = fullfile(TMPDIR,'test2.bin');
353fd1=mopen(file1,'wb');
354fd2=mopen(file2,'wb');
355mput(1996,'ull',fd1);
356mput(1996,'ull',fd2);
357mclose(fd1);
358mclose(fd2);
359fd1=mopen(file1,'rb');
360if 1996<>mget(1,'ull',fd1)
361 write(%io(2),'Bug');
362end
363
364fd2=mopen(file2,'rb');
365if 1996<>mget(1,'ull',fd2)
366 write(%io(2),'Bug');
367end
368
369mclose(fd1);
370mclose(fd2);
371 ]]></programlisting>
372
373 </refsection>
374
375 <refsection role="see also">
376
377 <title>参照</title>
378
379 <simplelist type="inline">
380
381 <member>
382
383 <link linkend="mclose">mclose</link>
384
385 </member>
386
387 <member>
388
389 <link linkend="meof">meof</link>
390
391 </member>
392
393 <member>
394
395 <link linkend="mfprintf">mfprintf</link>
396
397 </member>
398
399 <member>
400
401 <link linkend="fprintfMat">fprintfMat</link>
402
403 </member>
404
405 <member>
406
407 <link linkend="mfscanf">mfscanf</link>
408
409 </member>
410
411 <member>
412
413 <link linkend="fscanfMat">fscanfMat</link>
414
415 </member>
416
417 <member>
418
419 <link linkend="mgetl">mgetl</link>
420
421 </member>
422
423 <member>
424
425 <link linkend="mgetstr">mgetstr</link>
426
427 </member>
428
429 <member>
430
431 <link linkend="mopen">mopen</link>
432
433 </member>
434
435 <member>
436
437 <link linkend="mprintf">mprintf</link>
438
439 </member>
440
441 <member>
442
443 <link linkend="mput">mput</link>
444
445 </member>
446
447 <member>
448
449 <link linkend="mputl">mputl</link>
450
451 </member>
452
453 <member>
454
455 <link linkend="mputstr">mputstr</link>
456
457 </member>
458
459 <member>
460
461 <link linkend="mscanf">mscanf</link>
462
463 </member>
464
465 <member>
466
467 <link linkend="mseek">mseek</link>
468
469 </member>
470
471 <member>
472
473 <link linkend="mtell">mtell</link>
474
475 </member>
476
477 <member>
478
479 <link linkend="mdelete">mdelete</link>
480
481 </member>
482
483 </simplelist>
484
485 </refsection>
486
487</refentry>
488
diff --git a/scilab/modules/fileio/help/ru_RU/mget.xml b/scilab/modules/fileio/help/ru_RU/mget.xml
index 58e3e4a..55069f2 100644
--- a/scilab/modules/fileio/help/ru_RU/mget.xml
+++ b/scilab/modules/fileio/help/ru_RU/mget.xml
@@ -2,9 +2,8 @@
2<!-- 2<!--
3 * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab 3 * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
4 * Copyright (C) 2008 - INRIA 4 * Copyright (C) 2008 - INRIA
5 * ...
6 *
7 * Copyright (C) 2012 - 2016 - Scilab Enterprises 5 * Copyright (C) 2012 - 2016 - Scilab Enterprises
6 * Copyright (C) 2016 - Samuel GOUGEON
8 * 7 *
9 * This file is hereby licensed under the terms of the GNU GPL v2.0, 8 * This file is hereby licensed under the terms of the GNU GPL v2.0,
10 * pursuant to article 5.3.4 of the CeCILL v.2.1. 9 * pursuant to article 5.3.4 of the CeCILL v.2.1.
@@ -14,244 +13,329 @@
14 * along with this program. 13 * along with this program.
15 * 14 *
16 --> 15 -->
17<refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:svg="http://www.w3.org/2000/svg" xmlns:ns5="http://www.w3.org/1999/xhtml" xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:db="http://docbook.org/ns/docbook" xmlns:scilab="http://www.scilab.org" xml:id="mget" xml:lang="ru"> 16<refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink"
17 xmlns:svg="http://www.w3.org/2000/svg" xmlns:ns5="http://www.w3.org/1999/xhtml"
18 xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:db="http://docbook.org/ns/docbook"
19 xmlns:scilab="http://www.scilab.org" xml:id="mget" xml:lang="ru">
18 <refnamediv> 20 <refnamediv>
19 <refname>mget</refname> 21 <refname>mget</refname>
20 <refpurpose> 22 <refpurpose>
21 считывает байт или слово в заданном двоичном формате и преобразует в 23 проверяет числа в двоичом файле и возвращает их в виде десятичных чисел
22 число удвоенной точности
23 </refpurpose> 24 </refpurpose>
24 </refnamediv> 25 </refnamediv>
26 <refsynopsisdiv>
27 <title>Синтаксис</title>
28 <synopsis>
29 D = mget(nNumb)
30 D = mget(nNumb, binFormat)
31 D = mget(nNumb, binFormat, fileID)
32 </synopsis>
33 </refsynopsisdiv>
25 <refnamediv xml:id="mgeti"> 34 <refnamediv xml:id="mgeti">
26 <refname>mgeti</refname> 35 <refname>mgeti</refname>
27 <refpurpose> 36 <refpurpose>
28 считывает байт или слово в заданном двоичном формате и возвращает 37 проверяет числа в двоичом файле и возвращает их в виде кодированных целых чисел
29 целочисленное значение типа int
30 </refpurpose> 38 </refpurpose>
31 </refnamediv> 39 </refnamediv>
32 <refsynopsisdiv> 40 <refsynopsisdiv>
33 <title>Синтаксис</title> 41 <title>Синтаксис</title>
34 <synopsis> 42 <synopsis>
35 x = mget([n, type, fd]) 43 I = mgeti(nNumb)
36 x = mgeti([n, type, fd]) 44 I = mgeti(nNumb, binFormat)
45 I = mgeti(nNumb, binFormat, fileID)
37 </synopsis> 46 </synopsis>
38 </refsynopsisdiv> 47 </refsynopsisdiv>
39 <refsection> 48 <refsection>
40 <title>Аргументы</title> 49 <title>Аргументы</title>
41 <variablelist> 50 <variablelist>
42 <varlistentry> 51 <varlistentry>
43 <term>n</term> 52 <term>fileID</term>
44 <listitem>
45 <para>положительный скаляр: количество считываемых данных.</para>
46 </listitem>
47 </varlistentry>
48 <varlistentry>
49 <term>fd</term>
50 <listitem> 53 <listitem>
51 <para> 54 <para>
52 скаляр: параметр <varname>fd</varname>, возращённый функцией <function>mopen</function>. Для последнего открытого файла ставится -1. Значение по умолчанию -1. 55 идентификатор файла (целое число типа single), возвращаемое
56 функцией <function>mopen</function> при открытии файла.
57 По умолчанию используется последний открытый файл.
58 <important>
59 Файл должен быть открыт в режиме чтения двоичных данных
60 с помощью инструкции <code>fileID = mopen(filename,'rb')</code>.
61 </important>
53 </para> 62 </para>
54 </listitem> 63 </listitem>
55 </varlistentry> 64 </varlistentry>
56 <varlistentry> 65 <varlistentry>
57 <term>type</term> 66 <term>nNumb</term>
58 <listitem> 67 <listitem>
59 <para> 68 <para>
60 строка: двоичный формат, используемый для записи всех элементов 69 Целое положительное число типа single: количество чисел,
61 <varname>x</varname>. 70 которые следует проверить и вернуть. Каждое число
71 закодировано одним или несколькими байтами, в соответствии
72 с используемым форматом <varname>binFormat</varname>.
73 <note>
74 Чтобы прочитать все числа, оставшиеся в файле, используйте
75 достаточно большое значение <varname>nNumb</varname>.
76 </note>
62 </para> 77 </para>
63 </listitem> 78 </listitem>
64 </varlistentry> 79 </varlistentry>
65 <varlistentry> 80 <varlistentry>
66 <term>x</term> 81 <term>binFormat</term>
67 <listitem> 82 <listitem>
68 <para> 83 <para>
69 вектор целых чисел или чисел с плавающей запятой. 84 текстовое значение составленное из одного, двух или трёх
85 символов-кодов: двоичный формат, используемый для проверки
86 чисел в двоичном файле. Доступны следующие двоичные коды:
87 <table>
88 <tr valign="top">
89 <td align="right">c</td>
90 <td>: индивидуальные байты проверяются как целые числа
91 типа <literal>int8</literal>;
92 </td>
93 </tr>
94 <tr valign="top">
95 <td align="right">uc</td>
96 <td>: индивидуальные байты проверяются как целые
97 беззнаковые положительные числа типа <literal>uint8</literal>;
98 </td>
99 </tr>
100 <tr valign="top">
101 <td align="right">s</td>
102 <td>: двухбайтные блоки проверяются как целые числа типа
103 <literal>int16</literal>;
104 </td>
105 </tr>
106 <tr valign="top">
107 <td align="right">us</td>
108 <td>: двухбайтные блоки проверяются как целые беззнаковые
109 положительные числа типа <literal>uint16</literal>;
110 </td>
111 </tr>
112 <tr valign="top">
113 <td align="right">i</td>
114 <td>: четырёхбайтные блоки проверяются как целые числа
115 типа <literal>int32</literal>
116 (<emphasis role="bold">режим по умолчанию</emphasis>).
117 </td>
118 </tr>
119 <tr valign="top">
120 <td align="right">ui</td>
121 <td>: четырёхбайтные блоки проверяются как целые
122 беззнаковые положительные числа типа <literal>uint32</literal>;
123 </td>
124 </tr>
125 <tr valign="top">
126 <td align="right">l</td>
127 <td>: восьми байтные блоки проверяются как целые числа
128 типа <literal>int64</literal>;
129 </td>
130 </tr>
131 <tr valign="top">
132 <td align="right">ul</td>
133 <td>: восьмибайтные блоки проверяются как целые
134 беззнаковые положительные числа типа
135 <literal>uint64</literal>;
136 </td>
137 </tr>
138 <tr>
139 <td/>
140 <td>
141 Только с <function>mget()</function> :
142 </td>
143 </tr>
144 <tr valign="top">
145 <td align="right">f</td>
146 <td>: четырёхбайтные блоки проверяются как десятичные
147 числа "одинарной точности" (так называемые "числа
148 с плавающей запятой", "<emphasis role="bold">f</emphasis>loats")
149 </td>
150 </tr>
151 <tr valign="top">
152 <td align="right">d</td>
153 <td>: восьмибайтные блоки проверяются как десятичные
154 ("<emphasis role="bold">d</emphasis>ecimal") числа.
155 </td>
156 </tr>
157 </table>
70 </para> 158 </para>
71 </listitem>
72 </varlistentry>
73 </variablelist>
74 </refsection>
75 <refsection>
76 <title>Описание</title>
77 <para>
78 Функция <function>mget</function> считывает данные со входа, определённого параметром потока <varname>fd</varname> и возвращает вектор данных с плавающей запятой.
79 </para>
80
81 <para>
82 Функция <function>mgeti</function> считывает данные со входа, определённого параметром потока <varname>fd</varname> и возвращает вектор целочисленных данных.
83 </para>
84 <para>
85 Данные считываются в положении, на которое в данный момент указывает указатель файла и передвигает индикатор далее соответствующим образом.
86 </para>
87 <para>
88 Параметр <varname>type</varname> является указателем преобразования, который может быть установлен в любой из следующих символов-флагов (со значением по умолчанию <literal>"l"</literal>):
89 </para>
90 <para>
91 <note>
92 В Windows, поведение по умолчанию состоит в пропуске байта 13 (<literal>0x0D</literal>).
93 Функцию <function>mopen</function> следует вызывать с опцией
94 <literal>'b'</literal>, например, <code>fd1 = mopen(file1,'rb')</code>, так что все байты без исключения будут прочитаны.
95 </note>
96 </para>
97 <para>Тип данных:</para>
98 <variablelist>
99 <varlistentry>
100 <term>d</term>
101 <listitem>
102 <para>удвоенная точность, double</para>
103 </listitem>
104 </varlistentry>
105 <varlistentry>
106 <term>f</term>
107 <listitem>
108 <para>плавающая запятая, float</para>
109 </listitem>
110 </varlistentry>
111 <varlistentry>
112 <term>l</term>
113 <listitem>
114 <para>длинное, long long</para>
115 </listitem>
116 </varlistentry>
117 <varlistentry>
118 <term>i</term>
119 <listitem>
120 <para>целочисленное, int (long int)</para>
121 </listitem>
122 </varlistentry>
123 <varlistentry>
124 <term>s</term>
125 <listitem>
126 <para>короткое, short</para>
127 </listitem>
128 </varlistentry>
129 <varlistentry>
130 <term>c</term>
131 <listitem>
132 <para>символ, character</para>
133 </listitem>
134 </varlistentry>
135 </variablelist>
136 <para>Необязательный флаг:</para>
137 <variablelist>
138 <varlistentry>
139 <term>u..</term>
140 <listitem>
141 <para> 159 <para>
142 беззнаковый (в сочетании с одним из вышеперечисленных типов) 160 По умолчанию порядок байтов в блоке может быть установлен
161 с помощью опции функции <function>mopen</function> при
162 открытии файла. Этот порядок затем может принудительно
163 быть использован с помощью настроечного флага функции
164 <function>mget</function> или <function>mgeti</function>,
165 который добавляется к <varname>binFormat</varname>:
166 <table>
167 <tr valign="top">
168 <td align="right">..l :</td>
169 <td>прямой порядок байтов (
170 <emphasis role="bold">l</emphasis>ittle endian
171 (младший байт идёт в начале блока);
172 </td>
173 </tr>
174 <tr valign="top">
175 <td align="right">..b :</td>
176 <td>обратный порядок байтов (
177 <emphasis role="bold">b</emphasis>ig endian
178 (старший байт идёт в начале блока).
179 </td>
180 </tr>
181 </table>
143 </para> 182 </para>
144 </listitem> 183 </listitem>
145 </varlistentry> 184 </varlistentry>
146 <varlistentry> 185 <varlistentry>
147 <term>..l</term> 186 <term>D</term>
148 <listitem> 187 <listitem>
149 <para> 188 <para>
150 прямой порядок байтов (в сочетании с одним из вышеперечисленных 189 Ряд из <varname>nNumb</varname> десятичных чисел
151 тио) 190 (или имещихся чисел, если досиут кец файла).
152 </para> 191 </para>
153 </listitem> 192 </listitem>
154 </varlistentry> 193 </varlistentry>
155 <varlistentry> 194 <varlistentry>
156 <term>..b</term> 195 <term>I</term>
157 <listitem> 196 <listitem>
158 <para> 197 <para>
159 обратный порядок байтов (в сочетании с одним из вышеперечисленных 198 Ряд из <varname>nNumb</varname> закодированных целых чисел
160 типов) 199 (или имеющихся чисел, если достигнут конец файла).
200 Функция <function>inttype</function> возвращённых целых чисел
201 зависит от используемого формата <varname>binFormat</varname>.
161 </para> 202 </para>
162 </listitem> 203 </listitem>
163 </varlistentry> 204 </varlistentry>
164 </variablelist> 205 </variablelist>
206 </refsection>
207 <refsection>
208 <title>Описание</title>
165 <para> 209 <para>
166 Чтение байтов автоматически переключается при необходимости (с помощью проверки статуса <literal>little=endian</literal>). 210 Функции <function>mget</function> и <function>mgeti</function> начинают
167 </para> 211 чтение байтов в указанном файле с текущей позиции внутреннего файлового
212 указателя. После чтения блока из <literal>N</literal> байтов
213 (<literal>N==1,2,4,8</literal> в соответствии с выбранным форматом
214 <varname>binFormat</varname>),
215 <itemizedlist>
216 <listitem>
217 файловый указатель увеличивается на <literal>N</literal>
218 байтов и устанавливается в начало следующего блока;
219 </listitem>
220 <listitem>
221 блоки чтения идут в порядке, соответствующем выбранному или
222 установленному по умолчанию режиму порядка байтов.
223 Проверяемый блок затем сохраняется для возврата.
224 </listitem>
225 </itemizedlist>
226 Эти действия повторяются <varname>nNumb</varname> раз до тех пор,
227 пока не будет достигнут конец файла: в этом случае проверка файла
228 прекращается, неполный блок остаётся (если он есть), взводится статус
229 <literal>EOF</literal> и уже проверенные числа возвращаются.
230 </para>
168 <para> 231 <para>
169 Такое поведение переключения можно подавить, если добавить флаг в функцию <function>mopen</function>. 232 Когда используется функция <function>mgeti()</function>, проверяемые
233 числа преобразуются в тип целого числа <function>inttype</function>
234 в соответствии с выбранным форматом <varname>binFormat</varname>, а
235 затем возвращаются.
236 is used, parsed numbers are
237 converted into the <function>inttype</function> corresponding to
238 the chosen <varname>binFormat</varname> and then returned.
170 </para> 239 </para>
171 <para> 240 <para>
172 Форматы <literal>"l"</literal>, <literal>"d"</literal> и 241 Когда используется функция <function>mget()</function>, двоичные числа
173 <literal>"f"</literal> корректны только с функцией 242 проверяются в соответствии с форматом <varname>binFormat</varname>, то
174 <function>mget</function>. 243 в конце преобразуюся в восьмибайтные десятичные числа и затем возвращаются.
244 <warning>
245 Если, благодаря формату <literal>"ul*"</literal> или <literal>"l*"</literal>,
246 проверялись целые числа <literal>int64</literal> или <literal>uint64</literal>,
247 то их конечное преобразование в десятичные числа усекает их мантиссу
248 до 53 старших битов.
249 </warning>
175 </para> 250 </para>
176 </refsection> 251 </refsection>
177 <refsection> 252 <refsection>
178 <title>Примеры</title> 253 <title>Примеры</title>
179 <programlisting role="example"><![CDATA[ 254 <programlisting role="example"><![CDATA[
180file1 = fullfile(TMPDIR,'test1.bin'); 255binfile = TMPDIR+"/mgetest.bin";
181file2 = fullfile(TMPDIR,'test2.bin'); 256idF = mopen(binfile, "w+b");
182fd1=mopen(file1,'wb'); 257mput(int8(0:16),"uc");
183fd2=mopen(file2,'wb'); 258mseek(0);
184mput(1996,'ull',fd1); 259mgeti(1,"uc") // ожидается 0
185mput(1996,'ull',fd2); 260mgeti(2,"uc") // ожидается 1, 2
186mclose(fd1); 261[mgeti(1,"us"), uint16(3 + 4*256)]
187mclose(fd2); 262mseek(3); // возврат к предыдущей позиции на "3"
188 263[mgeti(1,"usb"), uint16(4 + 3*256)] // байты с изменёным порядком (прямой порядок)
189fd1=mopen(file1,'rb'); 264mseek(0);
190if 1996<>mget(1,'ull',fd1) 265[mgeti(1,"ui") , uint32(0 + 256*(1 + 256*(2 + 256*3)))]
191 write(%io(2),'Bug'); 266mseek(0);
192end 267[mgeti(1,"uib"), uint32(3 + 256*(2 + 256*(1 + 256*0)))]
193 268mclose(idF);
194fd2=mopen(file2,'rb'); 269// целые числа uint64 и int64 iс относительной точностью 1/2^64 = %eps/2^12
195if 1996<>mget(1,'ull',fd2) 270// обрабатываются лучше, чем десятичные:
196 write(%io(2),'Bug'); 271 // Формирование n 64-битных чисел с битами №0-№63, установленными случайным образом:
272n = 5;
273b = grand(64,n,"uin",0,1);
274p = uint64(2).^ndgrid(0:63,1:n);
275x0 = sum(b.*p, "r");
276 // Запишем их в файл, а затем вновь прочитем их с помощью mgeti():
277for usign = ["u" ""]
278 for endian = ["l" "b"]
279 binfile = TMPDIR+"/mgetiTestInt64.dat";
280 idF = mopen(binfile, "w+b");
281 x = x0;
282 if usign==""
283 x = int64(x);
284 end
285 mput(x,usign+"l"+endian) // "l" принудительно управляет всеми 64 битами
286 // Теперь прочитаем их в том же режиме:
287 mseek(0);
288 xr = mgeti(n, usign+"l"+endian);
289 mclose(idF);
290 // Отобразим:
291 wrParse = usign + "l" + endian;
292 printf(" Запись в виде ""%s"" Чтение в виде ""%s""\n", wrParse, wrParse);
293 [x' xr']
294 end
197end 295end
198
199mclose(fd1);
200mclose(fd2);
201 ]]></programlisting> 296 ]]></programlisting>
202 </refsection> 297 </refsection>
203 <refsection role="see also"> 298 <refsection role="see also">
204 <title>Смотрите также</title> 299 <title>Смотрите также</title>
205 <simplelist type="inline"> 300 <simplelist type="inline">
206 <member> 301 <member>
207 <link linkend="mclose">mclose</link>
208 </member>
209 <member>
210 <link linkend="meof">meof</link>
211 </member>
212 <member>
213 <link linkend="mfprintf">mfprintf</link>
214 </member>
215 <member>
216 <link linkend="fprintfMat">fprintfMat</link>
217 </member>
218 <member>
219 <link linkend="mfscanf">mfscanf</link>
220 </member>
221 <member>
222 <link linkend="fscanfMat">fscanfMat</link>
223 </member>
224 <member>
225 <link linkend="mgetl">mgetl</link>
226 </member>
227 <member>
228 <link linkend="mgetstr">mgetstr</link>
229 </member>
230 <member>
231 <link linkend="mopen">mopen</link> 302 <link linkend="mopen">mopen</link>
232 </member> 303 </member>
233 <member> 304 <member>
234 <link linkend="mprintf">mprintf</link> 305 <link linkend="mclose">mclose</link>
235 </member> 306 </member>
236 <member> 307 <member>
237 <link linkend="mput">mput</link> 308 <link linkend="mput">mput</link>
238 </member> 309 </member>
239 <member> 310 <member>
240 <link linkend="mputl">mputl</link> 311 <link linkend="mseek">mseek</link>
241 </member> 312 </member>
242 <member> 313 <member>
243 <link linkend="mputstr">mputstr</link> 314 <link linkend="mtell">mtell</link>
244 </member> 315 </member>
245 <member> 316 <member>
246 <link linkend="mseek">mseek</link> 317 <link linkend="meof">meof</link>
247 </member> 318 </member>
248 <member> 319 <member>
249 <link linkend="mtell">mtell</link> 320 <link linkend="readb">readb</link>
250 </member> 321 </member>
251 <member> 322 <member>
252 <link linkend="mdelete">mdelete</link> 323 <link linkend="read4b">read4b</link>
324 </member>
325 <member>
326 <link linkend="inttype">inttype</link>
253 </member> 327 </member>
254 </simplelist> 328 </simplelist>
255 </refsection> 329 </refsection>
330 <refsection role="history">
331 <title>История</title>
332 <revhistory>
333 <revision>
334 <revnumber>6.1.0</revnumber>
335 <revdescription>
336 внедрена mgeti(,"ul*"|"l*") для чтения чисел типа uint64 или int64 больше 2<superscript>52</superscript>.
337 </revdescription>
338 </revision>
339 </revhistory>
340 </refsection>
256</refentry> 341</refentry>
257
diff --git a/scilab/modules/fileio/includes/fileio_gw.hxx b/scilab/modules/fileio/includes/fileio_gw.hxx
index 991a2a3..8b7e06c 100644
--- a/scilab/modules/fileio/includes/fileio_gw.hxx
+++ b/scilab/modules/fileio/includes/fileio_gw.hxx
@@ -46,6 +46,7 @@ CPP_GATEWAY_PROTOTYPE(sci_mopen);
46CPP_GATEWAY_PROTOTYPE(sci_mclose); 46CPP_GATEWAY_PROTOTYPE(sci_mclose);
47CPP_GATEWAY_PROTOTYPE(sci_mput); 47CPP_GATEWAY_PROTOTYPE(sci_mput);
48CPP_GATEWAY_PROTOTYPE(sci_mget); 48CPP_GATEWAY_PROTOTYPE(sci_mget);
49CPP_GATEWAY_PROTOTYPE(sci_mgeti);
49CPP_GATEWAY_PROTOTYPE(sci_mputl); 50CPP_GATEWAY_PROTOTYPE(sci_mputl);
50CPP_GATEWAY_PROTOTYPE(sci_mgetl); 51CPP_GATEWAY_PROTOTYPE(sci_mgetl);
51CPP_GATEWAY_PROTOTYPE(sci_pathconvert); 52CPP_GATEWAY_PROTOTYPE(sci_pathconvert);
diff --git a/scilab/modules/fileio/sci_gateway/cpp/fileio_gw.cpp b/scilab/modules/fileio/sci_gateway/cpp/fileio_gw.cpp
index 94f4e32..baf5a95 100644
--- a/scilab/modules/fileio/sci_gateway/cpp/fileio_gw.cpp
+++ b/scilab/modules/fileio/sci_gateway/cpp/fileio_gw.cpp
@@ -38,6 +38,7 @@ int FileioModule::Load()
38 symbol::Context::getInstance()->addFunction(types::Function::createFunction(L"mclose", &sci_mclose, MODULE_NAME)); 38 symbol::Context::getInstance()->addFunction(types::Function::createFunction(L"mclose", &sci_mclose, MODULE_NAME));
39 symbol::Context::getInstance()->addFunction(types::Function::createFunction(L"mput", &sci_mput, MODULE_NAME)); 39 symbol::Context::getInstance()->addFunction(types::Function::createFunction(L"mput", &sci_mput, MODULE_NAME));
40 symbol::Context::getInstance()->addFunction(types::Function::createFunction(L"mget", &sci_mget, MODULE_NAME)); 40 symbol::Context::getInstance()->addFunction(types::Function::createFunction(L"mget", &sci_mget, MODULE_NAME));
41 symbol::Context::getInstance()->addFunction(types::Function::createFunction(L"mgeti", &sci_mgeti, MODULE_NAME));
41 symbol::Context::getInstance()->addFunction(types::Function::createFunction(L"mputl", &sci_mputl, MODULE_NAME)); 42 symbol::Context::getInstance()->addFunction(types::Function::createFunction(L"mputl", &sci_mputl, MODULE_NAME));
42 symbol::Context::getInstance()->addFunction(types::Function::createFunction(L"mgetl", &sci_mgetl, MODULE_NAME)); 43 symbol::Context::getInstance()->addFunction(types::Function::createFunction(L"mgetl", &sci_mgetl, MODULE_NAME));
43 symbol::Context::getInstance()->addFunction(types::Function::createFunction(L"pathconvert", &sci_pathconvert, MODULE_NAME)); 44 symbol::Context::getInstance()->addFunction(types::Function::createFunction(L"pathconvert", &sci_pathconvert, MODULE_NAME));
diff --git a/scilab/modules/fileio/sci_gateway/cpp/fileio_gw.vcxproj b/scilab/modules/fileio/sci_gateway/cpp/fileio_gw.vcxproj
index e23fadc..2a3d07b 100644
--- a/scilab/modules/fileio/sci_gateway/cpp/fileio_gw.vcxproj
+++ b/scilab/modules/fileio/sci_gateway/cpp/fileio_gw.vcxproj
@@ -210,6 +210,7 @@
210 <ClCompile Include="sci_mfprintf.cpp" /> 210 <ClCompile Include="sci_mfprintf.cpp" />
211 <ClCompile Include="sci_mfscanf.cpp" /> 211 <ClCompile Include="sci_mfscanf.cpp" />
212 <ClCompile Include="sci_mget.cpp" /> 212 <ClCompile Include="sci_mget.cpp" />
213 <ClCompile Include="sci_mgeti.cpp" />
213 <ClCompile Include="sci_mgetl.cpp" /> 214 <ClCompile Include="sci_mgetl.cpp" />
214 <ClCompile Include="sci_mgetstr.cpp" /> 215 <ClCompile Include="sci_mgetstr.cpp" />
215 <ClCompile Include="sci_mopen.cpp" /> 216 <ClCompile Include="sci_mopen.cpp" />
diff --git a/scilab/modules/fileio/sci_gateway/cpp/fileio_gw.vcxproj.filters b/scilab/modules/fileio/sci_gateway/cpp/fileio_gw.vcxproj.filters
index 08dbc96..adb6ec1 100644
--- a/scilab/modules/fileio/sci_gateway/cpp/fileio_gw.vcxproj.filters
+++ b/scilab/modules/fileio/sci_gateway/cpp/fileio_gw.vcxproj.filters
@@ -78,6 +78,9 @@
78 <ClCompile Include="sci_mget.cpp"> 78 <ClCompile Include="sci_mget.cpp">
79 <Filter>Source Files</Filter> 79 <Filter>Source Files</Filter>
80 </ClCompile> 80 </ClCompile>
81 <ClCompile Include="sci_mgeti.cpp">
82 <Filter>Source Files</Filter>
83 </ClCompile>
81 <ClCompile Include="sci_mgetl.cpp"> 84 <ClCompile Include="sci_mgetl.cpp">
82 <Filter>Source Files</Filter> 85 <Filter>Source Files</Filter>
83 </ClCompile> 86 </ClCompile>
diff --git a/scilab/modules/fileio/sci_gateway/cpp/sci_mgeti.cpp b/scilab/modules/fileio/sci_gateway/cpp/sci_mgeti.cpp
new file mode 100644
index 0000000..87c70ae
--- /dev/null
+++ b/scilab/modules/fileio/sci_gateway/cpp/sci_mgeti.cpp
@@ -0,0 +1,212 @@
1/*
2* Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
3* Copyright (C) 2021 - ESI Group - Clément DAVID
4*
5*
6* Copyright (C) 2012 - 2016 - Scilab Enterprises
7*
8* This file is hereby licensed under the terms of the GNU GPL v2.0,
9* pursuant to article 5.3.4 of the CeCILL v.2.1.
10* This file was originally licensed under the terms of the CeCILL v2.1,
11* and continues to be available under such terms.
12* For more information, see the COPYING file which you should have received
13* along with this program.
14*
15*/
16/*--------------------------------------------------------------------------*/
17#include "filemanager.hxx"
18#include "fileio_gw.hxx"
19#include "string.hxx"
20#include "double.hxx"
21#include "int.hxx"
22#include "file.hxx"
23#include "function.hxx"
24
25#include <memory>
26
27extern "C"
28{
29#include "mget.h"
30#include "localization.h"
31#include "Scierror.h"
32#include "charEncoding.h"
33#include "os_string.h"
34}
35
36/*--------------------------------------------------------------------------*/
37types::Function::ReturnValue sci_mgeti(types::typed_list &in, int _iRetCount, types::typed_list &out)
38{
39 std::wstring stType(L"i");
40 const wchar_t* pstType = stType.data();
41 int iSize = 0;
42 int iFile = -1; //default file : last opened file
43 int iErr = 0;
44
45 if (in.size() < 1 || in.size() > 3)
46 {
47 Scierror(77, _("%s: Wrong number of input argument(s): %d to %d expected.\n"), "mgeti", 1, 3);
48 return types::Function::Error;
49 }
50
51 //check parameter 1
52 if (in[0]->isDouble() == false || in[0]->getAs<types::Double>()->getSize() != 1)
53 {
54 Scierror(999, _("%s: Wrong type for input argument #%d: A positive integer value expected.\n"), "mgeti", 1);
55 return types::Function::Error;
56 }
57
58 types::Double* pDoubleTest = in[0]->getAs<types::Double>();
59 if ((pDoubleTest->get(0) != (int)pDoubleTest->get(0)) || (pDoubleTest->get(0) < 0))
60 {
61 Scierror(999, _("%s: Wrong value for input argument #%d: A positive integer value expected.\n"), "mgeti", 1);
62 return types::Function::Error;
63 }
64
65 iSize = static_cast<int>(in[0]->getAs<types::Double>()->get(0));
66
67 if (in.size() >= 2)
68 {
69 //export format
70 if (in[1]->isString() == false || in[1]->getAs<types::String>()->getSize() != 1)
71 {
72 Scierror(999, _("%s: Wrong type for input argument #%d: string expected.\n"), "mgeti", 2);
73 return types::Function::Error;
74 }
75
76 pstType = in[1]->getAs<types::String>()->get(0);
77 }
78
79 if (in.size() == 3)
80 {
81 if (in[2]->isDouble() == false || in[2]->getAs<types::Double>()->getSize() != 1)
82 {
83 Scierror(999, _("%s: Wrong type for input argument #%d: A integer expected.\n"), "mgeti", 3);
84 return types::Function::Error;
85 }
86
87 iFile = static_cast<int>(in[2]->getAs<types::Double>()->get(0));
88 }
89
90 switch (iFile)
91 {
92 case 0: // stderr
93 case 6: // stdout
94 Scierror(999, _("%s: Wrong file descriptor: %d.\n"), "mgeti", iFile);
95 return types::Function::Error;
96 }
97
98 types::File* pFile = FileManager::getFile(iFile);
99 // file opened with fortran open function
100 if (pFile == NULL || pFile->getFileType() == 1)
101 {
102 Scierror(999, _("%s: Wrong file descriptor: %d.\n"), "mgeti", iFile);
103 return types::Function::Error;
104 }
105
106 types::GenericType* pGT;
107 void* pData;
108 char* pType = wide_string_to_UTF8(pstType);
109 switch (pType[0])
110 {
111 case 'u':
112 switch (pType[1])
113 {
114 case 'l':
115 {
116 auto* pIT = new types::UInt64(1, iSize);
117 pData = pIT->get();
118 pGT = pIT;
119 break;
120 }
121 case 'i':
122 {
123 auto* pIT = new types::UInt32(1, iSize);
124 pData = pIT->get();
125 pGT = pIT;
126 break;
127 }
128 case 's':
129 {
130 auto* pIT = new types::UInt16(1, iSize);
131 pData = pIT->get();
132 pGT = pIT;
133 break;
134 }
135 case 'c':
136 {
137 auto* pIT = new types::UInt8(1, iSize);
138 pData = pIT->get();
139 pGT = pIT;
140 break;
141 }
142 }
143 break;
144 case 'd':
145 {
146 auto* pIT = new types::Double(1, iSize);
147 pData = pIT->get();
148 pGT = pIT;
149 break;
150 }
151 case 'f':
152 {
153 auto* pIT = new types::Double(1, iSize);
154 pData = pIT->get();
155 pGT = pIT;
156 break;
157 }
158 case 'l':
159 {
160 auto* pIT = new types::Int64(1, iSize);
161 pData = pIT->get();
162 pGT = pIT;
163 break;
164 }
165 case 'i':
166 {
167 auto* pIT = new types::Int32(1, iSize);
168 pData = pIT->get();
169 pGT = pIT;
170 break;
171 }
172 case 's':
173 {
174 auto* pIT = new types::Int16(1, iSize);
175 pData = pIT->get();
176 pGT = pIT;
177 break;
178 }
179 case 'c':
180 {
181 auto* pIT = new types::Int8(1, iSize);
182 pData = pIT->get();
183 pGT = pIT;
184 break;
185 }
186 default:
187 FREE(pType);
188 Scierror(999, _("%s: Wrong value for input argument #%d: Incorrect conversion code; ""c"", ""s"", ""i"" or ""l"" expected.\n"), "mgeti", 3);
189 return types::Function::Error;
190 }
191
192 C2F(mgetnc)(&iFile, pData, &iSize, pType, &iErr);
193 FREE(pType);
194 if (iErr > 0)
195 {
196 pGT->killMe();
197 return types::Function::Error;
198 }
199
200 if (iErr < 0) //no error
201 {
202 int iNewSize = (-iErr) - 1;
203 if (iNewSize < iSize)
204 {
205 //read data are smaller then expected size, shrink
206 pGT->resize(1, iNewSize);
207 }
208 }
209 out.push_back(pGT);
210 return types::Function::OK;
211}
212/*--------------------------------------------------------------------------*/
diff --git a/scilab/modules/fileio/tests/nonreg_tests/bug_14397.tst b/scilab/modules/fileio/tests/nonreg_tests/bug_14397.tst
new file mode 100644
index 0000000..7ba7cc1
--- /dev/null
+++ b/scilab/modules/fileio/tests/nonreg_tests/bug_14397.tst
@@ -0,0 +1,41 @@
1// =============================================================================
2// Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
3// Copyright (C) 2016 - Samuel GOUGEON
4//
5// This file is distributed under the same license as the Scilab package.
6// =============================================================================
7// <-- CLI SHELL MODE -->
8
9// <-- Non-regression test for bug 14397 -->
10//
11// <-- Bugzilla URL -->
12// http://bugzilla.scilab.org/14397
13//
14// <-- Short Description -->
15// mgeti() did not read correctly uint64 or int64 integers > 2^52
16//
17
18// Read/Write int64 & uint64 with relative accuracy better than %eps = 1/2^52
19// --------------------------------------------------------------------------
20n = 10;
21b = grand(64,n,"uin",0,1);
22p = uint64(2).^ndgrid(0:63,1:n);
23x0 = sum(b.*p, "r");
24
25for endian = ["l" "b"]
26 for usign = ["u" ""]
27 // usign+"l"+endian
28 binfile = TMPDIR+"/mgetiTestInt64.dat";
29 idF = mopen(binfile, "w+b");
30 x = x0;
31 if usign==""
32 x = int64(x);
33 end
34 mput(x,usign+"l"+endian)
35
36 mseek(0);
37 xr = mgeti(n, usign+"l"+endian);
38 mclose(idF);
39 assert_checkequal(xr, x);
40 end
41end
diff --git a/scilab/modules/fileio/tests/unit_tests/mgeti.tst b/scilab/modules/fileio/tests/unit_tests/mgeti.tst
index edb48cf..0997231 100644
--- a/scilab/modules/fileio/tests/unit_tests/mgeti.tst
+++ b/scilab/modules/fileio/tests/unit_tests/mgeti.tst
@@ -1,12 +1,42 @@
1// ============================================================================= 1// =============================================================================
2// Scilab ( http://www.scilab.org/ ) - This file is part of Scilab 2// Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
3// Copyright (C) 2013 - Scilab Enterprises - Antoine ELIAS 3// Copyright (C) 2013 - Scilab Enterprises - Antoine ELIAS
4// Copyright (C) 2016 - Samuel GOUGEON
4// 5//
5// This file is distributed under the same license as the Scilab package. 6// This file is distributed under the same license as the Scilab package.
6// ============================================================================= 7// =============================================================================
7 8
8// <-- CLI SHELL MODE --> 9// <-- CLI SHELL MODE -->
9 10// <-- NO CHECK REF -->
11
12// Read/Write int64 & uint64 with relative accuracy better than %eps = 1/2^52
13// --------------------------------------------------------------------------
14n = 10;
15b = grand(64,n,"uin",0,1);
16p = uint64(2).^ndgrid(0:63,1:n);
17x0 = sum(b.*p, "r");
18
19for endian = ["l" "b"]
20 for usign = ["u" ""]
21 // usign+"l"+endian
22 binfile = TMPDIR+"/mgetiTestInt64.dat";
23 idF = mopen(binfile, "w+b");
24 x = x0;
25 if usign==""
26 x = int64(x);
27 end
28 mput(x,usign+"l"+endian)
29
30 mseek(0);
31 xr = mgeti(n, usign+"l"+endian);
32 mclose(idF);
33 assert_checkequal(xr, x);
34 end
35end
36
37
38// Other tests
39// -----------
10function writedata(name, str) 40function writedata(name, str)
11 f = mopen(TMPDIR + "/" + name + ".dat", "wb"); 41 f = mopen(TMPDIR + "/" + name + ".dat", "wb");
12 data = hex2dec(str); 42 data = hex2dec(str);
@@ -113,3 +143,4 @@ fd1=mopen(file1,'rb');
113a=mgeti(1); 143a=mgeti(1);
114assert_checkequal(typeof(a), "int32"); 144assert_checkequal(typeof(a), "int32");
115assert_checkequal(a, int32(1996)); 145assert_checkequal(a, int32(1996));
146mclose(fd1);
diff --git a/scilab/modules/integer/macros/mgeti.sci b/scilab/modules/integer/macros/mgeti.sci
deleted file mode 100644
index 7f49f86..0000000
--- a/scilab/modules/integer/macros/mgeti.sci
+++ /dev/null
@@ -1,63 +0,0 @@
1// Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
2// Copyright (C) 2013 - Scilab Enterprises - Cedric Delamarre
3//
4// Copyright (C) 2012 - 2016 - Scilab Enterprises
5//
6// This file is hereby licensed under the terms of the GNU GPL v2.0,
7// pursuant to article 5.3.4 of the CeCILL v.2.1.
8// This file was originally licensed under the terms of the CeCILL v2.1,
9// and continues to be available under such terms.
10// For more information, see the COPYING file which you should have received
11// along with this program.
12
13function x = mgeti(varargin)
14
15 rhs=argn(2);
16 if rhs == 0 | rhs > 3 then
17 error(msprintf(_("%s: Wrong number of input argument(s): %d to %d expected.\n"), "mgeti", 1, 3));
18 end
19
20 if rhs == 1 then
21 typeToConvert = 4;
22 else
23 type = varargin(2);
24
25 if typeof(type) <> "string" then
26 error(msprintf(_("%s: Wrong type for argument #%d: string expected.\n"), "mgeti", 2));
27 end
28
29 if size(type, '*') <> 1 then
30 error(msprintf(_("%s: Wrong size for argument #%d: A single string expected.\n"), "mgeti", 2));
31 end
32
33 typeToConvert = 0;
34 len = length(type);
35 partPos = 1;
36
37 if len == 0 | len > 3 then
38 error(msprintf(_("%s: Wrong size for argument #%d: A single string of size %d to %d expected.\n"), "mgeti", 2, 1, 3));
39 end
40
41 // unsigne
42 if part(type, partPos) == 'u'
43 typeToConvert = 10;
44 partPos = 2;
45 end
46
47 // type to convert
48 select part(type, partPos)
49 case 'l'
50 typeToConvert = typeToConvert + 8;
51 case 'i'
52 typeToConvert = typeToConvert + 4;
53 case 's'
54 typeToConvert = typeToConvert + 2;
55 case 'c'
56 typeToConvert = typeToConvert + 1;
57 else
58 error(msprintf(_("%s: Incorrect integer type: %s .\n"), "mgeti", part(type, partPos)));
59 end
60 end
61
62 x = iconvert(mget(varargin(:)), typeToConvert);
63endfunction