<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Recent changes to feature-requests</title><link>https://sourceforge.net/p/matio/feature-requests/</link><description>Recent changes to feature-requests</description><atom:link href="https://sourceforge.net/p/matio/feature-requests/feed.rss" rel="self"/><language>en</language><lastBuildDate>Tue, 08 Aug 2017 06:05:23 -0000</lastBuildDate><atom:link href="https://sourceforge.net/p/matio/feature-requests/feed.rss" rel="self" type="application/rss+xml"/><item><title>#4 Add support for reading and writing variables in row major order</title><link>https://sourceforge.net/p/matio/feature-requests/4/?limit=25#3ac1/0294/0df2/5ea7/acc6</link><description>&lt;div class="markdown_content"&gt;&lt;p&gt;Yes, your observations are right:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;After calling Mat_VarReadData I need to transpose the array, see e.g., &lt;a href="https://github.com/modelica/Modelica/blob/master/Modelica/Resources/C-Sources/ModelicaIO.c#L249" rel="nofollow"&gt;https://github.com/modelica/Modelica/blob/master/Modelica/Resources/C-Sources/ModelicaIO.c#L249&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Before calling Mat_VarWrite I need to transpose the array, see e.g., &lt;a href="https://github.com/modelica/Modelica/blob/master/Modelica/Resources/C-Sources/ModelicaIO.c#L315" rel="nofollow"&gt;https://github.com/modelica/Modelica/blob/master/Modelica/Resources/C-Sources/ModelicaIO.c#L315&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The fields of a struct are of matvar_t, too, and can therefore have different flags for col-major or row-major storrage. Thus, no problem to deal with it.&lt;/p&gt;&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">tbeu</dc:creator><pubDate>Tue, 08 Aug 2017 06:05:23 -0000</pubDate><guid>https://sourceforge.net9f38d5001fc470861b1894147b8fef97fab4bc74</guid></item><item><title>#4 Add support for reading and writing variables in row major order</title><link>https://sourceforge.net/p/matio/feature-requests/4/?limit=25#3ac1/0294/0df2/5ea7</link><description>&lt;div class="markdown_content"&gt;&lt;blockquote&gt;
&lt;p&gt;Actually the array is written row-major, same way as C arrays are stored.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;What you write here is confusting to me but maybe we are saying the same thing. This is my observations:&lt;br/&gt;
&lt;em&gt; If I read a matrix from a .mat and I save it again as a .mat without any modification (with matio ofc), matlab will read it correctly;&lt;br/&gt;
&lt;/em&gt; If I read a matrix from a .mat and I want to use it in math library that uses row-major convention (e.g. OpenCV) I have to transpose it. If I want to save it as .mat again I have to transpose it again before writing it with matio.&lt;/p&gt;
&lt;p&gt;As to per your suggestion of introducing Mat_VarRead2 and Mat_VarWrite2: Mat_VarRead2 seems fine and matvar_t could have a field stating if the the order is column or row major to hint in case of inconsistent reads. Maybe Mat_VarWrite2 could be not enough fine grained? For example one may have a struct with many fields and Mat_VarWrite2 would not be enough to specify different conventions on different fields. That's why I suggested to put the option in Mat_VarCreate.&lt;/p&gt;&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Francesco Pretto</dc:creator><pubDate>Sat, 05 Aug 2017 14:16:44 -0000</pubDate><guid>https://sourceforge.netda586127c74e93e228886a9484f166ed046ddc06</guid></item><item><title>#4 Add support for reading and writing variables in row major order</title><link>https://sourceforge.net/p/matio/feature-requests/4/?limit=25#3ac1/0294</link><description>&lt;div class="markdown_content"&gt;&lt;p&gt;I tried to propose an approach that is not API breaking. There's no problem with array transposition but:&lt;br/&gt;
1. The library is currently a bit opaque about the storage ordering convention. Of course, seeing no mention about it, one has to think that it will be same as in Matlab and it's actually the case. Seeing both methods supported would help in API clarity; &lt;br/&gt;
2. in place transposition is not trivial algorithm (requires O(log M&lt;em&gt;N) auxiliary storage and computation cost is O(M&lt;/em&gt;N log M*N) in the worst acase) and I attempted to code it myself before realizing it was not. Instead supporting both ordering methods it in the library would be completely trivial. I'm not concerned about performance here: I'm just saying that the API would be nicer if it had this feature built-in.&lt;/p&gt;&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Francesco Pretto</dc:creator><pubDate>Fri, 04 Aug 2017 21:32:39 -0000</pubDate><guid>https://sourceforge.net9416dc3ec9de3ffe9dadf7ada4afffccb13085b0</guid></item><item><title>#4 Add support for reading and writing variables in row major order</title><link>https://sourceforge.net/p/matio/feature-requests/4/?limit=25#3ac1</link><description>&lt;div class="markdown_content"&gt;&lt;p&gt;I'd rather see it as flag for Mat_VarRead or Mat_VarWrite.&lt;/p&gt;
&lt;p&gt;What is the problem of the manual workaround with array transposition? There even are algorithms for in-place transposition to avoid temporary double storage.&lt;/p&gt;&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">tbeu</dc:creator><pubDate>Fri, 04 Aug 2017 21:04:25 -0000</pubDate><guid>https://sourceforge.net03c7c79f8b3245369ea0339ca094dc39981d4c2c</guid></item><item><title>Add support for reading and writing variables in row major order</title><link>https://sourceforge.net/p/matio/feature-requests/4/</link><description>&lt;div class="markdown_content"&gt;&lt;p&gt;If I have not missed something, matio adheres to Matlab column-major convention for storing variables data. Row-major order could be supported when reading, as a a sticky flag in mat_t structure (so all read variables are consistent) and as a option in all variable creation methods, as for example in Mat_VarCreate.&lt;/p&gt;&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Francesco Pretto</dc:creator><pubDate>Tue, 01 Aug 2017 19:04:58 -0000</pubDate><guid>https://sourceforge.net0aeeeb10fbc5424de446f4c5bf7fe6335d488b1b</guid></item><item><title>#3 Is there an alternative to configure for Windows platform?</title><link>https://sourceforge.net/p/matio/feature-requests/3/?limit=25#fee8</link><description>&lt;div class="markdown_content"&gt;&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;status&lt;/strong&gt;: open --&amp;gt; closed&lt;/li&gt;
&lt;/ul&gt;&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">cch</dc:creator><pubDate>Tue, 20 May 2014 21:11:00 -0000</pubDate><guid>https://sourceforge.net7b53d5760295ebe7104e91404b3341bb7453c273</guid></item><item><title>Is there an alternative to configure for Windows platform?</title><link>https://sourceforge.net/p/matio/feature-requests/3/</link><description>&lt;div class="markdown_content"&gt;&lt;p&gt;Under Cygwin I can run configure but I'm not aware of configure for Windows. Thus I can not create a usable matioConfig.h file. &lt;br /&gt;
Can you recommend a procedure so I can compile with Visual Studio on Windows?&lt;/p&gt;&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Tony Kirke</dc:creator><pubDate>Tue, 05 Nov 2013 17:36:09 -0000</pubDate><guid>https://sourceforge.net3ad84d7309404510669d734de0a4dc320c33f07b</guid></item><item><title>Is there an alternative to configure for Windows platform?</title><link>https://sourceforge.net/p/matio/feature-requests/3/</link><description>&lt;div class="markdown_content"&gt;&lt;p&gt;Ticket 3 has been modified: Is there an alternative to configure for Windows platform?&lt;br /&gt;
Edited By: cch (chulbe2lsu)&lt;br /&gt;
Status updated: u'open' =&amp;gt; u'closed'&lt;/p&gt;&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Tony Kirke</dc:creator><pubDate>Tue, 05 Nov 2013 17:36:09 -0000</pubDate><guid>https://sourceforge.netfea35920d953b9ec640c0f55f6cc20927d6615c6</guid></item><item><title>WriteDataSlab2 to support complex data</title><link>https://sourceforge.net/p/matio/feature-requests/2/</link><description>&lt;div class="markdown_content"&gt;&lt;p&gt;This is a request to have WriteDataSlab2 and WriteCharDataSlab2 support writing slabs of complex data to 2D MatLab variables.&lt;/p&gt;&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Scott</dc:creator><pubDate>Wed, 30 Oct 2013 17:58:56 -0000</pubDate><guid>https://sourceforge.net5dca755204221d0cfd5e9be1fcc5d6887e5ac89c</guid></item><item><title>support for .mat format written by MATLAB v 7 or later</title><link>https://sourceforge.net/p/matio/feature-requests/1/</link><description>&lt;div class="markdown_content"&gt;&lt;p&gt;Based on my current experience, MatIO 1.3.4 seems to support only .mat files up to MATLAB version &amp;lt; 7.&lt;br /&gt;
Support of .mat files written in newer MATLAB versions (&amp;gt;= 7) would be great.&lt;/p&gt;&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Anonymous</dc:creator><pubDate>Thu, 03 Feb 2011 16:44:32 -0000</pubDate><guid>https://sourceforge.netd8f6b2e45c67dd93848ec2163c33fad6c1e0b147</guid></item></channel></rss>