<!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"/> <meta http-equiv="X-UA-Compatible" content="IE=9"/> <meta name="generator" content="Doxygen 1.8.5"/> <title>libstdc++: __gnu_pbds::lu_counter_policy< Max_Count, _Alloc > Class Template Reference</title> <link href="tabs.css" rel="stylesheet" type="text/css"/> <script type="text/javascript" src="jquery.js"></script> <script type="text/javascript" src="dynsections.js"></script> <link href="navtree.css" rel="stylesheet" type="text/css"/> <script type="text/javascript" src="resize.js"></script> <script type="text/javascript" src="navtree.js"></script> <script type="text/javascript"> $(document).ready(initResizable); $(window).load(resizeHeight); </script> <link href="doxygen.css" rel="stylesheet" type="text/css" /> </head> <body> <div id="top"><!-- do not remove this div, it is closed by doxygen! --> <div id="titlearea"> <table cellspacing="0" cellpadding="0"> <tbody> <tr style="height: 56px;"> <td style="padding-left: 0.5em;"> <div id="projectname">libstdc++ </div> </td> </tr> </tbody> </table> </div> <!-- end header part --> <!-- Generated by Doxygen 1.8.5 --> </div><!-- top --> <div id="side-nav" class="ui-resizable side-nav-resizable"> <div id="nav-tree"> <div id="nav-tree-contents"> <div id="nav-sync" class="sync"></div> </div> </div> <div id="splitbar" style="-moz-user-select:none;" class="ui-resizable-handle"> </div> </div> <script type="text/javascript"> $(document).ready(function(){initNavTree('a00363.html','');}); </script> <div id="doc-content"> <div class="header"> <div class="summary"> <a href="#pub-types">Public Types</a> | <a href="#pub-methods">Public Member Functions</a> | <a href="#pri-methods">Private Member Functions</a> | <a href="a02422.html">List of all members</a> </div> <div class="headertitle"> <div class="title">__gnu_pbds::lu_counter_policy< Max_Count, _Alloc > Class Template Reference</div> </div> </div><!--header--> <div class="contents"> <div class="dynheader"> Inheritance diagram for __gnu_pbds::lu_counter_policy< Max_Count, _Alloc >:</div> <div class="dyncontent"> <div class="center"><iframe scrolling="no" frameborder="0" src="a02423.svg" width="195" height="152"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe> </div> <center><span class="legend">[<a target="top" href="graph_legend.html">legend</a>]</span></center></div> <table class="memberdecls"> <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-types"></a> Public Types</h2></td></tr> <tr class="memitem:a814e06c289bfc62ebba22c40ef40ad68"><td class="memItemLeft" align="right" valign="top">enum  </td><td class="memItemRight" valign="bottom">{ <a class="el" href="a00363.html#a814e06c289bfc62ebba22c40ef40ad68a7c66d09f76b308caa4430f2f04575835">max_count</a> }</td></tr> <tr class="separator:a814e06c289bfc62ebba22c40ef40ad68"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:aa8852116a38629ce0b1f3073e197f681"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa8852116a38629ce0b1f3073e197f681"></a> typedef _Alloc </td><td class="memItemRight" valign="bottom"><b>allocator_type</b></td></tr> <tr class="separator:aa8852116a38629ce0b1f3073e197f681"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a9b1f819009fec959d74668594f98852d"><td class="memItemLeft" align="right" valign="top">typedef <br class="typebreak"/> __rebind_m::other::reference </td><td class="memItemRight" valign="bottom"><a class="el" href="a00363.html#a9b1f819009fec959d74668594f98852d">metadata_reference</a></td></tr> <tr class="separator:a9b1f819009fec959d74668594f98852d"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:aa53180229ff61fd4f105cd893740b12d"><td class="memItemLeft" align="right" valign="top">typedef <br class="typebreak"/> <a class="el" href="a00275.html">detail::lu_counter_metadata</a><br class="typebreak"/> < size_type > </td><td class="memItemRight" valign="bottom"><a class="el" href="a00363.html#aa53180229ff61fd4f105cd893740b12d">metadata_type</a></td></tr> <tr class="separator:aa53180229ff61fd4f105cd893740b12d"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:af5a96b1862394ca8d7f28d33adb588b6"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af5a96b1862394ca8d7f28d33adb588b6"></a> typedef allocator_type::size_type </td><td class="memItemRight" valign="bottom"><b>size_type</b></td></tr> <tr class="separator:af5a96b1862394ca8d7f28d33adb588b6"><td class="memSeparator" colspan="2"> </td></tr> </table><table class="memberdecls"> <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a> Public Member Functions</h2></td></tr> <tr class="memitem:a8aff0fa70e893c9e79863a3917b5e062"><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00363.html#aa53180229ff61fd4f105cd893740b12d">metadata_type</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="a00363.html#a8aff0fa70e893c9e79863a3917b5e062">operator()</a> () const </td></tr> <tr class="separator:a8aff0fa70e893c9e79863a3917b5e062"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a480c9473b94f222f4d5961c0710b984b"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="a00363.html#a480c9473b94f222f4d5961c0710b984b">operator()</a> (<a class="el" href="a00363.html#a9b1f819009fec959d74668594f98852d">metadata_reference</a> r_data) const </td></tr> <tr class="separator:a480c9473b94f222f4d5961c0710b984b"><td class="memSeparator" colspan="2"> </td></tr> </table><table class="memberdecls"> <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pri-methods"></a> Private Member Functions</h2></td></tr> <tr class="memitem:adcc04ee4052e20e7c1bcf2ef4e9a5980"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="adcc04ee4052e20e7c1bcf2ef4e9a5980"></a> lu_counter_metadata< size_type > </td><td class="memItemRight" valign="bottom"><b>operator()</b> (size_type max_size) const</td></tr> <tr class="separator:adcc04ee4052e20e7c1bcf2ef4e9a5980"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ac5321fb2c92d1cf3624f4b3a1aeacca2"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac5321fb2c92d1cf3624f4b3a1aeacca2"></a> bool </td><td class="memItemRight" valign="bottom"><b>operator()</b> (Metadata_Reference r_data, size_type m_max_count) const</td></tr> <tr class="separator:ac5321fb2c92d1cf3624f4b3a1aeacca2"><td class="memSeparator" colspan="2"> </td></tr> </table> <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2> <div class="textblock"><h3>template<std::size_t Max_Count = 5, typename _Alloc = std::allocator<char>><br/> class __gnu_pbds::lu_counter_policy< Max_Count, _Alloc ></h3> <p>A list-update policy that moves elements to the front of the list based on the counter algorithm. </p> <p>Definition at line <a class="el" href="a01341_source.html#l00092">92</a> of file <a class="el" href="a01341_source.html">list_update_policy.hpp</a>.</p> </div><h2 class="groupheader">Member Typedef Documentation</h2> <a class="anchor" id="a9b1f819009fec959d74668594f98852d"></a> <div class="memitem"> <div class="memproto"> <div class="memtemplate"> template<std::size_t Max_Count = 5, typename _Alloc = std::allocator<char>> </div> <table class="memname"> <tr> <td class="memname">typedef __rebind_m::other::reference <a class="el" href="a00363.html">__gnu_pbds::lu_counter_policy</a>< Max_Count, _Alloc >::<a class="el" href="a00363.html#a9b1f819009fec959d74668594f98852d">metadata_reference</a></td> </tr> </table> </div><div class="memdoc"> <p>Reference to metadata on which this functor operates. </p> <p>Definition at line <a class="el" href="a01341_source.html#l00115">115</a> of file <a class="el" href="a01341_source.html">list_update_policy.hpp</a>.</p> </div> </div> <a class="anchor" id="aa53180229ff61fd4f105cd893740b12d"></a> <div class="memitem"> <div class="memproto"> <div class="memtemplate"> template<std::size_t Max_Count = 5, typename _Alloc = std::allocator<char>> </div> <table class="memname"> <tr> <td class="memname">typedef <a class="el" href="a00275.html">detail::lu_counter_metadata</a><size_type> <a class="el" href="a00363.html">__gnu_pbds::lu_counter_policy</a>< Max_Count, _Alloc >::<a class="el" href="a00363.html#aa53180229ff61fd4f105cd893740b12d">metadata_type</a></td> </tr> </table> </div><div class="memdoc"> <p>Metadata on which this functor operates. </p> <p>Definition at line <a class="el" href="a01341_source.html#l00107">107</a> of file <a class="el" href="a01341_source.html">list_update_policy.hpp</a>.</p> </div> </div> <h2 class="groupheader">Member Enumeration Documentation</h2> <a class="anchor" id="a814e06c289bfc62ebba22c40ef40ad68"></a> <div class="memitem"> <div class="memproto"> <div class="memtemplate"> template<std::size_t Max_Count = 5, typename _Alloc = std::allocator<char>> </div> <table class="memname"> <tr> <td class="memname">anonymous enum</td> </tr> </table> </div><div class="memdoc"> <table class="fieldtable"> <tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><em><a class="anchor" id="a814e06c289bfc62ebba22c40ef40ad68a7c66d09f76b308caa4430f2f04575835"></a>max_count</em> </td><td class="fielddoc"> <p>When some element is accessed this number of times, it will be moved to the front of the list. </p> </td></tr> </table> <p>Definition at line <a class="el" href="a01341_source.html#l00099">99</a> of file <a class="el" href="a01341_source.html">list_update_policy.hpp</a>.</p> </div> </div> <h2 class="groupheader">Member Function Documentation</h2> <a class="anchor" id="a8aff0fa70e893c9e79863a3917b5e062"></a> <div class="memitem"> <div class="memproto"> <div class="memtemplate"> template<std::size_t Max_Count = 5, typename _Alloc = std::allocator<char>> </div> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname"><a class="el" href="a00363.html#aa53180229ff61fd4f105cd893740b12d">metadata_type</a> <a class="el" href="a00363.html">__gnu_pbds::lu_counter_policy</a>< Max_Count, _Alloc >::operator() </td> <td>(</td> <td class="paramname"></td><td>)</td> <td> const</td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">inline</span></span> </td> </tr> </table> </div><div class="memdoc"> <p>Creates a metadata object. </p> <p>Definition at line <a class="el" href="a01341_source.html#l00119">119</a> of file <a class="el" href="a01341_source.html">list_update_policy.hpp</a>.</p> <p>References <a class="el" href="a01341_source.html#l00103">__gnu_pbds::lu_counter_policy< Max_Count, _Alloc >::max_count</a>.</p> </div> </div> <a class="anchor" id="a480c9473b94f222f4d5961c0710b984b"></a> <div class="memitem"> <div class="memproto"> <div class="memtemplate"> template<std::size_t Max_Count = 5, typename _Alloc = std::allocator<char>> </div> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">bool <a class="el" href="a00363.html">__gnu_pbds::lu_counter_policy</a>< Max_Count, _Alloc >::operator() </td> <td>(</td> <td class="paramtype"><a class="el" href="a00363.html#a9b1f819009fec959d74668594f98852d">metadata_reference</a> </td> <td class="paramname"><em>r_data</em></td><td>)</td> <td> const</td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">inline</span></span> </td> </tr> </table> </div><div class="memdoc"> <p>Decides whether a metadata object should be moved to the front of the list. </p> <p>Definition at line <a class="el" href="a01341_source.html#l00125">125</a> of file <a class="el" href="a01341_source.html">list_update_policy.hpp</a>.</p> <p>References <a class="el" href="a01341_source.html#l00103">__gnu_pbds::lu_counter_policy< Max_Count, _Alloc >::max_count</a>.</p> </div> </div> <hr/>The documentation for this class was generated from the following file:<ul> <li><a class="el" href="a01341_source.html">list_update_policy.hpp</a></li> </ul> </div><!-- contents --> </div><!-- doc-content --> <!-- start footer part --> <div id="nav-path" class="navpath"><!-- id is needed for treeview function! --> <ul> <li class="navelem"><a class="el" href="a01656.html">__gnu_pbds</a></li><li class="navelem"><a class="el" href="a00363.html">lu_counter_policy</a></li> <li class="footer">Generated by <a href="http://www.doxygen.org/index.html"> <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.5 </li> </ul> </div> </body> </html>