blob: 0e9af87626c96743e0979bcfc4ebbd1c44db9acb [file] [log] [blame]
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<title>ublas: boost::numeric::ublas::vector_indirect&lt; V, IA &gt; Class Template Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<link href="doxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<!-- Generated by Doxygen 1.6.1 -->
<div class="navigation" id="top">
<div class="tabs">
<ul>
<li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
<li><a href="pages.html"><span>Related&nbsp;Pages</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>
</ul>
</div>
<div class="tabs">
<ul>
<li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
<li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
<li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
</ul>
</div>
<div class="navpath"><b>boost</b>::<b>numeric</b>::<b>ublas</b>::<a class="el" href="classboost_1_1numeric_1_1ublas_1_1vector__indirect.html">vector_indirect</a>
</div>
</div>
<div class="contents">
<h1>boost::numeric::ublas::vector_indirect&lt; V, IA &gt; Class Template Reference</h1><!-- doxytag: class="boost::numeric::ublas::vector_indirect" --><!-- doxytag: inherits="vector_expression&lt; vector_indirect&lt; V, IA &gt; &gt;" -->
<p>A <a class="el" href="classboost_1_1numeric_1_1ublas_1_1vector.html" title="A dense vector of values of type T.">vector</a> referencing a non continuous subvector of elements given another <a class="el" href="classboost_1_1numeric_1_1ublas_1_1vector.html" title="A dense vector of values of type T.">vector</a> of indices.
<a href="#_details">More...</a></p>
<p>Inherits <a class="el" href="classboost_1_1numeric_1_1ublas_1_1vector__expression.html">vector_expression&lt; vector_indirect&lt; V, IA &gt; &gt;</a>.</p>
<p><a href="classboost_1_1numeric_1_1ublas_1_1vector__indirect-members.html">List of all members.</a></p>
<table border="0" cellpadding="0" cellspacing="0">
<tr><td colspan="2"><h2>Classes</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classboost_1_1numeric_1_1ublas_1_1vector__indirect_1_1const__iterator.html">const_iterator</a></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classboost_1_1numeric_1_1ublas_1_1vector__indirect_1_1iterator.html">iterator</a></td></tr>
<tr><td colspan="2"><h2>Public Types</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae3caf2885da78259c5caa09664ca7adb"></a><!-- doxytag: member="boost::numeric::ublas::vector_indirect::const_vector_type" ref="ae3caf2885da78259c5caa09664ca7adb" args="" -->
typedef const V&nbsp;</td><td class="memItemRight" valign="bottom"><b>const_vector_type</b></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab54860bbea0af120f9f817ac71787b89"></a><!-- doxytag: member="boost::numeric::ublas::vector_indirect::vector_type" ref="ab54860bbea0af120f9f817ac71787b89" args="" -->
typedef V&nbsp;</td><td class="memItemRight" valign="bottom"><b>vector_type</b></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aaa42331a45d7e6ebdb69e50b6791b283"></a><!-- doxytag: member="boost::numeric::ublas::vector_indirect::const_indirect_array_type" ref="aaa42331a45d7e6ebdb69e50b6791b283" args="" -->
typedef const IA&nbsp;</td><td class="memItemRight" valign="bottom"><b>const_indirect_array_type</b></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af72e8c33168b1bb070a24166f1fe5d6b"></a><!-- doxytag: member="boost::numeric::ublas::vector_indirect::indirect_array_type" ref="af72e8c33168b1bb070a24166f1fe5d6b" args="" -->
typedef IA&nbsp;</td><td class="memItemRight" valign="bottom"><b>indirect_array_type</b></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a249fd8c7bea8e0e4bd7983b0a2984a0c"></a><!-- doxytag: member="boost::numeric::ublas::vector_indirect::size_type" ref="a249fd8c7bea8e0e4bd7983b0a2984a0c" args="" -->
typedef V::size_type&nbsp;</td><td class="memItemRight" valign="bottom"><b>size_type</b></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a641acb7579d2acfab2f9f7b28635ed2e"></a><!-- doxytag: member="boost::numeric::ublas::vector_indirect::difference_type" ref="a641acb7579d2acfab2f9f7b28635ed2e" args="" -->
typedef V::difference_type&nbsp;</td><td class="memItemRight" valign="bottom"><b>difference_type</b></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0ae7706525c2cfa10610b00dc1c77db6"></a><!-- doxytag: member="boost::numeric::ublas::vector_indirect::value_type" ref="a0ae7706525c2cfa10610b00dc1c77db6" args="" -->
typedef V::value_type&nbsp;</td><td class="memItemRight" valign="bottom"><b>value_type</b></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a91ee8cddae976b6eddd02073aaccb578"></a><!-- doxytag: member="boost::numeric::ublas::vector_indirect::const_reference" ref="a91ee8cddae976b6eddd02073aaccb578" args="" -->
typedef V::const_reference&nbsp;</td><td class="memItemRight" valign="bottom"><b>const_reference</b></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a55400255b539b23702b800194eee2ebb"></a><!-- doxytag: member="boost::numeric::ublas::vector_indirect::reference" ref="a55400255b539b23702b800194eee2ebb" args="" -->
typedef boost::mpl::if_<br class="typebreak"/>
&lt; boost::is_const&lt; V &gt;<br class="typebreak"/>
, typename V::const_reference, <br class="typebreak"/>
typename V::reference &gt;::type&nbsp;</td><td class="memItemRight" valign="bottom"><b>reference</b></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3bb560e1b598654effbd2c53d71a4c70"></a><!-- doxytag: member="boost::numeric::ublas::vector_indirect::vector_closure_type" ref="a3bb560e1b598654effbd2c53d71a4c70" args="" -->
typedef boost::mpl::if_<br class="typebreak"/>
&lt; boost::is_const&lt; V &gt;<br class="typebreak"/>
, typename <br class="typebreak"/>
V::const_closure_type, <br class="typebreak"/>
typename V::closure_type &gt;<br class="typebreak"/>
::type&nbsp;</td><td class="memItemRight" valign="bottom"><b>vector_closure_type</b></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aec77683775ac56de49dcdb2e5caf2578"></a><!-- doxytag: member="boost::numeric::ublas::vector_indirect::range_type" ref="aec77683775ac56de49dcdb2e5caf2578" args="" -->
typedef <a class="el" href="classboost_1_1numeric_1_1ublas_1_1basic__range.html">basic_range</a>&lt; size_type, <br class="typebreak"/>
difference_type &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><b>range_type</b></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a24f5bebd519397474c7ce8a0c352d0cd"></a><!-- doxytag: member="boost::numeric::ublas::vector_indirect::slice_type" ref="a24f5bebd519397474c7ce8a0c352d0cd" args="" -->
typedef <a class="el" href="classboost_1_1numeric_1_1ublas_1_1basic__slice.html">basic_slice</a>&lt; size_type, <br class="typebreak"/>
difference_type &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><b>slice_type</b></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4c754254be2780642c7e0f38d555a824"></a><!-- doxytag: member="boost::numeric::ublas::vector_indirect::const_closure_type" ref="a4c754254be2780642c7e0f38d555a824" args="" -->
typedef const <a class="el" href="classboost_1_1numeric_1_1ublas_1_1vector__indirect.html">self_type</a>&nbsp;</td><td class="memItemRight" valign="bottom"><b>const_closure_type</b></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab394a73cb5688fd284c8d31660c7455f"></a><!-- doxytag: member="boost::numeric::ublas::vector_indirect::closure_type" ref="ab394a73cb5688fd284c8d31660c7455f" args="" -->
typedef <a class="el" href="classboost_1_1numeric_1_1ublas_1_1vector__indirect.html">self_type</a>&nbsp;</td><td class="memItemRight" valign="bottom"><b>closure_type</b></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa24799214a32862aedf41c0fdef3aee5"></a><!-- doxytag: member="boost::numeric::ublas::vector_indirect::storage_category" ref="aa24799214a32862aedf41c0fdef3aee5" args="" -->
typedef <br class="typebreak"/>
<a class="el" href="structboost_1_1numeric_1_1ublas_1_1storage__restrict__traits.html">storage_restrict_traits</a><br class="typebreak"/>
&lt; typename V::storage_category, <br class="typebreak"/>
<a class="el" href="structboost_1_1numeric_1_1ublas_1_1dense__proxy__tag.html">dense_proxy_tag</a> &gt;<br class="typebreak"/>
::storage_category&nbsp;</td><td class="memItemRight" valign="bottom"><b>storage_category</b></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="adbf56e68a3bb4559b106cd261676ff01"></a><!-- doxytag: member="boost::numeric::ublas::vector_indirect::const_reverse_iterator" ref="adbf56e68a3bb4559b106cd261676ff01" args="" -->
typedef reverse_iterator_base<br class="typebreak"/>
&lt; <a class="el" href="classboost_1_1numeric_1_1ublas_1_1vector__indirect_1_1const__iterator.html">const_iterator</a> &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><b>const_reverse_iterator</b></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a38d21638f028b31a017119122e4b3a47"></a><!-- doxytag: member="boost::numeric::ublas::vector_indirect::reverse_iterator" ref="a38d21638f028b31a017119122e4b3a47" args="" -->
typedef reverse_iterator_base<br class="typebreak"/>
&lt; <a class="el" href="classboost_1_1numeric_1_1ublas_1_1vector__indirect_1_1iterator.html">iterator</a> &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><b>reverse_iterator</b></td></tr>
<tr><td colspan="2"><h2>Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a21f41be8a578a245a13262535289df8f"></a><!-- doxytag: member="boost::numeric::ublas::vector_indirect::vector_indirect" ref="a21f41be8a578a245a13262535289df8f" args="(vector_type &amp;data, size_type size)" -->
BOOST_UBLAS_INLINE&nbsp;</td><td class="memItemRight" valign="bottom"><b>vector_indirect</b> (vector_type &amp;data, size_type size)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab35b55603f666d87fce8a0fb03e4af95"></a><!-- doxytag: member="boost::numeric::ublas::vector_indirect::vector_indirect" ref="ab35b55603f666d87fce8a0fb03e4af95" args="(vector_type &amp;data, const indirect_array_type &amp;ia)" -->
BOOST_UBLAS_INLINE&nbsp;</td><td class="memItemRight" valign="bottom"><b>vector_indirect</b> (vector_type &amp;data, const indirect_array_type &amp;ia)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a30d909de8f666e4fd79d3b531101d561"></a><!-- doxytag: member="boost::numeric::ublas::vector_indirect::vector_indirect" ref="a30d909de8f666e4fd79d3b531101d561" args="(const vector_closure_type &amp;data, const indirect_array_type &amp;ia, int)" -->
BOOST_UBLAS_INLINE&nbsp;</td><td class="memItemRight" valign="bottom"><b>vector_indirect</b> (const vector_closure_type &amp;data, const indirect_array_type &amp;ia, int)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa77377ed3b5d985d8db826788da3e265"></a><!-- doxytag: member="boost::numeric::ublas::vector_indirect::size" ref="aa77377ed3b5d985d8db826788da3e265" args="() const " -->
BOOST_UBLAS_INLINE size_type&nbsp;</td><td class="memItemRight" valign="bottom"><b>size</b> () const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a504aca7be594000541d4a8133555141d"></a><!-- doxytag: member="boost::numeric::ublas::vector_indirect::indirect" ref="a504aca7be594000541d4a8133555141d" args="() const " -->
BOOST_UBLAS_INLINE <br class="typebreak"/>
const_indirect_array_type &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><b>indirect</b> () const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a7586fc72412cfcda8626ae37119fe2dc"></a><!-- doxytag: member="boost::numeric::ublas::vector_indirect::indirect" ref="a7586fc72412cfcda8626ae37119fe2dc" args="()" -->
BOOST_UBLAS_INLINE <br class="typebreak"/>
indirect_array_type &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><b>indirect</b> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab76ad08c5c9c3c7b5afe733e2ff0bb35"></a><!-- doxytag: member="boost::numeric::ublas::vector_indirect::data" ref="ab76ad08c5c9c3c7b5afe733e2ff0bb35" args="() const " -->
BOOST_UBLAS_INLINE const <br class="typebreak"/>
vector_closure_type &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><b>data</b> () const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a103a115a6dd6171dd1935dbdbe4ce299"></a><!-- doxytag: member="boost::numeric::ublas::vector_indirect::data" ref="a103a115a6dd6171dd1935dbdbe4ce299" args="()" -->
BOOST_UBLAS_INLINE <br class="typebreak"/>
vector_closure_type &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><b>data</b> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae80282d6660079e886f480b457da04f2"></a><!-- doxytag: member="boost::numeric::ublas::vector_indirect::operator()" ref="ae80282d6660079e886f480b457da04f2" args="(size_type i) const " -->
BOOST_UBLAS_INLINE const_reference&nbsp;</td><td class="memItemRight" valign="bottom"><b>operator()</b> (size_type i) const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a56271e43e07427b8adbd7a3ad34a93b7"></a><!-- doxytag: member="boost::numeric::ublas::vector_indirect::operator()" ref="a56271e43e07427b8adbd7a3ad34a93b7" args="(size_type i)" -->
BOOST_UBLAS_INLINE reference&nbsp;</td><td class="memItemRight" valign="bottom"><b>operator()</b> (size_type i)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3021698bb469b63f1e7e19089991fc7a"></a><!-- doxytag: member="boost::numeric::ublas::vector_indirect::operator[]" ref="a3021698bb469b63f1e7e19089991fc7a" args="(size_type i) const " -->
BOOST_UBLAS_INLINE const_reference&nbsp;</td><td class="memItemRight" valign="bottom"><b>operator[]</b> (size_type i) const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3ebf3765bc41d7f4fe4a7f5bfb5fbfd6"></a><!-- doxytag: member="boost::numeric::ublas::vector_indirect::operator[]" ref="a3ebf3765bc41d7f4fe4a7f5bfb5fbfd6" args="(size_type i)" -->
BOOST_UBLAS_INLINE reference&nbsp;</td><td class="memItemRight" valign="bottom"><b>operator[]</b> (size_type i)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a7078782287beb5a6d284217bf401a697"></a><!-- doxytag: member="boost::numeric::ublas::vector_indirect::project" ref="a7078782287beb5a6d284217bf401a697" args="(const range_type &amp;r) const " -->
BOOST_UBLAS_INLINE <br class="typebreak"/>
<a class="el" href="classboost_1_1numeric_1_1ublas_1_1vector__indirect.html">vector_indirect</a>&lt; vector_type, <br class="typebreak"/>
indirect_array_type &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><b>project</b> (const <a class="el" href="classboost_1_1numeric_1_1ublas_1_1basic__range.html">range_type</a> &amp;r) const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a60f7590a1c9cb99e0c42ceb436b66271"></a><!-- doxytag: member="boost::numeric::ublas::vector_indirect::project" ref="a60f7590a1c9cb99e0c42ceb436b66271" args="(const slice_type &amp;s) const " -->
BOOST_UBLAS_INLINE <br class="typebreak"/>
<a class="el" href="classboost_1_1numeric_1_1ublas_1_1vector__indirect.html">vector_indirect</a>&lt; vector_type, <br class="typebreak"/>
indirect_array_type &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><b>project</b> (const <a class="el" href="classboost_1_1numeric_1_1ublas_1_1basic__slice.html">slice_type</a> &amp;s) const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad6db9474a040aff0794cbe618ea5ec1b"></a><!-- doxytag: member="boost::numeric::ublas::vector_indirect::project" ref="ad6db9474a040aff0794cbe618ea5ec1b" args="(const indirect_array_type &amp;ia) const " -->
BOOST_UBLAS_INLINE <br class="typebreak"/>
<a class="el" href="classboost_1_1numeric_1_1ublas_1_1vector__indirect.html">vector_indirect</a>&lt; vector_type, <br class="typebreak"/>
indirect_array_type &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><b>project</b> (const indirect_array_type &amp;ia) const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a7dace2ee61754e8fd81f169b85055247"></a><!-- doxytag: member="boost::numeric::ublas::vector_indirect::operator=" ref="a7dace2ee61754e8fd81f169b85055247" args="(const vector_indirect &amp;vi)" -->
BOOST_UBLAS_INLINE <br class="typebreak"/>
<a class="el" href="classboost_1_1numeric_1_1ublas_1_1vector__indirect.html">vector_indirect</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><b>operator=</b> (const <a class="el" href="classboost_1_1numeric_1_1ublas_1_1vector__indirect.html">vector_indirect</a> &amp;vi)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1957067a5560e6b71bc6a36f4d5a1ba0"></a><!-- doxytag: member="boost::numeric::ublas::vector_indirect::assign_temporary" ref="a1957067a5560e6b71bc6a36f4d5a1ba0" args="(vector_indirect &amp;vi)" -->
BOOST_UBLAS_INLINE <br class="typebreak"/>
<a class="el" href="classboost_1_1numeric_1_1ublas_1_1vector__indirect.html">vector_indirect</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><b>assign_temporary</b> (<a class="el" href="classboost_1_1numeric_1_1ublas_1_1vector__indirect.html">vector_indirect</a> &amp;vi)</td></tr>
<tr><td class="memTemplParams" colspan="2"><a class="anchor" id="abbb2307bcf3d8040fb9c4a4f03420bc1"></a><!-- doxytag: member="boost::numeric::ublas::vector_indirect::operator=" ref="abbb2307bcf3d8040fb9c4a4f03420bc1" args="(const vector_expression&lt; AE &gt; &amp;ae)" -->
template&lt;class AE &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">BOOST_UBLAS_INLINE <br class="typebreak"/>
<a class="el" href="classboost_1_1numeric_1_1ublas_1_1vector__indirect.html">vector_indirect</a> &amp;&nbsp;</td><td class="memTemplItemRight" valign="bottom"><b>operator=</b> (const <a class="el" href="classboost_1_1numeric_1_1ublas_1_1vector__expression.html">vector_expression</a>&lt; AE &gt; &amp;ae)</td></tr>
<tr><td class="memTemplParams" colspan="2"><a class="anchor" id="aac3272f5cd4d85135cbe24d427d8ad0d"></a><!-- doxytag: member="boost::numeric::ublas::vector_indirect::assign" ref="aac3272f5cd4d85135cbe24d427d8ad0d" args="(const vector_expression&lt; AE &gt; &amp;ae)" -->
template&lt;class AE &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">BOOST_UBLAS_INLINE <br class="typebreak"/>
<a class="el" href="classboost_1_1numeric_1_1ublas_1_1vector__indirect.html">vector_indirect</a> &amp;&nbsp;</td><td class="memTemplItemRight" valign="bottom"><b>assign</b> (const <a class="el" href="classboost_1_1numeric_1_1ublas_1_1vector__expression.html">vector_expression</a>&lt; AE &gt; &amp;ae)</td></tr>
<tr><td class="memTemplParams" colspan="2"><a class="anchor" id="a0ef8c8ef9133468d11bc3ebc3d20c24e"></a><!-- doxytag: member="boost::numeric::ublas::vector_indirect::operator+=" ref="a0ef8c8ef9133468d11bc3ebc3d20c24e" args="(const vector_expression&lt; AE &gt; &amp;ae)" -->
template&lt;class AE &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">BOOST_UBLAS_INLINE <br class="typebreak"/>
<a class="el" href="classboost_1_1numeric_1_1ublas_1_1vector__indirect.html">vector_indirect</a> &amp;&nbsp;</td><td class="memTemplItemRight" valign="bottom"><b>operator+=</b> (const <a class="el" href="classboost_1_1numeric_1_1ublas_1_1vector__expression.html">vector_expression</a>&lt; AE &gt; &amp;ae)</td></tr>
<tr><td class="memTemplParams" colspan="2"><a class="anchor" id="a4a8e85250fb3eaccf85ffb3b11854dca"></a><!-- doxytag: member="boost::numeric::ublas::vector_indirect::plus_assign" ref="a4a8e85250fb3eaccf85ffb3b11854dca" args="(const vector_expression&lt; AE &gt; &amp;ae)" -->
template&lt;class AE &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">BOOST_UBLAS_INLINE <br class="typebreak"/>
<a class="el" href="classboost_1_1numeric_1_1ublas_1_1vector__indirect.html">vector_indirect</a> &amp;&nbsp;</td><td class="memTemplItemRight" valign="bottom"><b>plus_assign</b> (const <a class="el" href="classboost_1_1numeric_1_1ublas_1_1vector__expression.html">vector_expression</a>&lt; AE &gt; &amp;ae)</td></tr>
<tr><td class="memTemplParams" colspan="2"><a class="anchor" id="acea2d4f99b406134ee605180b70ae840"></a><!-- doxytag: member="boost::numeric::ublas::vector_indirect::operator&#45;=" ref="acea2d4f99b406134ee605180b70ae840" args="(const vector_expression&lt; AE &gt; &amp;ae)" -->
template&lt;class AE &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">BOOST_UBLAS_INLINE <br class="typebreak"/>
<a class="el" href="classboost_1_1numeric_1_1ublas_1_1vector__indirect.html">vector_indirect</a> &amp;&nbsp;</td><td class="memTemplItemRight" valign="bottom"><b>operator-=</b> (const <a class="el" href="classboost_1_1numeric_1_1ublas_1_1vector__expression.html">vector_expression</a>&lt; AE &gt; &amp;ae)</td></tr>
<tr><td class="memTemplParams" colspan="2"><a class="anchor" id="ae0b2b76ae3fcd7639e7aa35bfa1be810"></a><!-- doxytag: member="boost::numeric::ublas::vector_indirect::minus_assign" ref="ae0b2b76ae3fcd7639e7aa35bfa1be810" args="(const vector_expression&lt; AE &gt; &amp;ae)" -->
template&lt;class AE &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">BOOST_UBLAS_INLINE <br class="typebreak"/>
<a class="el" href="classboost_1_1numeric_1_1ublas_1_1vector__indirect.html">vector_indirect</a> &amp;&nbsp;</td><td class="memTemplItemRight" valign="bottom"><b>minus_assign</b> (const <a class="el" href="classboost_1_1numeric_1_1ublas_1_1vector__expression.html">vector_expression</a>&lt; AE &gt; &amp;ae)</td></tr>
<tr><td class="memTemplParams" colspan="2"><a class="anchor" id="acbf0b1d21ed87f4977c3f098a9abd6d2"></a><!-- doxytag: member="boost::numeric::ublas::vector_indirect::operator*=" ref="acbf0b1d21ed87f4977c3f098a9abd6d2" args="(const AT &amp;at)" -->
template&lt;class AT &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">BOOST_UBLAS_INLINE <br class="typebreak"/>
<a class="el" href="classboost_1_1numeric_1_1ublas_1_1vector__indirect.html">vector_indirect</a> &amp;&nbsp;</td><td class="memTemplItemRight" valign="bottom"><b>operator*=</b> (const AT &amp;at)</td></tr>
<tr><td class="memTemplParams" colspan="2"><a class="anchor" id="abf8b7acbec8fc676192d0acb65177109"></a><!-- doxytag: member="boost::numeric::ublas::vector_indirect::operator/=" ref="abf8b7acbec8fc676192d0acb65177109" args="(const AT &amp;at)" -->
template&lt;class AT &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">BOOST_UBLAS_INLINE <br class="typebreak"/>
<a class="el" href="classboost_1_1numeric_1_1ublas_1_1vector__indirect.html">vector_indirect</a> &amp;&nbsp;</td><td class="memTemplItemRight" valign="bottom"><b>operator/=</b> (const AT &amp;at)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0b909974f8033cbcbc8c4a9b330aaf14"></a><!-- doxytag: member="boost::numeric::ublas::vector_indirect::same_closure" ref="a0b909974f8033cbcbc8c4a9b330aaf14" args="(const vector_indirect &amp;vr) const " -->
BOOST_UBLAS_INLINE bool&nbsp;</td><td class="memItemRight" valign="bottom"><b>same_closure</b> (const <a class="el" href="classboost_1_1numeric_1_1ublas_1_1vector__indirect.html">vector_indirect</a> &amp;vr) const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a794adf2594f6fb22e0a8cf07a54f9d3e"></a><!-- doxytag: member="boost::numeric::ublas::vector_indirect::operator==" ref="a794adf2594f6fb22e0a8cf07a54f9d3e" args="(const vector_indirect &amp;vi) const " -->
BOOST_UBLAS_INLINE bool&nbsp;</td><td class="memItemRight" valign="bottom"><b>operator==</b> (const <a class="el" href="classboost_1_1numeric_1_1ublas_1_1vector__indirect.html">vector_indirect</a> &amp;vi) const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="abb418a2ee95ed7fc795dcd7cee653986"></a><!-- doxytag: member="boost::numeric::ublas::vector_indirect::swap" ref="abb418a2ee95ed7fc795dcd7cee653986" args="(vector_indirect vi)" -->
BOOST_UBLAS_INLINE void&nbsp;</td><td class="memItemRight" valign="bottom"><b>swap</b> (<a class="el" href="classboost_1_1numeric_1_1ublas_1_1vector__indirect.html">vector_indirect</a> vi)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5cd77062d40aba68f002950c53cbecc5"></a><!-- doxytag: member="boost::numeric::ublas::vector_indirect::find" ref="a5cd77062d40aba68f002950c53cbecc5" args="(size_type i) const " -->
BOOST_UBLAS_INLINE <a class="el" href="classboost_1_1numeric_1_1ublas_1_1vector__indirect_1_1const__iterator.html">const_iterator</a>&nbsp;</td><td class="memItemRight" valign="bottom"><b>find</b> (size_type i) const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="adfaa69dde2ed02d899d8a827079c59cb"></a><!-- doxytag: member="boost::numeric::ublas::vector_indirect::find" ref="adfaa69dde2ed02d899d8a827079c59cb" args="(size_type i)" -->
BOOST_UBLAS_INLINE <a class="el" href="classboost_1_1numeric_1_1ublas_1_1vector__indirect_1_1iterator.html">iterator</a>&nbsp;</td><td class="memItemRight" valign="bottom"><b>find</b> (size_type i)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa6e2fabebbf643f2cb42a6c037b0e2d0"></a><!-- doxytag: member="boost::numeric::ublas::vector_indirect::begin" ref="aa6e2fabebbf643f2cb42a6c037b0e2d0" args="() const " -->
BOOST_UBLAS_INLINE <a class="el" href="classboost_1_1numeric_1_1ublas_1_1vector__indirect_1_1const__iterator.html">const_iterator</a>&nbsp;</td><td class="memItemRight" valign="bottom"><b>begin</b> () const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a37733eaf79e06bd8ce400e3b0364cd57"></a><!-- doxytag: member="boost::numeric::ublas::vector_indirect::end" ref="a37733eaf79e06bd8ce400e3b0364cd57" args="() const " -->
BOOST_UBLAS_INLINE <a class="el" href="classboost_1_1numeric_1_1ublas_1_1vector__indirect_1_1const__iterator.html">const_iterator</a>&nbsp;</td><td class="memItemRight" valign="bottom"><b>end</b> () const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aea516e055f8ddae2b65ed93754b7872d"></a><!-- doxytag: member="boost::numeric::ublas::vector_indirect::begin" ref="aea516e055f8ddae2b65ed93754b7872d" args="()" -->
BOOST_UBLAS_INLINE <a class="el" href="classboost_1_1numeric_1_1ublas_1_1vector__indirect_1_1iterator.html">iterator</a>&nbsp;</td><td class="memItemRight" valign="bottom"><b>begin</b> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="accb9a3c40283fa75ce6b6a31bf00cce0"></a><!-- doxytag: member="boost::numeric::ublas::vector_indirect::end" ref="accb9a3c40283fa75ce6b6a31bf00cce0" args="()" -->
BOOST_UBLAS_INLINE <a class="el" href="classboost_1_1numeric_1_1ublas_1_1vector__indirect_1_1iterator.html">iterator</a>&nbsp;</td><td class="memItemRight" valign="bottom"><b>end</b> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5a860926a59f763e5abb5365bf787485"></a><!-- doxytag: member="boost::numeric::ublas::vector_indirect::rbegin" ref="a5a860926a59f763e5abb5365bf787485" args="() const " -->
BOOST_UBLAS_INLINE <br class="typebreak"/>
const_reverse_iterator&nbsp;</td><td class="memItemRight" valign="bottom"><b>rbegin</b> () const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a657f4140fa4781a8053d0369198c472f"></a><!-- doxytag: member="boost::numeric::ublas::vector_indirect::rend" ref="a657f4140fa4781a8053d0369198c472f" args="() const " -->
BOOST_UBLAS_INLINE <br class="typebreak"/>
const_reverse_iterator&nbsp;</td><td class="memItemRight" valign="bottom"><b>rend</b> () const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a78adf5990b25a4a24fed74209906c763"></a><!-- doxytag: member="boost::numeric::ublas::vector_indirect::rbegin" ref="a78adf5990b25a4a24fed74209906c763" args="()" -->
BOOST_UBLAS_INLINE reverse_iterator&nbsp;</td><td class="memItemRight" valign="bottom"><b>rbegin</b> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3b72208e937d39c99e9086ddc9ea911b"></a><!-- doxytag: member="boost::numeric::ublas::vector_indirect::rend" ref="a3b72208e937d39c99e9086ddc9ea911b" args="()" -->
BOOST_UBLAS_INLINE reverse_iterator&nbsp;</td><td class="memItemRight" valign="bottom"><b>rend</b> ()</td></tr>
<tr><td colspan="2"><h2>Friends</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a7e2dbaa3b0f5a4d517c029fd2eec66e7"></a><!-- doxytag: member="boost::numeric::ublas::vector_indirect::swap" ref="a7e2dbaa3b0f5a4d517c029fd2eec66e7" args="(vector_indirect vi1, vector_indirect vi2)" -->
BOOST_UBLAS_INLINE friend void&nbsp;</td><td class="memItemRight" valign="bottom"><b>swap</b> (<a class="el" href="classboost_1_1numeric_1_1ublas_1_1vector__indirect.html">vector_indirect</a> vi1, <a class="el" href="classboost_1_1numeric_1_1ublas_1_1vector__indirect.html">vector_indirect</a> vi2)</td></tr>
</table>
<hr/><a name="_details"></a><h2>Detailed Description</h2>
<h3>template&lt;class V, class IA&gt;<br/>
class boost::numeric::ublas::vector_indirect&lt; V, IA &gt;</h3>
<p>It is the most general version of any subvectors because it uses another <a class="el" href="classboost_1_1numeric_1_1ublas_1_1vector.html" title="A dense vector of values of type T.">vector</a> of indices to reference the subvector.</p>
<p>The <a class="el" href="classboost_1_1numeric_1_1ublas_1_1vector.html" title="A dense vector of values of type T.">vector</a> of indices can be of any type with the restriction that its elements must be type-compatible with the size_type <code>of</code> the container. In practice, the following are good candidates:</p>
<ul>
<li><code>boost::numeric::ublas::indirect_array&lt;A&gt;</code> where <code>A</code> can be <code>int</code>, <code>size_t</code>, <code>long</code>, etc...</li>
<li><code>std::vector&lt;A&gt;</code> where <code>A</code> can <code>int</code>, <code>size_t</code>, <code>long</code>, etc...</li>
<li><code>boost::numeric::ublas::vector&lt;int&gt;</code> can work too (<code>int</code> can be replaced by another integer type)</li>
<li>etc...</li>
</ul>
<p>An indirect <a class="el" href="classboost_1_1numeric_1_1ublas_1_1vector.html" title="A dense vector of values of type T.">vector</a> can be used as a normal <a class="el" href="classboost_1_1numeric_1_1ublas_1_1vector.html" title="A dense vector of values of type T.">vector</a> in any expression. If the specified indirect <a class="el" href="classboost_1_1numeric_1_1ublas_1_1vector.html" title="A dense vector of values of type T.">vector</a> falls outside that of the indices of the <a class="el" href="classboost_1_1numeric_1_1ublas_1_1vector.html" title="A dense vector of values of type T.">vector</a>, then the <code><a class="el" href="classboost_1_1numeric_1_1ublas_1_1vector__indirect.html" title="A vector referencing a non continuous subvector of elements given another vector...">vector_indirect</a></code> is not a well formed Vector Expression and access to an element outside of indices of the <a class="el" href="classboost_1_1numeric_1_1ublas_1_1vector.html" title="A dense vector of values of type T.">vector</a> is <b>undefined</b>.</p>
<dl><dt><b>Template Parameters:</b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"></td><td valign="top"><em>V</em>&nbsp;</td><td>the type of <a class="el" href="classboost_1_1numeric_1_1ublas_1_1vector.html" title="A dense vector of values of type T.">vector</a> referenced (for example <code>vector&lt;double&gt;</code>) </td></tr>
<tr><td valign="top"></td><td valign="top"><em>IA</em>&nbsp;</td><td>the type of index <a class="el" href="classboost_1_1numeric_1_1ublas_1_1vector.html" title="A dense vector of values of type T.">vector</a>. Default is <code>ublas::indirect_array&lt;&gt;</code> </td></tr>
</table>
</dd>
</dl>
</div>
<hr size="1"/><address style="text-align: right;"><small>Generated on Sun Jul 4 20:31:07 2010 for ublas by&nbsp;
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.6.1 </small></address>
</body>
</html>