<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"> <title>Eigen::Stride Class Reference</title> <link href="doxygen.css" rel="stylesheet" type="text/css"> <link href="tabs.css" rel="stylesheet" type="text/css"> </head><body> <div align="left"><a href="http://www.mrpt.org/">Main MRPT website</a> > <b>C++ reference</b> </div> <div align="right"> <a href="index.html"><img border="0" src="mrpt_logo.png" alt="MRPT logo"></a> </div> <!-- Generated by Doxygen 1.7.5 --> <script type="text/javascript"> var searchBox = new SearchBox("searchBox", "search",false,'Search'); </script> <div id="navrow1" class="tabs"> <ul class="tablist"> <li><a href="index.html"><span>Main Page</span></a></li> <li><a href="pages.html"><span>Related Pages</span></a></li> <li><a href="modules.html"><span>Modules</span></a></li> <li><a href="namespaces.html"><span>Namespaces</span></a></li> <li class="current"><a href="annotated.html"><span>Classes</span></a></li> <li><a href="files.html"><span>Files</span></a></li> <li> <div id="MSearchBox" class="MSearchBoxInactive"> <div class="left"> <form id="FSearchBox" action="search.php" method="get"> <img id="MSearchSelect" src="search/mag.png" alt=""/> <input type="text" id="MSearchField" name="query" value="Search" size="20" accesskey="S" onfocus="searchBox.OnSearchFieldFocus(true)" onblur="searchBox.OnSearchFieldFocus(false)"/> </form> </div><div class="right"></div> </div> </li> </ul> </div> <div id="navrow2" class="tabs2"> <ul class="tablist"> <li><a href="annotated.html"><span>Class List</span></a></li> <li><a href="classes.html"><span>Class Index</span></a></li> <li><a href="inherits.html"><span>Class Hierarchy</span></a></li> <li><a href="functions.html"><span>Class Members</span></a></li> </ul> </div> <div id="nav-path" class="navpath"> <ul> <li class="navelem"><a class="el" href="namespace_eigen.html">Eigen</a> </li> <li class="navelem"><a class="el" href="class_eigen_1_1_stride.html">Stride</a> </li> </ul> </div> </div> <div class="header"> <div class="summary"> <a href="#pub-types">Public Types</a> | <a href="#pub-methods">Public Member Functions</a> | <a href="#pro-attribs">Protected Attributes</a> </div> <div class="headertitle"> <div class="title">Eigen::Stride Class Reference<div class="ingroups"><a class="el" href="group___core___module.html">Core module</a></div></div> </div> </div> <div class="contents"> <!-- doxytag: class="Eigen::Stride" --><hr/><a name="details" id="details"></a><h2>Detailed Description</h2> <div class="textblock"><p>Holds strides information for <a class="el" href="class_eigen_1_1_map.html" title="A matrix or vector expression mapping an existing array of data.">Map</a>. </p> <p>This class holds the strides information for mapping arrays with strides with class <a class="el" href="class_eigen_1_1_map.html" title="A matrix or vector expression mapping an existing array of data.">Map</a>.</p> <p>It holds two values: the inner stride and the outer stride.</p> <p>The inner stride is the pointer increment between two consecutive entries within a given row of a row-major matrix or within a given column of a column-major matrix.</p> <p>The outer stride is the pointer increment between two consecutive rows of a row-major matrix or between two consecutive columns of a column-major matrix.</p> <p>These two values can be passed either at compile-time as template parameters, or at runtime as arguments to the constructor.</p> <p>Indeed, this class takes two template parameters: </p> <dl><dt><b>Parameters:</b></dt><dd> <table class="params"> <tr><td class="paramname">_OuterStrideAtCompileTime</td><td>the outer stride, or Dynamic if you want to specify it at runtime. </td></tr> <tr><td class="paramname">_InnerStrideAtCompileTime</td><td>the inner stride, or Dynamic if you want to specify it at runtime.</td></tr> </table> </dd> </dl> <p>Here is an example: </p> <div class="fragment"><pre class="fragment"></pre></div><p> Output: </p> <div class="fragment"><pre class="fragment"></pre></div><dl class="see"><dt><b>See also:</b></dt><dd>class <a class="el" href="class_eigen_1_1_inner_stride.html" title="Convenience specialization of Stride to specify only an inner stride See class Map for some examples...">InnerStride</a>, class <a class="el" href="class_eigen_1_1_outer_stride.html" title="Convenience specialization of Stride to specify only an outer stride See class Map for some examples...">OuterStride</a>, TopicStorageOrders </dd></dl> </div><div class="dynheader"> Inheritance diagram for Eigen::Stride:</div> <div class="dyncontent"> <div class="center"><img src="class_eigen_1_1_stride__inherit__graph.png" border="0" usemap="#_eigen_1_1_stride_inherit__map" alt="Inheritance graph"/></div> <map name="_eigen_1_1_stride_inherit__map" id="_eigen_1_1_stride_inherit__map"> <area shape="rect" id="node3" href="class_eigen_1_1_stride.html" title="Eigen::Stride\< Value, 0 \>" alt="" coords="5,96,173,123"/><area shape="rect" id="node7" href="class_eigen_1_1_stride.html" title="Eigen::Stride\< 0, Value \>" alt="" coords="198,96,367,123"/><area shape="rect" id="node5" href="class_eigen_1_1_outer_stride.html" title="Convenience specialization of Stride to specify only an outer stride See class Map for some examples..." alt="" coords="25,173,153,200"/><area shape="rect" id="node9" href="class_eigen_1_1_inner_stride.html" title="Convenience specialization of Stride to specify only an inner stride See class Map for some examples..." alt="" coords="219,173,345,200"/></map> <center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div> <p><a href="class_eigen_1_1_stride-members.html">List of all members.</a></p> <table class="memberdecls"> <tr><td colspan="2"><h2><a name="pub-types"></a> Public Types</h2></td></tr> <tr><td class="memItemLeft" align="right" valign="top">enum  </td><td class="memItemRight" valign="bottom">{ <a class="el" href="class_eigen_1_1_stride.html#a4d3e09d3078d229ba4841167eab73bdaa95d9403feec66298f774145dc124e94d">InnerStrideAtCompileTime</a> = _InnerStrideAtCompileTime, <a class="el" href="class_eigen_1_1_stride.html#a4d3e09d3078d229ba4841167eab73bdaae6e273e59f089afc67debec4c345d8c3">OuterStrideAtCompileTime</a> = _OuterStrideAtCompileTime }</td></tr> <tr><td class="memItemLeft" align="right" valign="top">typedef <a class="el" href="namespace_eigen.html#aa06499c94936a19673e53deb516a1b76">DenseIndex</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="class_eigen_1_1_stride.html#ac63b4f223fc4f94c452bf80f549fe18f">Index</a></td></tr> <tr><td colspan="2"><h2><a name="pub-methods"></a> Public Member Functions</h2></td></tr> <tr><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="class_eigen_1_1_stride.html#a01ad314e1e4181b472aba6ba85fb9396">Stride</a> ()</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Default constructor, for use when strides are fixed at compile time. <a href="#a01ad314e1e4181b472aba6ba85fb9396"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="class_eigen_1_1_stride.html#aeecfbe9ce4e01e3eb4f59005e39d49f6">Stride</a> (<a class="el" href="class_eigen_1_1_stride.html#ac63b4f223fc4f94c452bf80f549fe18f">Index</a> outerStride, <a class="el" href="class_eigen_1_1_stride.html#ac63b4f223fc4f94c452bf80f549fe18f">Index</a> innerStride)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Constructor allowing to pass the strides at runtime. <a href="#aeecfbe9ce4e01e3eb4f59005e39d49f6"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="class_eigen_1_1_stride.html#a39fcaae2aef991bcbda89108e1a2631f">Stride</a> (const <a class="el" href="class_eigen_1_1_stride.html">Stride</a> &other)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Copy constructor. <a href="#a39fcaae2aef991bcbda89108e1a2631f"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_eigen_1_1_stride.html#ac63b4f223fc4f94c452bf80f549fe18f">Index</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="class_eigen_1_1_stride.html#a2a1b814c8751b949b8fdb5469e4181e2">outer</a> () const </td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_eigen_1_1_stride.html#ac63b4f223fc4f94c452bf80f549fe18f">Index</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="class_eigen_1_1_stride.html#a0f2860e07732ec87e153b85b5498d34c">inner</a> () const </td></tr> <tr><td colspan="2"><h2><a name="pro-attribs"></a> Protected Attributes</h2></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_eigen_1_1internal_1_1variable__if__dynamic.html">internal::variable_if_dynamic</a><br class="typebreak"/> < <a class="el" href="class_eigen_1_1_stride.html#ac63b4f223fc4f94c452bf80f549fe18f">Index</a>, <br class="typebreak"/> OuterStrideAtCompileTime > </td><td class="memItemRight" valign="bottom"><a class="el" href="class_eigen_1_1_stride.html#a15242940ed789837b2b54fa9d3b17894">m_outer</a></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_eigen_1_1internal_1_1variable__if__dynamic.html">internal::variable_if_dynamic</a><br class="typebreak"/> < <a class="el" href="class_eigen_1_1_stride.html#ac63b4f223fc4f94c452bf80f549fe18f">Index</a>, <br class="typebreak"/> InnerStrideAtCompileTime > </td><td class="memItemRight" valign="bottom"><a class="el" href="class_eigen_1_1_stride.html#a1c1fb5fbab9f66fa57621ca738094d9e">m_inner</a></td></tr> </table> <hr/><h2>Member Typedef Documentation</h2> <a class="anchor" id="ac63b4f223fc4f94c452bf80f549fe18f"></a><!-- doxytag: member="Eigen::Stride::Index" ref="ac63b4f223fc4f94c452bf80f549fe18f" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">typedef <a class="el" href="namespace_eigen.html#aa06499c94936a19673e53deb516a1b76">DenseIndex</a> <a class="el" href="class_eigen_1_1_stride.html#ac63b4f223fc4f94c452bf80f549fe18f">Eigen::Stride::Index</a></td> </tr> </table> </div> <div class="memdoc"> <p>Reimplemented in <a class="el" href="class_eigen_1_1_outer_stride.html#afe578b2c899c3a6db34fb5c4fcd0e592">Eigen::OuterStride</a>, and <a class="el" href="class_eigen_1_1_inner_stride.html#a1a57723d60322bbbed3b43ae6518d0c1">Eigen::InnerStride</a>.</p> <p>Definition at line <a class="el" href="_core_source.html#l00061">61</a> of file <a class="el" href="_core_source.html">Core</a>.</p> </div> </div> <hr/><h2>Member Enumeration Documentation</h2> <a class="anchor" id="a4d3e09d3078d229ba4841167eab73bda"></a><!-- doxytag: member="Eigen::Stride::@221" ref="a4d3e09d3078d229ba4841167eab73bda" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">anonymous enum</td> </tr> </table> </div> <div class="memdoc"> <dl><dt><b>Enumerator: </b></dt><dd><table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"><em><a class="anchor" id="a4d3e09d3078d229ba4841167eab73bdaa95d9403feec66298f774145dc124e94d"></a><!-- doxytag: member="InnerStrideAtCompileTime" ref="a4d3e09d3078d229ba4841167eab73bdaa95d9403feec66298f774145dc124e94d" args="" -->InnerStrideAtCompileTime</em> </td><td> </td></tr> <tr><td valign="top"><em><a class="anchor" id="a4d3e09d3078d229ba4841167eab73bdaae6e273e59f089afc67debec4c345d8c3"></a><!-- doxytag: member="OuterStrideAtCompileTime" ref="a4d3e09d3078d229ba4841167eab73bdaae6e273e59f089afc67debec4c345d8c3" args="" -->OuterStrideAtCompileTime</em> </td><td> </td></tr> </table> </dd> </dl> <p>Definition at line <a class="el" href="_core_source.html#l00062">62</a> of file <a class="el" href="_core_source.html">Core</a>.</p> </div> </div> <hr/><h2>Constructor & Destructor Documentation</h2> <a class="anchor" id="a01ad314e1e4181b472aba6ba85fb9396"></a><!-- doxytag: member="Eigen::Stride::Stride" ref="a01ad314e1e4181b472aba6ba85fb9396" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">Eigen::Stride::Stride </td> <td>(</td> <td class="paramname"></td><td>)</td> <td><code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Default constructor, for use when strides are fixed at compile time. </p> <p>Definition at line <a class="el" href="_core_source.html#l00068">68</a> of file <a class="el" href="_core_source.html">Core</a>.</p> </div> </div> <a class="anchor" id="aeecfbe9ce4e01e3eb4f59005e39d49f6"></a><!-- doxytag: member="Eigen::Stride::Stride" ref="aeecfbe9ce4e01e3eb4f59005e39d49f6" args="(Index outerStride, Index innerStride)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">Eigen::Stride::Stride </td> <td>(</td> <td class="paramtype"><a class="el" href="class_eigen_1_1_stride.html#ac63b4f223fc4f94c452bf80f549fe18f">Index</a> </td> <td class="paramname"><em>outerStride</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="class_eigen_1_1_stride.html#ac63b4f223fc4f94c452bf80f549fe18f">Index</a> </td> <td class="paramname"><em>innerStride</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td><code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Constructor allowing to pass the strides at runtime. </p> <p>Definition at line <a class="el" href="_core_source.html#l00075">75</a> of file <a class="el" href="_core_source.html">Core</a>.</p> </div> </div> <a class="anchor" id="a39fcaae2aef991bcbda89108e1a2631f"></a><!-- doxytag: member="Eigen::Stride::Stride" ref="a39fcaae2aef991bcbda89108e1a2631f" args="(const Stride &other)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">Eigen::Stride::Stride </td> <td>(</td> <td class="paramtype">const <a class="el" href="class_eigen_1_1_stride.html">Stride</a> & </td> <td class="paramname"><em>other</em></td><td>)</td> <td><code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Copy constructor. </p> <p>Definition at line <a class="el" href="_core_source.html#l00082">82</a> of file <a class="el" href="_core_source.html">Core</a>.</p> </div> </div> <hr/><h2>Member Function Documentation</h2> <a class="anchor" id="a0f2860e07732ec87e153b85b5498d34c"></a><!-- doxytag: member="Eigen::Stride::inner" ref="a0f2860e07732ec87e153b85b5498d34c" args="() const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="class_eigen_1_1_stride.html#ac63b4f223fc4f94c452bf80f549fe18f">Index</a> Eigen::Stride::inner </td> <td>(</td> <td class="paramname"></td><td>)</td> <td> const<code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <dl class="return"><dt><b>Returns:</b></dt><dd>the inner stride </dd></dl> <p>Definition at line <a class="el" href="_core_source.html#l00089">89</a> of file <a class="el" href="_core_source.html">Core</a>.</p> </div> </div> <a class="anchor" id="a2a1b814c8751b949b8fdb5469e4181e2"></a><!-- doxytag: member="Eigen::Stride::outer" ref="a2a1b814c8751b949b8fdb5469e4181e2" args="() const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="class_eigen_1_1_stride.html#ac63b4f223fc4f94c452bf80f549fe18f">Index</a> Eigen::Stride::outer </td> <td>(</td> <td class="paramname"></td><td>)</td> <td> const<code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <dl class="return"><dt><b>Returns:</b></dt><dd>the outer stride </dd></dl> <p>Definition at line <a class="el" href="_core_source.html#l00087">87</a> of file <a class="el" href="_core_source.html">Core</a>.</p> </div> </div> <hr/><h2>Member Data Documentation</h2> <a class="anchor" id="a1c1fb5fbab9f66fa57621ca738094d9e"></a><!-- doxytag: member="Eigen::Stride::m_inner" ref="a1c1fb5fbab9f66fa57621ca738094d9e" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="class_eigen_1_1internal_1_1variable__if__dynamic.html">internal::variable_if_dynamic</a><<a class="el" href="class_eigen_1_1_stride.html#ac63b4f223fc4f94c452bf80f549fe18f">Index</a>, InnerStrideAtCompileTime> <a class="el" href="class_eigen_1_1_stride.html#a1c1fb5fbab9f66fa57621ca738094d9e">Eigen::Stride::m_inner</a><code> [protected]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Definition at line <a class="el" href="_core_source.html#l00093">93</a> of file <a class="el" href="_core_source.html">Core</a>.</p> </div> </div> <a class="anchor" id="a15242940ed789837b2b54fa9d3b17894"></a><!-- doxytag: member="Eigen::Stride::m_outer" ref="a15242940ed789837b2b54fa9d3b17894" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="class_eigen_1_1internal_1_1variable__if__dynamic.html">internal::variable_if_dynamic</a><<a class="el" href="class_eigen_1_1_stride.html#ac63b4f223fc4f94c452bf80f549fe18f">Index</a>, OuterStrideAtCompileTime> <a class="el" href="class_eigen_1_1_stride.html#a15242940ed789837b2b54fa9d3b17894">Eigen::Stride::m_outer</a><code> [protected]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Definition at line <a class="el" href="_core_source.html#l00092">92</a> of file <a class="el" href="_core_source.html">Core</a>.</p> </div> </div> </div> <br><hr><br> <table border="0" width="100%"> <tr> <td> Page generated by <a href="http://www.doxygen.org" target="_blank">Doxygen 1.7.5</a> for MRPT 0.9.5 SVN: at Sun Sep 25 17:20:18 UTC 2011</td><td></td> <td width="100"> </td> <td width="150"> </td></tr> </table> </body></html>