id,summary,reporter,owner,description,type,status,milestone,component,version,severity,resolution,keywords,cc 4045,"MultiArray implementation from base, extents, strides",Rhys Ulerich ,Ronald Garcia,"It would be useful to have a multi_array_ref constructor or some other MultiArray implementation that can accept explicit stride information rather than storage order information. The former is more flexible and can accomplish things the latter cannot (see example below). ---- I sent the following question to boost-users (http://lists.boost.org/boost-users/2010/03/57634.php): I'd like to obtain an N-dimensional MultiArray implementation given a base pointer, N extents, and N strides. My use case requires padding the stride in one dimension in a way seemingly not obtainable taking views of the usual boost::multi_array_ref. Code like the following would be ideal {{{ boost::array extents = { 2, 3, 4 }; boost::array strides = { 1, 2, 7 }; // Note 7 not 6 boost::scoped_array raw(new int[extents[2]*strides[2]]); using boost::detail::multi_array::multi_array_view; multi_array_view a(raw.get(), extents, strides); }}} except that the appropriate constructor in multi_array_view is private (boost/multi_array/view.hpp:442). boost::detail::multi_array::sub_array would also be ideal if it's constructor was accessible (boost/multi_array/subarray.hpp:370). I can make either accessible by #defining BOOST_NO_MEMBER_TEMPLATE_FRIENDS, but that's evil. Am I missing something in Boost.MultiArray? Or is there no publicly accessible way to provide a custom stride list?",Feature Requests,new,To Be Determined,multi_array,Boost 1.42.0,Not Applicable,,,