Sophie

Sophie

distrib > Mandriva > 2010.0 > i586 > media > contrib-release > by-pkgid > d5e74628f0e673bb8680aebce32b2c04 > files > 17791

itk-doc-3.12.0-1mdv2010.0.i586.rpm

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html><head><meta name="robots" content="noindex">
<meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>ITK: itk_hash_set.h Source File</title>
<link href="DoxygenStyle.css" rel="stylesheet" type="text/css">
</head><body bgcolor="#ffffff">


<!--  Section customized for INSIGHT : Tue Jul 17 01:02:45 2001 -->
<center>
<a href="index.html" class="qindex">Main Page</a>&nbsp;&nbsp; 
<a href="modules.html" class="qindex">Groups</a>&nbsp;&nbsp;
<a href="namespaces.html" class="qindex">Namespace List</a>&nbsp;&nbsp;
<a href="hierarchy.html" class="qindex">Class Hierarchy</a>&nbsp;&nbsp;
<a href="classes.html" class="qindex">Alphabetical List</a>&nbsp;&nbsp;
<a href="annotated.html" class="qindex">Compound List</a>&nbsp;&nbsp; 
<a href="files.html" class="qindex">File
List</a>&nbsp;&nbsp; 
<a href="namespacemembers.html" class="qindex">Namespace Members</a>&nbsp;&nbsp; 
<a href="functions.html" class="qindex">Compound Members</a>&nbsp;&nbsp; 
<a href="globals.html" class="qindex">File Members</a>&nbsp;&nbsp;
<a href="pages.html" class="qindex">Concepts</a></center>


<!-- Generated by Doxygen 1.5.9 -->
  <div class="navpath"><a class="el" href="dir_02e23d841c198393a6e961e9a0678fff.html">Code</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_ea7fc529ede9a38b0438cf13831ae873.html">Common</a>
  </div>
<div class="contents">
<h1>itk_hash_set.h</h1><a href="itk__hash__set_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/*=========================================================================</span>
<a name="l00002"></a>00002 <span class="comment"></span>
<a name="l00003"></a>00003 <span class="comment">  Program:   Insight Segmentation &amp; Registration Toolkit</span>
<a name="l00004"></a>00004 <span class="comment">  Module:    $RCSfile: itk_hash_set.h,v $</span>
<a name="l00005"></a>00005 <span class="comment">  Language:  C++</span>
<a name="l00006"></a>00006 <span class="comment">  Date:      $Date: 2009-02-05 19:05:01 $</span>
<a name="l00007"></a>00007 <span class="comment">  Version:   $Revision: 1.14 $</span>
<a name="l00008"></a>00008 <span class="comment"></span>
<a name="l00009"></a>00009 <span class="comment">  Copyright (c) Insight Software Consortium. All rights reserved.</span>
<a name="l00010"></a>00010 <span class="comment">  See ITKCopyright.txt or http://www.itk.org/HTML/Copyright.htm for details.</span>
<a name="l00011"></a>00011 <span class="comment"></span>
<a name="l00012"></a>00012 <span class="comment">     This software is distributed WITHOUT ANY WARRANTY; without even </span>
<a name="l00013"></a>00013 <span class="comment">     the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR </span>
<a name="l00014"></a>00014 <span class="comment">     PURPOSE.  See the above copyright notices for more information.</span>
<a name="l00015"></a>00015 <span class="comment"></span>
<a name="l00016"></a>00016 <span class="comment">=========================================================================*/</span>
<a name="l00054"></a>00054 <span class="preprocessor">#ifndef __itk_hash_set_h</span>
<a name="l00055"></a>00055 <span class="preprocessor"></span><span class="preprocessor">#define __itk_hash_set_h</span>
<a name="l00056"></a>00056 <span class="preprocessor"></span>
<a name="l00057"></a>00057 <span class="preprocessor">#if (defined(__GNUC__) &amp;&amp; (((__GNUC__==3) &amp;&amp; (__GNUC_MINOR__&gt;=1) || (__GNUC__&gt;3) ) || ( (__GNUC__==4) &amp;&amp; defined(__INTEL_COMPILER) ) )) || (defined(__IBMCPP__) &amp;&amp; __IBMCPP__ &gt;= 600)</span>
<a name="l00058"></a>00058 <span class="preprocessor"></span><span class="comment">// Use this hash_map for GNU_C versions &gt;= 3.1, IBMCPP &gt;=600, or Intel compilers with GCCv4</span>
<a name="l00059"></a>00059 <span class="preprocessor">#include &lt;ext/hash_set&gt;</span>
<a name="l00060"></a>00060 
<a name="l00061"></a>00061 <span class="keyword">namespace </span>itk
<a name="l00062"></a>00062 {
<a name="l00063"></a>00063   <span class="keyword">using</span> __gnu_cxx::hash;
<a name="l00064"></a>00064   <span class="keyword">using</span> __gnu_cxx::hash_set;
<a name="l00065"></a>00065   <span class="keyword">using</span> __gnu_cxx::hash_multiset;
<a name="l00066"></a>00066 }
<a name="l00067"></a>00067 
<a name="l00068"></a>00068 <span class="preprocessor">#else</span>
<a name="l00069"></a>00069 <span class="preprocessor"></span>
<a name="l00070"></a>00070 <span class="preprocessor">#include "<a class="code" href="itk__hashtable_8h.html">itk_hashtable.h</a>"</span>
<a name="l00071"></a>00071 <span class="preprocessor">#include &lt;functional&gt;</span>
<a name="l00072"></a>00072 
<a name="l00073"></a>00073 <span class="comment">// ---</span>
<a name="l00074"></a>00074 
<a name="l00075"></a>00075 <span class="keyword">namespace </span>itk
<a name="l00076"></a>00076 {
<a name="l00077"></a>00077   
<a name="l00082"></a>00082 <span class="keyword">template</span> &lt;<span class="keyword">class</span> Value, VCL_DFL_TMPL_PARAM_STLDECL(HashFcn,hash&lt;Value&gt;),
<a name="l00083"></a>00083           VCL_DFL_TMPL_PARAM_STLDECL(EqualKey,std::equal_to&lt;Value&gt;),
<a name="l00084"></a>00084           VCL_DFL_TYPE_PARAM_STLDECL(Alloc,std::allocator&lt;<span class="keywordtype">char</span>&gt; ) &gt;
<a name="l00085"></a><a class="code" href="classitk_1_1hash__set.html">00085</a> <span class="keyword">class </span><a class="code" href="classitk_1_1hash__set.html" title="Replacement for STL hash set because some systems do not support it, or support it...">hash_set</a>
<a name="l00086"></a>00086 {
<a name="l00087"></a>00087 <span class="keyword">private</span>:
<a name="l00088"></a>00088   <span class="keyword">typedef</span> <a class="code" href="classitk_1_1hashtable.html">hashtable&lt;Value, Value, HashFcn, std::identity&lt;Value&gt;</a>, 
<a name="l00089"></a>00089       EqualKey, Alloc&gt; <a class="code" href="classitk_1_1hashtable.html">ht</a>;
<a name="l00090"></a>00090   <span class="keyword">typedef</span> <a class="code" href="classitk_1_1hash__set.html" title="Replacement for STL hash set because some systems do not support it, or support it...">hash_set&lt;Value, HashFcn, EqualKey, Alloc&gt;</a> <span class="keyword">self</span>;
<a name="l00091"></a>00091 <span class="keyword">public</span>:
<a name="l00092"></a><a class="code" href="classitk_1_1hash__set.html#c894d74df6f354254d5d51642cbbcfa9">00092</a>   <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="classitk_1_1hashtable.html#ce7f39999dfd0460fafc792cc0fcf31b">ht::key_type</a> <a class="code" href="classitk_1_1hash__set.html#c894d74df6f354254d5d51642cbbcfa9">key_type</a>;
<a name="l00093"></a><a class="code" href="classitk_1_1hash__set.html#498862a291e4c09279131a3b1d1c5372">00093</a>   <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="classitk_1_1hashtable.html#9b4944269bde048047a0379fb26b1f26">ht::value_type</a> <a class="code" href="classitk_1_1hash__set.html#498862a291e4c09279131a3b1d1c5372">value_type</a>;
<a name="l00094"></a><a class="code" href="classitk_1_1hash__set.html#321ed7a494eafdffb3a749f7615cbd85">00094</a>   <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="classitk_1_1hashtable.html#9573613f935976ffd4446f4fa6037d34">ht::hasher</a> <a class="code" href="classitk_1_1hash__set.html#321ed7a494eafdffb3a749f7615cbd85">hasher</a>;
<a name="l00095"></a><a class="code" href="classitk_1_1hash__set.html#60d5d3e5f7e289cc410ced89a20afa7c">00095</a>   <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="classitk_1_1hashtable.html#7d43a00a83b7a980ef685ec55aabeccc">ht::key_equal</a> <a class="code" href="classitk_1_1hash__set.html#60d5d3e5f7e289cc410ced89a20afa7c">key_equal</a>;
<a name="l00096"></a>00096 
<a name="l00097"></a><a class="code" href="classitk_1_1hash__set.html#d2ec65c858ff53a1cf1b08611c00a948">00097</a>   <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="classitk_1_1hashtable.html#24390ecc706db752bc17b789feded607">ht::size_type</a> <a class="code" href="classitk_1_1hash__set.html#d2ec65c858ff53a1cf1b08611c00a948">size_type</a>;
<a name="l00098"></a><a class="code" href="classitk_1_1hash__set.html#1b4ef8e9974573e37d329170c9d47ecf">00098</a>   <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="classitk_1_1hashtable.html#4823f0a7e1138fe9afc54b858ee8f9b9">ht::difference_type</a> <a class="code" href="classitk_1_1hash__set.html#1b4ef8e9974573e37d329170c9d47ecf">difference_type</a>;
<a name="l00099"></a><a class="code" href="classitk_1_1hash__set.html#4ff5147f9d96a1517f5dcf2e2d0e1c49">00099</a>   <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="classitk_1_1hashtable.html#77fe29fafb247e4d756f5e749e55ba31">ht::const_pointer</a> <a class="code" href="classitk_1_1hash__set.html#4ff5147f9d96a1517f5dcf2e2d0e1c49">pointer</a>;
<a name="l00100"></a><a class="code" href="classitk_1_1hash__set.html#fb850fff51b5b8f0a8e5333a1fe0778f">00100</a>   <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="classitk_1_1hashtable.html#77fe29fafb247e4d756f5e749e55ba31">ht::const_pointer</a> <a class="code" href="classitk_1_1hash__set.html#fb850fff51b5b8f0a8e5333a1fe0778f">const_pointer</a>;
<a name="l00101"></a><a class="code" href="classitk_1_1hash__set.html#41a005a232d3458edde02015c3cc9530">00101</a>   <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="classitk_1_1hashtable.html#79422138a06bd1c6687779e27e236ece">ht::const_reference</a> <a class="code" href="classitk_1_1hash__set.html#41a005a232d3458edde02015c3cc9530">reference</a>;
<a name="l00102"></a><a class="code" href="classitk_1_1hash__set.html#94eaaae80a43ccc891977e5444cad479">00102</a>   <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="classitk_1_1hashtable.html#79422138a06bd1c6687779e27e236ece">ht::const_reference</a> <a class="code" href="classitk_1_1hash__set.html#94eaaae80a43ccc891977e5444cad479">const_reference</a>;
<a name="l00103"></a>00103   <span class="comment">// SunPro bug</span>
<a name="l00104"></a><a class="code" href="classitk_1_1hash__set.html#70f9fd6393d374ad06380b70a8720809">00104</a>   <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="structitk_1_1hashtable__const__iterator.html">ht::const_iterator</a> <a class="code" href="structitk_1_1hashtable__const__iterator.html">const_iterator</a>;
<a name="l00105"></a><a class="code" href="classitk_1_1hash__set.html#64d18de3953beede2cccdb0dccc52eaa">00105</a>   <span class="keyword">typedef</span> <a class="code" href="structitk_1_1hashtable__const__iterator.html">const_iterator</a> <a class="code" href="structitk_1_1hashtable__const__iterator.html">iterator</a>;
<a name="l00106"></a>00106 
<a name="l00107"></a>00107   <span class="comment">// vc6 addition</span>
<a name="l00108"></a><a class="code" href="classitk_1_1hash__set.html#159b554160084d586af4b2dbe490a144">00108</a>   <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="structitk_1_1hashtable__iterator.html">ht::iterator</a> <a class="code" href="structitk_1_1hashtable__iterator.html">ht_iterator</a>;
<a name="l00109"></a>00109 
<a name="l00110"></a><a class="code" href="classitk_1_1hash__set.html#b892589ecc1637e8698c3bb2f4672d18">00110</a>   <a class="code" href="classitk_1_1hash__set.html#321ed7a494eafdffb3a749f7615cbd85">hasher</a> <a class="code" href="classitk_1_1hash__set.html#b892589ecc1637e8698c3bb2f4672d18">hash_funct</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> rep.<a class="code" href="classitk_1_1hashtable.html#1d2c56a89e24be3b4b03bfd6f04793e2">hash_funct</a>(); }
<a name="l00111"></a><a class="code" href="classitk_1_1hash__set.html#b82d46e0ee9bdf838043e4bf89b7a42d">00111</a>   <a class="code" href="classitk_1_1hash__set.html#60d5d3e5f7e289cc410ced89a20afa7c">key_equal</a> <a class="code" href="classitk_1_1hash__set.html#b82d46e0ee9bdf838043e4bf89b7a42d">key_eq</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> rep.<a class="code" href="classitk_1_1hashtable.html#3ac1ff41a505f4fc4bd2927bcb7e0ef4">key_eq</a>(); }
<a name="l00112"></a>00112 
<a name="l00113"></a>00113 <span class="keyword">private</span>:
<a name="l00114"></a>00114   ht rep;
<a name="l00115"></a>00115 
<a name="l00116"></a>00116 <span class="keyword">public</span>:
<a name="l00117"></a><a class="code" href="classitk_1_1hash__set.html#6017a22049e436afc5158fbbf97d6bda">00117</a>   <a class="code" href="classitk_1_1hash__set.html#6017a22049e436afc5158fbbf97d6bda">hash_set</a>() : rep(100, <a class="code" href="classitk_1_1hash__set.html#321ed7a494eafdffb3a749f7615cbd85">hasher</a>(), <a class="code" href="classitk_1_1hash__set.html#60d5d3e5f7e289cc410ced89a20afa7c">key_equal</a>()) {}
<a name="l00118"></a><a class="code" href="classitk_1_1hash__set.html#878a25e9c738bd14362d4216fa0707c8">00118</a>   <a class="code" href="classitk_1_1hash__set.html#878a25e9c738bd14362d4216fa0707c8">hash_set</a>(<a class="code" href="classitk_1_1hash__set.html#d2ec65c858ff53a1cf1b08611c00a948">size_type</a> n) : rep(n, <a class="code" href="classitk_1_1hash__set.html#321ed7a494eafdffb3a749f7615cbd85">hasher</a>(), <a class="code" href="classitk_1_1hash__set.html#60d5d3e5f7e289cc410ced89a20afa7c">key_equal</a>()) {}
<a name="l00119"></a><a class="code" href="classitk_1_1hash__set.html#8d00af9adf7aed012564cd2c060d4a5d">00119</a>   <a class="code" href="classitk_1_1hash__set.html#8d00af9adf7aed012564cd2c060d4a5d">hash_set</a>(<a class="code" href="classitk_1_1hash__set.html#d2ec65c858ff53a1cf1b08611c00a948">size_type</a> n, <span class="keyword">const</span> <a class="code" href="classitk_1_1hash__set.html#321ed7a494eafdffb3a749f7615cbd85">hasher</a>&amp; hf) : rep(n, hf, <a class="code" href="classitk_1_1hash__set.html#60d5d3e5f7e289cc410ced89a20afa7c">key_equal</a>()) {}
<a name="l00120"></a><a class="code" href="classitk_1_1hash__set.html#f9d24b60372e890bf96c95cdabc1e31b">00120</a>   <a class="code" href="classitk_1_1hash__set.html#6017a22049e436afc5158fbbf97d6bda">hash_set</a>(<a class="code" href="classitk_1_1hash__set.html#d2ec65c858ff53a1cf1b08611c00a948">size_type</a> n, <span class="keyword">const</span> <a class="code" href="classitk_1_1hash__set.html#321ed7a494eafdffb3a749f7615cbd85">hasher</a>&amp; hf, <span class="keyword">const</span> <a class="code" href="classitk_1_1hash__set.html#60d5d3e5f7e289cc410ced89a20afa7c">key_equal</a>&amp; eql)
<a name="l00121"></a>00121     : rep(n, hf, eql) {}
<a name="l00122"></a>00122 
<a name="l00123"></a><a class="code" href="classitk_1_1hash__set.html#3ed4aa8b408880bd341769a3e06c9ae5">00123</a>   <a class="code" href="classitk_1_1hash__set.html#6017a22049e436afc5158fbbf97d6bda">hash_set</a>(<span class="keyword">const</span> <a class="code" href="classitk_1_1hash__set.html#498862a291e4c09279131a3b1d1c5372">value_type</a>* f, <span class="keyword">const</span> <a class="code" href="classitk_1_1hash__set.html#498862a291e4c09279131a3b1d1c5372">value_type</a>* l)
<a name="l00124"></a>00124     : rep(100, <a class="code" href="classitk_1_1hash__set.html#321ed7a494eafdffb3a749f7615cbd85">hasher</a>(), <a class="code" href="classitk_1_1hash__set.html#60d5d3e5f7e289cc410ced89a20afa7c">key_equal</a>()) { rep.<a class="code" href="classitk_1_1hashtable.html#240c395abae08460fe16e99426d1a699">insert_unique</a>(f, l); }
<a name="l00125"></a><a class="code" href="classitk_1_1hash__set.html#8a123899e8db2434c0fdbda2a18f350e">00125</a>   <a class="code" href="classitk_1_1hash__set.html#6017a22049e436afc5158fbbf97d6bda">hash_set</a>(<span class="keyword">const</span> <a class="code" href="classitk_1_1hash__set.html#498862a291e4c09279131a3b1d1c5372">value_type</a>* f, <span class="keyword">const</span> <a class="code" href="classitk_1_1hash__set.html#498862a291e4c09279131a3b1d1c5372">value_type</a>* l, <a class="code" href="classitk_1_1hash__set.html#d2ec65c858ff53a1cf1b08611c00a948">size_type</a> n)
<a name="l00126"></a>00126     : rep(n, <a class="code" href="classitk_1_1hash__set.html#321ed7a494eafdffb3a749f7615cbd85">hasher</a>(), <a class="code" href="classitk_1_1hash__set.html#60d5d3e5f7e289cc410ced89a20afa7c">key_equal</a>()) { rep.<a class="code" href="classitk_1_1hashtable.html#240c395abae08460fe16e99426d1a699">insert_unique</a>(f, l); }
<a name="l00127"></a><a class="code" href="classitk_1_1hash__set.html#d8a7f94da6df5ca9b79606b0e894d654">00127</a>   <a class="code" href="classitk_1_1hash__set.html#6017a22049e436afc5158fbbf97d6bda">hash_set</a>(<span class="keyword">const</span> <a class="code" href="classitk_1_1hash__set.html#498862a291e4c09279131a3b1d1c5372">value_type</a>* f, <span class="keyword">const</span> <a class="code" href="classitk_1_1hash__set.html#498862a291e4c09279131a3b1d1c5372">value_type</a>* l, <a class="code" href="classitk_1_1hash__set.html#d2ec65c858ff53a1cf1b08611c00a948">size_type</a> n,
<a name="l00128"></a>00128            <span class="keyword">const</span> <a class="code" href="classitk_1_1hash__set.html#321ed7a494eafdffb3a749f7615cbd85">hasher</a>&amp; hf)
<a name="l00129"></a>00129     : rep(n, hf, <a class="code" href="classitk_1_1hash__set.html#60d5d3e5f7e289cc410ced89a20afa7c">key_equal</a>()) { rep.<a class="code" href="classitk_1_1hashtable.html#240c395abae08460fe16e99426d1a699">insert_unique</a>(f, l); }
<a name="l00130"></a><a class="code" href="classitk_1_1hash__set.html#db1dad0b0c1f591cdc3018670bd4d4c8">00130</a>   <a class="code" href="classitk_1_1hash__set.html#6017a22049e436afc5158fbbf97d6bda">hash_set</a>(<span class="keyword">const</span> <a class="code" href="classitk_1_1hash__set.html#498862a291e4c09279131a3b1d1c5372">value_type</a>* f, <span class="keyword">const</span> <a class="code" href="classitk_1_1hash__set.html#498862a291e4c09279131a3b1d1c5372">value_type</a>* l, <a class="code" href="classitk_1_1hash__set.html#d2ec65c858ff53a1cf1b08611c00a948">size_type</a> n,
<a name="l00131"></a>00131            <span class="keyword">const</span> <a class="code" href="classitk_1_1hash__set.html#321ed7a494eafdffb3a749f7615cbd85">hasher</a>&amp; hf, <span class="keyword">const</span> <a class="code" href="classitk_1_1hash__set.html#60d5d3e5f7e289cc410ced89a20afa7c">key_equal</a>&amp; eql)
<a name="l00132"></a>00132     : rep(n, hf, eql) { rep.<a class="code" href="classitk_1_1hashtable.html#240c395abae08460fe16e99426d1a699">insert_unique</a>(f, l); }
<a name="l00133"></a>00133 
<a name="l00134"></a><a class="code" href="classitk_1_1hash__set.html#37c615f411cb698309aae1851d5712a6">00134</a>   <a class="code" href="classitk_1_1hash__set.html#6017a22049e436afc5158fbbf97d6bda">hash_set</a>(<a class="code" href="structitk_1_1hashtable__const__iterator.html">const_iterator</a> f, <a class="code" href="structitk_1_1hashtable__const__iterator.html">const_iterator</a> l)
<a name="l00135"></a>00135     : rep(100, <a class="code" href="classitk_1_1hash__set.html#321ed7a494eafdffb3a749f7615cbd85">hasher</a>(), <a class="code" href="classitk_1_1hash__set.html#60d5d3e5f7e289cc410ced89a20afa7c">key_equal</a>()) { rep.<a class="code" href="classitk_1_1hashtable.html#240c395abae08460fe16e99426d1a699">insert_unique</a>(f, l); }
<a name="l00136"></a><a class="code" href="classitk_1_1hash__set.html#fed2e17f73604b1d52fb57c028230236">00136</a>   <a class="code" href="classitk_1_1hash__set.html#6017a22049e436afc5158fbbf97d6bda">hash_set</a>(<a class="code" href="structitk_1_1hashtable__const__iterator.html">const_iterator</a> f, <a class="code" href="structitk_1_1hashtable__const__iterator.html">const_iterator</a> l, <a class="code" href="classitk_1_1hash__set.html#d2ec65c858ff53a1cf1b08611c00a948">size_type</a> n)
<a name="l00137"></a>00137     : rep(n, <a class="code" href="classitk_1_1hash__set.html#321ed7a494eafdffb3a749f7615cbd85">hasher</a>(), <a class="code" href="classitk_1_1hash__set.html#60d5d3e5f7e289cc410ced89a20afa7c">key_equal</a>()) { rep.<a class="code" href="classitk_1_1hashtable.html#240c395abae08460fe16e99426d1a699">insert_unique</a>(f, l); }
<a name="l00138"></a><a class="code" href="classitk_1_1hash__set.html#9d811405092caadc4aaf97d59d4cbc88">00138</a>   <a class="code" href="classitk_1_1hash__set.html#6017a22049e436afc5158fbbf97d6bda">hash_set</a>(<a class="code" href="structitk_1_1hashtable__const__iterator.html">const_iterator</a> f, <a class="code" href="structitk_1_1hashtable__const__iterator.html">const_iterator</a> l, <a class="code" href="classitk_1_1hash__set.html#d2ec65c858ff53a1cf1b08611c00a948">size_type</a> n,
<a name="l00139"></a>00139            <span class="keyword">const</span> <a class="code" href="classitk_1_1hash__set.html#321ed7a494eafdffb3a749f7615cbd85">hasher</a>&amp; hf)
<a name="l00140"></a>00140     : rep(n, hf, <a class="code" href="classitk_1_1hash__set.html#60d5d3e5f7e289cc410ced89a20afa7c">key_equal</a>()) { rep.<a class="code" href="classitk_1_1hashtable.html#240c395abae08460fe16e99426d1a699">insert_unique</a>(f, l); }
<a name="l00141"></a><a class="code" href="classitk_1_1hash__set.html#dabb3fe920a5a085234517d74175f4be">00141</a>   <a class="code" href="classitk_1_1hash__set.html#6017a22049e436afc5158fbbf97d6bda">hash_set</a>(<a class="code" href="structitk_1_1hashtable__const__iterator.html">const_iterator</a> f, <a class="code" href="structitk_1_1hashtable__const__iterator.html">const_iterator</a> l, <a class="code" href="classitk_1_1hash__set.html#d2ec65c858ff53a1cf1b08611c00a948">size_type</a> n,
<a name="l00142"></a>00142            <span class="keyword">const</span> <a class="code" href="classitk_1_1hash__set.html#321ed7a494eafdffb3a749f7615cbd85">hasher</a>&amp; hf, <span class="keyword">const</span> <a class="code" href="classitk_1_1hash__set.html#60d5d3e5f7e289cc410ced89a20afa7c">key_equal</a>&amp; eql)
<a name="l00143"></a>00143     : rep(n, hf, eql) { rep.<a class="code" href="classitk_1_1hashtable.html#240c395abae08460fe16e99426d1a699">insert_unique</a>(f, l); }
<a name="l00144"></a>00144 
<a name="l00145"></a>00145 <span class="keyword">public</span>:
<a name="l00146"></a><a class="code" href="classitk_1_1hash__set.html#13c2db71488bd185ca4a4d3c854388f4">00146</a>   <a class="code" href="classitk_1_1hash__set.html#d2ec65c858ff53a1cf1b08611c00a948">size_type</a> <a class="code" href="classitk_1_1hash__set.html#13c2db71488bd185ca4a4d3c854388f4">size</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> rep.<a class="code" href="classitk_1_1hashtable.html#1099e731a42e664826073e0af53072d3">size</a>(); }
<a name="l00147"></a><a class="code" href="classitk_1_1hash__set.html#d0612f4df1089b461b88fb0f0e7b7f1e">00147</a>   <a class="code" href="classitk_1_1hash__set.html#d2ec65c858ff53a1cf1b08611c00a948">size_type</a> <a class="code" href="classitk_1_1hash__set.html#d0612f4df1089b461b88fb0f0e7b7f1e">max_size</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> rep.<a class="code" href="classitk_1_1hashtable.html#1eb088b174e2efd1935c67fafb94d8c1">max_size</a>(); }
<a name="l00148"></a><a class="code" href="classitk_1_1hash__set.html#ca40039a7a89c543d45cd5f2fb7c13eb">00148</a>   <span class="keywordtype">bool</span> <a class="code" href="classitk_1_1hash__set.html#ca40039a7a89c543d45cd5f2fb7c13eb">empty</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> rep.<a class="code" href="classitk_1_1hashtable.html#b5ee85ee90fb247a287b91ff93c8a5d0">empty</a>(); }
<a name="l00149"></a><a class="code" href="classitk_1_1hash__set.html#66d60fe50bd64ee22cce93dea7d5e630">00149</a>   <span class="keywordtype">void</span> <a class="code" href="classitk_1_1hash__set.html#66d60fe50bd64ee22cce93dea7d5e630">swap</a>(<span class="keyword">self</span>&amp; hs) { rep.<a class="code" href="classitk_1_1hashtable.html#78e86996d21870444c69be2f971f0e52">swap</a>(hs.rep); }
<a name="l00150"></a>00150 
<a name="l00151"></a>00151   <span class="keyword">friend</span> <span class="keywordtype">bool</span> operator==ITK_FRIEND_TEMPLATE_FUNCTION_ARGUMENT(<span class="keyword">self</span>)(<span class="keyword">const</span> <span class="keyword">self</span> &amp;, <span class="keyword">const</span> <span class="keyword">self</span> &amp;);
<a name="l00152"></a>00152 
<a name="l00153"></a><a class="code" href="classitk_1_1hash__set.html#09262a92c4a1a5217baac50c33c87621">00153</a>   <a class="code" href="structitk_1_1hashtable__const__iterator.html">iterator</a> <a class="code" href="classitk_1_1hash__set.html#09262a92c4a1a5217baac50c33c87621">begin</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> rep.<a class="code" href="classitk_1_1hashtable.html#58bf22f83b683a429d29c639ba648fb0">begin</a>(); }
<a name="l00154"></a><a class="code" href="classitk_1_1hash__set.html#87192dcf32d1ea094bb3f0d1c09fd64c">00154</a>   <a class="code" href="structitk_1_1hashtable__const__iterator.html">iterator</a> <a class="code" href="classitk_1_1hash__set.html#87192dcf32d1ea094bb3f0d1c09fd64c">end</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> rep.<a class="code" href="classitk_1_1hashtable.html#b94a445bec49543c2357c33e99436677">end</a>(); }
<a name="l00155"></a>00155 
<a name="l00156"></a>00156 <span class="keyword">public</span>:
<a name="l00157"></a><a class="code" href="classitk_1_1hash__set.html#f0c5c5a17efcfda2064f3f33563b2b76">00157</a>   std::pair&lt;iterator, bool&gt; <a class="code" href="classitk_1_1hash__set.html#f0c5c5a17efcfda2064f3f33563b2b76">insert</a>(<span class="keyword">const</span> <a class="code" href="classitk_1_1hash__set.html#498862a291e4c09279131a3b1d1c5372">value_type</a>&amp; obj)
<a name="l00158"></a>00158     {
<a name="l00159"></a>00159 <span class="preprocessor">#ifdef _MSC_VER</span>
<a name="l00160"></a>00160 <span class="preprocessor"></span>    std::pair&lt; ht::iterator, bool&gt; p = rep.<a class="code" href="classitk_1_1hashtable.html#240c395abae08460fe16e99426d1a699">insert_unique</a>(obj);
<a name="l00161"></a>00161 <span class="preprocessor">#else</span>
<a name="l00162"></a>00162 <span class="preprocessor"></span>    std::pair&lt;typename ht::iterator, bool&gt; p = rep.<a class="code" href="classitk_1_1hashtable.html#240c395abae08460fe16e99426d1a699">insert_unique</a>(obj);
<a name="l00163"></a>00163 <span class="preprocessor">#endif</span>
<a name="l00164"></a>00164 <span class="preprocessor"></span>    <span class="keywordflow">return</span> std::pair&lt;iterator, bool&gt;(p.first, p.second);
<a name="l00165"></a>00165     }
<a name="l00166"></a><a class="code" href="classitk_1_1hash__set.html#9ba2ebfbba8596d35d963509723d3975">00166</a>   <span class="keywordtype">void</span> <a class="code" href="classitk_1_1hash__set.html#9ba2ebfbba8596d35d963509723d3975">insert</a>(<span class="keyword">const</span> <a class="code" href="classitk_1_1hash__set.html#498862a291e4c09279131a3b1d1c5372">value_type</a>* f, <span class="keyword">const</span> <a class="code" href="classitk_1_1hash__set.html#498862a291e4c09279131a3b1d1c5372">value_type</a>* l) { rep.<a class="code" href="classitk_1_1hashtable.html#240c395abae08460fe16e99426d1a699">insert_unique</a>(f,l); }
<a name="l00167"></a><a class="code" href="classitk_1_1hash__set.html#9a903d44bc66b068cd664306e33b12bd">00167</a>   <span class="keywordtype">void</span> <a class="code" href="classitk_1_1hash__set.html#9a903d44bc66b068cd664306e33b12bd">insert</a>(<a class="code" href="structitk_1_1hashtable__const__iterator.html">const_iterator</a> f, <a class="code" href="structitk_1_1hashtable__const__iterator.html">const_iterator</a> l) { rep.<a class="code" href="classitk_1_1hashtable.html#240c395abae08460fe16e99426d1a699">insert_unique</a>(f, l); }
<a name="l00168"></a><a class="code" href="classitk_1_1hash__set.html#1baea0f435007c287b4dde6647c7b2f2">00168</a>   std::pair&lt;iterator, bool&gt; <a class="code" href="classitk_1_1hash__set.html#1baea0f435007c287b4dde6647c7b2f2">insert_noresize</a>(<span class="keyword">const</span> <a class="code" href="classitk_1_1hash__set.html#498862a291e4c09279131a3b1d1c5372">value_type</a>&amp; obj)
<a name="l00169"></a>00169     {
<a name="l00170"></a>00170 <span class="preprocessor">#ifdef _MSC_VER</span>
<a name="l00171"></a>00171 <span class="preprocessor"></span>    std::pair&lt;ht::iterator, bool&gt; p = rep.<a class="code" href="classitk_1_1hashtable.html#88ecf906d4eb91a5c95f02d89e1a8865">insert_unique_noresize</a>(obj);
<a name="l00172"></a>00172 <span class="preprocessor">#else</span>
<a name="l00173"></a>00173 <span class="preprocessor"></span>      std::pair&lt;typename ht::iterator, bool&gt; p = rep.<a class="code" href="classitk_1_1hashtable.html#88ecf906d4eb91a5c95f02d89e1a8865">insert_unique_noresize</a>(obj);
<a name="l00174"></a>00174 <span class="preprocessor">#endif</span>
<a name="l00175"></a>00175 <span class="preprocessor"></span>      <span class="keywordflow">return</span> std::pair&lt;iterator, bool&gt;(p.first, p.second);
<a name="l00176"></a>00176     }
<a name="l00177"></a>00177 
<a name="l00178"></a><a class="code" href="classitk_1_1hash__set.html#2b240bd599e67ad4a148e590b11e6b0a">00178</a>   <a class="code" href="structitk_1_1hashtable__const__iterator.html">iterator</a> <a class="code" href="classitk_1_1hash__set.html#2b240bd599e67ad4a148e590b11e6b0a">find</a>(<span class="keyword">const</span> <a class="code" href="classitk_1_1hash__set.html#c894d74df6f354254d5d51642cbbcfa9">key_type</a>&amp; key)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> rep.<a class="code" href="classitk_1_1hashtable.html#de9a7a756cb3ab27dd7d9797b9a3958c">find</a>(key); }
<a name="l00179"></a>00179 
<a name="l00180"></a><a class="code" href="classitk_1_1hash__set.html#3976ea90cff2740696d3e7fb1559d5f1">00180</a>   <a class="code" href="classitk_1_1hash__set.html#d2ec65c858ff53a1cf1b08611c00a948">size_type</a> <a class="code" href="classitk_1_1hash__set.html#3976ea90cff2740696d3e7fb1559d5f1">count</a>(<span class="keyword">const</span> <a class="code" href="classitk_1_1hash__set.html#c894d74df6f354254d5d51642cbbcfa9">key_type</a>&amp; key)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> rep.<a class="code" href="classitk_1_1hashtable.html#bfce65fbba7b7aa67653925aebe2dac4">count</a>(key); }
<a name="l00181"></a>00181   
<a name="l00182"></a><a class="code" href="classitk_1_1hash__set.html#ce8353a206ee9b90868290b47f113572">00182</a>   std::pair&lt;iterator, iterator&gt; <a class="code" href="classitk_1_1hash__set.html#ce8353a206ee9b90868290b47f113572">equal_range</a>(<span class="keyword">const</span> <a class="code" href="classitk_1_1hash__set.html#c894d74df6f354254d5d51642cbbcfa9">key_type</a>&amp; key)<span class="keyword"> const</span>
<a name="l00183"></a>00183 <span class="keyword">    </span>{ <span class="keywordflow">return</span> rep.<a class="code" href="classitk_1_1hashtable.html#9ab88d24837423d2913890c7e0d0596c">equal_range</a>(key); }
<a name="l00184"></a>00184 
<a name="l00185"></a><a class="code" href="classitk_1_1hash__set.html#e1383173cb5c7d0010f8da3086bc07d1">00185</a>   <a class="code" href="classitk_1_1hash__set.html#d2ec65c858ff53a1cf1b08611c00a948">size_type</a> <a class="code" href="classitk_1_1hash__set.html#e1383173cb5c7d0010f8da3086bc07d1">erase</a>(<span class="keyword">const</span> <a class="code" href="classitk_1_1hash__set.html#c894d74df6f354254d5d51642cbbcfa9">key_type</a>&amp; key) {<span class="keywordflow">return</span> rep.<a class="code" href="classitk_1_1hashtable.html#2877156f7bd16ed9490819eeb78314eb">erase</a>(key); }
<a name="l00186"></a><a class="code" href="classitk_1_1hash__set.html#1767078adaae30fab3bf6c508481d3a4">00186</a>   <span class="keywordtype">void</span> <a class="code" href="classitk_1_1hash__set.html#1767078adaae30fab3bf6c508481d3a4">erase</a>(<a class="code" href="structitk_1_1hashtable__const__iterator.html">iterator</a> it) { rep.<a class="code" href="classitk_1_1hashtable.html#2877156f7bd16ed9490819eeb78314eb">erase</a>(it); }
<a name="l00187"></a><a class="code" href="classitk_1_1hash__set.html#ccade55609b55e91397776639b55290e">00187</a>   <span class="keywordtype">void</span> <a class="code" href="classitk_1_1hash__set.html#ccade55609b55e91397776639b55290e">erase</a>(<a class="code" href="structitk_1_1hashtable__const__iterator.html">iterator</a> f, <a class="code" href="structitk_1_1hashtable__const__iterator.html">iterator</a> l) { rep.<a class="code" href="classitk_1_1hashtable.html#2877156f7bd16ed9490819eeb78314eb">erase</a>(f, l); }
<a name="l00188"></a><a class="code" href="classitk_1_1hash__set.html#910c3418d46597ff31a70b379277ad4c">00188</a>   <span class="keywordtype">void</span> <a class="code" href="classitk_1_1hash__set.html#910c3418d46597ff31a70b379277ad4c">clear</a>() { rep.<a class="code" href="classitk_1_1hashtable.html#8277af2e2c3a55380bb0e6fee17942ca">clear</a>(); }
<a name="l00189"></a>00189 
<a name="l00190"></a>00190 <span class="keyword">public</span>:
<a name="l00191"></a><a class="code" href="classitk_1_1hash__set.html#b6b9b5543f41811cf25db596f0bac830">00191</a>   <span class="keywordtype">void</span> <a class="code" href="classitk_1_1hash__set.html#b6b9b5543f41811cf25db596f0bac830">resize</a>(<a class="code" href="classitk_1_1hash__set.html#d2ec65c858ff53a1cf1b08611c00a948">size_type</a> hint) { rep.<a class="code" href="classitk_1_1hashtable.html#f40249391498b87b6ee4765a034d3ebe">resize</a>(hint); }
<a name="l00192"></a><a class="code" href="classitk_1_1hash__set.html#18851fad5edd90be2f4ff3cc961eac5d">00192</a>   <a class="code" href="classitk_1_1hash__set.html#d2ec65c858ff53a1cf1b08611c00a948">size_type</a> <a class="code" href="classitk_1_1hash__set.html#18851fad5edd90be2f4ff3cc961eac5d">bucket_count</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> rep.<a class="code" href="classitk_1_1hashtable.html#05913daab175ec271753c0134762c7c7">bucket_count</a>(); }
<a name="l00193"></a><a class="code" href="classitk_1_1hash__set.html#cf4a8be3e7ca54b1b1de0c4313b0c183">00193</a>   <a class="code" href="classitk_1_1hash__set.html#d2ec65c858ff53a1cf1b08611c00a948">size_type</a> <a class="code" href="classitk_1_1hash__set.html#cf4a8be3e7ca54b1b1de0c4313b0c183">max_bucket_count</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> rep.<a class="code" href="classitk_1_1hashtable.html#573ec83655435defacce1c4c39637e18">max_bucket_count</a>(); }
<a name="l00194"></a><a class="code" href="classitk_1_1hash__set.html#e0056442d7a2ec08fcb0b08a529142a4">00194</a>   <a class="code" href="classitk_1_1hash__set.html#d2ec65c858ff53a1cf1b08611c00a948">size_type</a> <a class="code" href="classitk_1_1hash__set.html#e0056442d7a2ec08fcb0b08a529142a4">elems_in_bucket</a>(<a class="code" href="classitk_1_1hash__set.html#d2ec65c858ff53a1cf1b08611c00a948">size_type</a> n)<span class="keyword"> const</span>
<a name="l00195"></a>00195 <span class="keyword">    </span>{ <span class="keywordflow">return</span> rep.<a class="code" href="classitk_1_1hashtable.html#57b0c1ab29503a23eb0d38cc4447e67b">elems_in_bucket</a>(n); }
<a name="l00196"></a>00196 };
<a name="l00197"></a>00197 
<a name="l00198"></a>00198 
<a name="l00199"></a>00199 <span class="keyword">template</span> &lt;<span class="keyword">class</span> Value, VCL_DFL_TMPL_PARAM_STLDECL(HashFcn,hash&lt;Value&gt;),
<a name="l00200"></a>00200           VCL_DFL_TMPL_PARAM_STLDECL(EqualKey,std::equal_to&lt;Value&gt;),
<a name="l00201"></a>00201           VCL_DFL_TYPE_PARAM_STLDECL(Alloc,std::allocator&lt;<span class="keywordtype">char</span>&gt; ) &gt;
<a name="l00202"></a><a class="code" href="classitk_1_1hash__multiset.html">00202</a> <span class="keyword">class </span><a class="code" href="classitk_1_1hash__multiset.html">hash_multiset</a>
<a name="l00203"></a>00203 {
<a name="l00204"></a>00204 <span class="keyword">private</span>:
<a name="l00205"></a>00205   <span class="keyword">typedef</span> <a class="code" href="classitk_1_1hashtable.html">hashtable&lt;Value, Value, HashFcn, std::identity&lt;Value&gt;</a>, 
<a name="l00206"></a>00206       EqualKey, Alloc&gt; <a class="code" href="classitk_1_1hashtable.html">ht</a>;
<a name="l00207"></a>00207   <span class="keyword">typedef</span> <a class="code" href="classitk_1_1hash__multiset.html">hash_multiset&lt;Value, HashFcn, EqualKey, Alloc&gt;</a> <span class="keyword">self</span>;
<a name="l00208"></a>00208 <span class="keyword">public</span>:
<a name="l00209"></a><a class="code" href="classitk_1_1hash__multiset.html#0924fdc7c8db16ddbbde71e4096981a6">00209</a>   <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="classitk_1_1hashtable.html#ce7f39999dfd0460fafc792cc0fcf31b">ht::key_type</a> <a class="code" href="classitk_1_1hash__multiset.html#0924fdc7c8db16ddbbde71e4096981a6">key_type</a>;
<a name="l00210"></a><a class="code" href="classitk_1_1hash__multiset.html#cd34a5fc4ef45832cdcb0191365bba54">00210</a>   <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="classitk_1_1hashtable.html#9b4944269bde048047a0379fb26b1f26">ht::value_type</a> <a class="code" href="classitk_1_1hash__multiset.html#cd34a5fc4ef45832cdcb0191365bba54">value_type</a>;
<a name="l00211"></a><a class="code" href="classitk_1_1hash__multiset.html#e431f0060d6ad66b63971688b2a118d9">00211</a>   <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="classitk_1_1hashtable.html#9573613f935976ffd4446f4fa6037d34">ht::hasher</a> <a class="code" href="classitk_1_1hash__multiset.html#e431f0060d6ad66b63971688b2a118d9">hasher</a>;
<a name="l00212"></a><a class="code" href="classitk_1_1hash__multiset.html#825fd0051fa47e362bd6cfc645b56f61">00212</a>   <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="classitk_1_1hashtable.html#7d43a00a83b7a980ef685ec55aabeccc">ht::key_equal</a> <a class="code" href="classitk_1_1hash__multiset.html#825fd0051fa47e362bd6cfc645b56f61">key_equal</a>;
<a name="l00213"></a>00213 
<a name="l00214"></a><a class="code" href="classitk_1_1hash__multiset.html#8a96efc17945ae98dd85f4bd81d6ac87">00214</a>   <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="classitk_1_1hashtable.html#24390ecc706db752bc17b789feded607">ht::size_type</a> <a class="code" href="classitk_1_1hash__multiset.html#8a96efc17945ae98dd85f4bd81d6ac87">size_type</a>;
<a name="l00215"></a><a class="code" href="classitk_1_1hash__multiset.html#37edb8d05d0f9fab44ccde1a6749a4d1">00215</a>   <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="classitk_1_1hashtable.html#4823f0a7e1138fe9afc54b858ee8f9b9">ht::difference_type</a> <a class="code" href="classitk_1_1hash__multiset.html#37edb8d05d0f9fab44ccde1a6749a4d1">difference_type</a>;
<a name="l00216"></a><a class="code" href="classitk_1_1hash__multiset.html#690b3db39fb6b6930c21f9795043d203">00216</a>   <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="classitk_1_1hashtable.html#77fe29fafb247e4d756f5e749e55ba31">ht::const_pointer</a> <a class="code" href="classitk_1_1hash__multiset.html#690b3db39fb6b6930c21f9795043d203">pointer</a>;
<a name="l00217"></a><a class="code" href="classitk_1_1hash__multiset.html#e46fb861ea5743e821d59a04ddd7a1d9">00217</a>   <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="classitk_1_1hashtable.html#77fe29fafb247e4d756f5e749e55ba31">ht::const_pointer</a> <a class="code" href="classitk_1_1hash__multiset.html#e46fb861ea5743e821d59a04ddd7a1d9">const_pointer</a>;
<a name="l00218"></a><a class="code" href="classitk_1_1hash__multiset.html#d72012a1548b5cbac7ad575b6642dcba">00218</a>   <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="classitk_1_1hashtable.html#79422138a06bd1c6687779e27e236ece">ht::const_reference</a> <a class="code" href="classitk_1_1hash__multiset.html#d72012a1548b5cbac7ad575b6642dcba">reference</a>;
<a name="l00219"></a><a class="code" href="classitk_1_1hash__multiset.html#9134d82a015272b206f6a4baaedec75a">00219</a>   <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="classitk_1_1hashtable.html#79422138a06bd1c6687779e27e236ece">ht::const_reference</a> <a class="code" href="classitk_1_1hash__multiset.html#9134d82a015272b206f6a4baaedec75a">const_reference</a>;
<a name="l00220"></a>00220 
<a name="l00221"></a><a class="code" href="classitk_1_1hash__multiset.html#9af36ef3c0f0be8eff68942185b37ca0">00221</a>   <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="structitk_1_1hashtable__const__iterator.html">ht::const_iterator</a> <a class="code" href="structitk_1_1hashtable__const__iterator.html">const_iterator</a>;
<a name="l00222"></a>00222   <span class="comment">// SunPro bug</span>
<a name="l00223"></a><a class="code" href="classitk_1_1hash__multiset.html#c62484a892dec0ddf261142cc6f9bdfd">00223</a>   <span class="keyword">typedef</span> <a class="code" href="structitk_1_1hashtable__const__iterator.html">const_iterator</a> <a class="code" href="structitk_1_1hashtable__const__iterator.html">iterator</a>;
<a name="l00224"></a>00224 
<a name="l00225"></a><a class="code" href="classitk_1_1hash__multiset.html#da47dc5f3c8403e8beec990614a1ae96">00225</a>   <a class="code" href="classitk_1_1hash__multiset.html#e431f0060d6ad66b63971688b2a118d9">hasher</a> <a class="code" href="classitk_1_1hash__multiset.html#da47dc5f3c8403e8beec990614a1ae96">hash_funct</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> rep.<a class="code" href="classitk_1_1hashtable.html#1d2c56a89e24be3b4b03bfd6f04793e2">hash_funct</a>(); }
<a name="l00226"></a><a class="code" href="classitk_1_1hash__multiset.html#f265334b402cb49c2a53638de1c6db64">00226</a>   <a class="code" href="classitk_1_1hash__multiset.html#825fd0051fa47e362bd6cfc645b56f61">key_equal</a> <a class="code" href="classitk_1_1hash__multiset.html#f265334b402cb49c2a53638de1c6db64">key_eq</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> rep.<a class="code" href="classitk_1_1hashtable.html#3ac1ff41a505f4fc4bd2927bcb7e0ef4">key_eq</a>(); }
<a name="l00227"></a>00227 <span class="keyword">private</span>:
<a name="l00228"></a>00228   ht rep;
<a name="l00229"></a>00229 
<a name="l00230"></a>00230 <span class="keyword">public</span>:
<a name="l00231"></a><a class="code" href="classitk_1_1hash__multiset.html#22d2858d05d8a5441a6229506136296e">00231</a>   <a class="code" href="classitk_1_1hash__multiset.html#22d2858d05d8a5441a6229506136296e">hash_multiset</a>() : rep(100, <a class="code" href="classitk_1_1hash__multiset.html#e431f0060d6ad66b63971688b2a118d9">hasher</a>(), <a class="code" href="classitk_1_1hash__multiset.html#825fd0051fa47e362bd6cfc645b56f61">key_equal</a>()) {}
<a name="l00232"></a><a class="code" href="classitk_1_1hash__multiset.html#865cd4e4daa5197d6dc372e372185719">00232</a>   <a class="code" href="classitk_1_1hash__multiset.html#865cd4e4daa5197d6dc372e372185719">hash_multiset</a>(<a class="code" href="classitk_1_1hash__multiset.html#8a96efc17945ae98dd85f4bd81d6ac87">size_type</a> n) : rep(n, <a class="code" href="classitk_1_1hash__multiset.html#e431f0060d6ad66b63971688b2a118d9">hasher</a>(), <a class="code" href="classitk_1_1hash__multiset.html#825fd0051fa47e362bd6cfc645b56f61">key_equal</a>()) {}
<a name="l00233"></a><a class="code" href="classitk_1_1hash__multiset.html#b1b5af242fed796bb04b1c7276bd3afd">00233</a>   <a class="code" href="classitk_1_1hash__multiset.html#b1b5af242fed796bb04b1c7276bd3afd">hash_multiset</a>(<a class="code" href="classitk_1_1hash__multiset.html#8a96efc17945ae98dd85f4bd81d6ac87">size_type</a> n, <span class="keyword">const</span> <a class="code" href="classitk_1_1hash__multiset.html#e431f0060d6ad66b63971688b2a118d9">hasher</a>&amp; hf) : rep(n, hf, <a class="code" href="classitk_1_1hash__multiset.html#825fd0051fa47e362bd6cfc645b56f61">key_equal</a>()) {}
<a name="l00234"></a><a class="code" href="classitk_1_1hash__multiset.html#804d5273dddddf7c72a9e3dead6740b9">00234</a>   <a class="code" href="classitk_1_1hash__multiset.html#22d2858d05d8a5441a6229506136296e">hash_multiset</a>(<a class="code" href="classitk_1_1hash__multiset.html#8a96efc17945ae98dd85f4bd81d6ac87">size_type</a> n, <span class="keyword">const</span> <a class="code" href="classitk_1_1hash__multiset.html#e431f0060d6ad66b63971688b2a118d9">hasher</a>&amp; hf, <span class="keyword">const</span> <a class="code" href="classitk_1_1hash__multiset.html#825fd0051fa47e362bd6cfc645b56f61">key_equal</a>&amp; eql)
<a name="l00235"></a>00235     : rep(n, hf, eql) {}
<a name="l00236"></a>00236 
<a name="l00237"></a><a class="code" href="classitk_1_1hash__multiset.html#6549ce991a85838de7b5a08c1352ab2d">00237</a>   <a class="code" href="classitk_1_1hash__multiset.html#22d2858d05d8a5441a6229506136296e">hash_multiset</a>(<span class="keyword">const</span> <a class="code" href="classitk_1_1hash__multiset.html#cd34a5fc4ef45832cdcb0191365bba54">value_type</a>* f, <span class="keyword">const</span> <a class="code" href="classitk_1_1hash__multiset.html#cd34a5fc4ef45832cdcb0191365bba54">value_type</a>* l)
<a name="l00238"></a>00238     : rep(100, <a class="code" href="classitk_1_1hash__multiset.html#e431f0060d6ad66b63971688b2a118d9">hasher</a>(), <a class="code" href="classitk_1_1hash__multiset.html#825fd0051fa47e362bd6cfc645b56f61">key_equal</a>()) { rep.<a class="code" href="classitk_1_1hashtable.html#d72fdc55cb8a88a73e4afad5a24a1fe8">insert_equal</a>(f, l); }
<a name="l00239"></a><a class="code" href="classitk_1_1hash__multiset.html#38fcdc612f7d7d1c5b4905c15dd7087a">00239</a>   <a class="code" href="classitk_1_1hash__multiset.html#22d2858d05d8a5441a6229506136296e">hash_multiset</a>(<span class="keyword">const</span> <a class="code" href="classitk_1_1hash__multiset.html#cd34a5fc4ef45832cdcb0191365bba54">value_type</a>* f, <span class="keyword">const</span> <a class="code" href="classitk_1_1hash__multiset.html#cd34a5fc4ef45832cdcb0191365bba54">value_type</a>* l, <a class="code" href="classitk_1_1hash__multiset.html#8a96efc17945ae98dd85f4bd81d6ac87">size_type</a> n)
<a name="l00240"></a>00240     : rep(n, <a class="code" href="classitk_1_1hash__multiset.html#e431f0060d6ad66b63971688b2a118d9">hasher</a>(), <a class="code" href="classitk_1_1hash__multiset.html#825fd0051fa47e362bd6cfc645b56f61">key_equal</a>()) { rep.<a class="code" href="classitk_1_1hashtable.html#d72fdc55cb8a88a73e4afad5a24a1fe8">insert_equal</a>(f, l); }
<a name="l00241"></a><a class="code" href="classitk_1_1hash__multiset.html#72dcc22a9c4e09fafb4aff822e538900">00241</a>   <a class="code" href="classitk_1_1hash__multiset.html#22d2858d05d8a5441a6229506136296e">hash_multiset</a>(<span class="keyword">const</span> <a class="code" href="classitk_1_1hash__multiset.html#cd34a5fc4ef45832cdcb0191365bba54">value_type</a>* f, <span class="keyword">const</span> <a class="code" href="classitk_1_1hash__multiset.html#cd34a5fc4ef45832cdcb0191365bba54">value_type</a>* l, <a class="code" href="classitk_1_1hash__multiset.html#8a96efc17945ae98dd85f4bd81d6ac87">size_type</a> n,
<a name="l00242"></a>00242            <span class="keyword">const</span> <a class="code" href="classitk_1_1hash__multiset.html#e431f0060d6ad66b63971688b2a118d9">hasher</a>&amp; hf)
<a name="l00243"></a>00243     : rep(n, hf, <a class="code" href="classitk_1_1hash__multiset.html#825fd0051fa47e362bd6cfc645b56f61">key_equal</a>()) { rep.<a class="code" href="classitk_1_1hashtable.html#d72fdc55cb8a88a73e4afad5a24a1fe8">insert_equal</a>(f, l); }
<a name="l00244"></a><a class="code" href="classitk_1_1hash__multiset.html#3f2466e7b0acc1183441a64dd39ed8ea">00244</a>   <a class="code" href="classitk_1_1hash__multiset.html#22d2858d05d8a5441a6229506136296e">hash_multiset</a>(<span class="keyword">const</span> <a class="code" href="classitk_1_1hash__multiset.html#cd34a5fc4ef45832cdcb0191365bba54">value_type</a>* f, <span class="keyword">const</span> <a class="code" href="classitk_1_1hash__multiset.html#cd34a5fc4ef45832cdcb0191365bba54">value_type</a>* l, <a class="code" href="classitk_1_1hash__multiset.html#8a96efc17945ae98dd85f4bd81d6ac87">size_type</a> n,
<a name="l00245"></a>00245            <span class="keyword">const</span> <a class="code" href="classitk_1_1hash__multiset.html#e431f0060d6ad66b63971688b2a118d9">hasher</a>&amp; hf, <span class="keyword">const</span> <a class="code" href="classitk_1_1hash__multiset.html#825fd0051fa47e362bd6cfc645b56f61">key_equal</a>&amp; eql)
<a name="l00246"></a>00246     : rep(n, hf, eql) { rep.<a class="code" href="classitk_1_1hashtable.html#d72fdc55cb8a88a73e4afad5a24a1fe8">insert_equal</a>(f, l); }
<a name="l00247"></a>00247 
<a name="l00248"></a><a class="code" href="classitk_1_1hash__multiset.html#3d088ac2ef05ed42d036ed931d68dd81">00248</a>   <a class="code" href="classitk_1_1hash__multiset.html#22d2858d05d8a5441a6229506136296e">hash_multiset</a>(<a class="code" href="structitk_1_1hashtable__const__iterator.html">const_iterator</a> f, <a class="code" href="structitk_1_1hashtable__const__iterator.html">const_iterator</a> l)
<a name="l00249"></a>00249     : rep(100, <a class="code" href="classitk_1_1hash__multiset.html#e431f0060d6ad66b63971688b2a118d9">hasher</a>(), <a class="code" href="classitk_1_1hash__multiset.html#825fd0051fa47e362bd6cfc645b56f61">key_equal</a>()) { rep.<a class="code" href="classitk_1_1hashtable.html#d72fdc55cb8a88a73e4afad5a24a1fe8">insert_equal</a>(f, l); }
<a name="l00250"></a><a class="code" href="classitk_1_1hash__multiset.html#3b797815157e25a36e7170b969b8cfad">00250</a>   <a class="code" href="classitk_1_1hash__multiset.html#22d2858d05d8a5441a6229506136296e">hash_multiset</a>(<a class="code" href="structitk_1_1hashtable__const__iterator.html">const_iterator</a> f, <a class="code" href="structitk_1_1hashtable__const__iterator.html">const_iterator</a> l, <a class="code" href="classitk_1_1hash__multiset.html#8a96efc17945ae98dd85f4bd81d6ac87">size_type</a> n)
<a name="l00251"></a>00251     : rep(n, <a class="code" href="classitk_1_1hash__multiset.html#e431f0060d6ad66b63971688b2a118d9">hasher</a>(), <a class="code" href="classitk_1_1hash__multiset.html#825fd0051fa47e362bd6cfc645b56f61">key_equal</a>()) { rep.<a class="code" href="classitk_1_1hashtable.html#d72fdc55cb8a88a73e4afad5a24a1fe8">insert_equal</a>(f, l); }
<a name="l00252"></a><a class="code" href="classitk_1_1hash__multiset.html#106073a5ba2f132190f56a6f804dc918">00252</a>   <a class="code" href="classitk_1_1hash__multiset.html#22d2858d05d8a5441a6229506136296e">hash_multiset</a>(<a class="code" href="structitk_1_1hashtable__const__iterator.html">const_iterator</a> f, <a class="code" href="structitk_1_1hashtable__const__iterator.html">const_iterator</a> l, <a class="code" href="classitk_1_1hash__multiset.html#8a96efc17945ae98dd85f4bd81d6ac87">size_type</a> n,
<a name="l00253"></a>00253            <span class="keyword">const</span> <a class="code" href="classitk_1_1hash__multiset.html#e431f0060d6ad66b63971688b2a118d9">hasher</a>&amp; hf)
<a name="l00254"></a>00254     : rep(n, hf, <a class="code" href="classitk_1_1hash__multiset.html#825fd0051fa47e362bd6cfc645b56f61">key_equal</a>()) { rep.<a class="code" href="classitk_1_1hashtable.html#d72fdc55cb8a88a73e4afad5a24a1fe8">insert_equal</a>(f, l); }
<a name="l00255"></a><a class="code" href="classitk_1_1hash__multiset.html#9a40055227199f86bfbbfbf961e49749">00255</a>   <a class="code" href="classitk_1_1hash__multiset.html#22d2858d05d8a5441a6229506136296e">hash_multiset</a>(<a class="code" href="structitk_1_1hashtable__const__iterator.html">const_iterator</a> f, <a class="code" href="structitk_1_1hashtable__const__iterator.html">const_iterator</a> l, <a class="code" href="classitk_1_1hash__multiset.html#8a96efc17945ae98dd85f4bd81d6ac87">size_type</a> n,
<a name="l00256"></a>00256            <span class="keyword">const</span> <a class="code" href="classitk_1_1hash__multiset.html#e431f0060d6ad66b63971688b2a118d9">hasher</a>&amp; hf, <span class="keyword">const</span> <a class="code" href="classitk_1_1hash__multiset.html#825fd0051fa47e362bd6cfc645b56f61">key_equal</a>&amp; eql)
<a name="l00257"></a>00257     : rep(n, hf, eql) { rep.<a class="code" href="classitk_1_1hashtable.html#d72fdc55cb8a88a73e4afad5a24a1fe8">insert_equal</a>(f, l); }
<a name="l00258"></a>00258 
<a name="l00259"></a>00259 <span class="keyword">public</span>:
<a name="l00260"></a><a class="code" href="classitk_1_1hash__multiset.html#006f0dc47707ab20af0f1fbbf843e51c">00260</a>   <a class="code" href="classitk_1_1hash__multiset.html#8a96efc17945ae98dd85f4bd81d6ac87">size_type</a> <a class="code" href="classitk_1_1hash__multiset.html#006f0dc47707ab20af0f1fbbf843e51c">size</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> rep.<a class="code" href="classitk_1_1hashtable.html#1099e731a42e664826073e0af53072d3">size</a>(); }
<a name="l00261"></a><a class="code" href="classitk_1_1hash__multiset.html#fcc96645f530c6487b4fc7bb2e8bec1f">00261</a>   <a class="code" href="classitk_1_1hash__multiset.html#8a96efc17945ae98dd85f4bd81d6ac87">size_type</a> <a class="code" href="classitk_1_1hash__multiset.html#fcc96645f530c6487b4fc7bb2e8bec1f">max_size</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> rep.<a class="code" href="classitk_1_1hashtable.html#1eb088b174e2efd1935c67fafb94d8c1">max_size</a>(); }
<a name="l00262"></a><a class="code" href="classitk_1_1hash__multiset.html#e9be911df2b20e35f116eed9fa558154">00262</a>   <span class="keywordtype">bool</span> <a class="code" href="classitk_1_1hash__multiset.html#e9be911df2b20e35f116eed9fa558154">empty</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> rep.<a class="code" href="classitk_1_1hashtable.html#b5ee85ee90fb247a287b91ff93c8a5d0">empty</a>(); }
<a name="l00263"></a><a class="code" href="classitk_1_1hash__multiset.html#071d4cba1cc3be53005c26548b41f543">00263</a>   <span class="keywordtype">void</span> <a class="code" href="classitk_1_1hash__multiset.html#071d4cba1cc3be53005c26548b41f543">swap</a>(<span class="keyword">self</span>&amp; hs) { rep.<a class="code" href="classitk_1_1hashtable.html#78e86996d21870444c69be2f971f0e52">swap</a>(hs.rep); }
<a name="l00264"></a>00264 
<a name="l00265"></a>00265   <span class="keyword">friend</span> <span class="keywordtype">bool</span> operator==ITK_FRIEND_TEMPLATE_FUNCTION_ARGUMENT(<span class="keyword">self</span>)(<span class="keyword">const</span> <span class="keyword">self</span> &amp;, <span class="keyword">const</span> <span class="keyword">self</span> &amp;);
<a name="l00266"></a>00266 
<a name="l00267"></a><a class="code" href="classitk_1_1hash__multiset.html#8eee1a83c71d5a4b13249ee93bf1f80b">00267</a>   <a class="code" href="structitk_1_1hashtable__const__iterator.html">iterator</a> <a class="code" href="classitk_1_1hash__multiset.html#8eee1a83c71d5a4b13249ee93bf1f80b">begin</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> rep.<a class="code" href="classitk_1_1hashtable.html#58bf22f83b683a429d29c639ba648fb0">begin</a>(); }
<a name="l00268"></a><a class="code" href="classitk_1_1hash__multiset.html#c74d5058c07e8a23526aad885bc79e01">00268</a>   <a class="code" href="structitk_1_1hashtable__const__iterator.html">iterator</a> <a class="code" href="classitk_1_1hash__multiset.html#c74d5058c07e8a23526aad885bc79e01">end</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> rep.<a class="code" href="classitk_1_1hashtable.html#b94a445bec49543c2357c33e99436677">end</a>(); }
<a name="l00269"></a>00269 
<a name="l00270"></a>00270 <span class="keyword">public</span>:
<a name="l00271"></a><a class="code" href="classitk_1_1hash__multiset.html#49e10849e7dd01ff7ae099aa0e3324f0">00271</a>   <a class="code" href="structitk_1_1hashtable__const__iterator.html">iterator</a> <a class="code" href="classitk_1_1hash__multiset.html#49e10849e7dd01ff7ae099aa0e3324f0">insert</a>(<span class="keyword">const</span> <a class="code" href="classitk_1_1hash__multiset.html#cd34a5fc4ef45832cdcb0191365bba54">value_type</a>&amp; obj) { <span class="keywordflow">return</span> rep.<a class="code" href="classitk_1_1hashtable.html#d72fdc55cb8a88a73e4afad5a24a1fe8">insert_equal</a>(obj); }
<a name="l00272"></a><a class="code" href="classitk_1_1hash__multiset.html#205b4b4e5ee3a6c63b2317226dda677b">00272</a>   <span class="keywordtype">void</span> <a class="code" href="classitk_1_1hash__multiset.html#205b4b4e5ee3a6c63b2317226dda677b">insert</a>(<span class="keyword">const</span> <a class="code" href="classitk_1_1hash__multiset.html#cd34a5fc4ef45832cdcb0191365bba54">value_type</a>* f, <span class="keyword">const</span> <a class="code" href="classitk_1_1hash__multiset.html#cd34a5fc4ef45832cdcb0191365bba54">value_type</a>* l) { rep.<a class="code" href="classitk_1_1hashtable.html#d72fdc55cb8a88a73e4afad5a24a1fe8">insert_equal</a>(f,l); }
<a name="l00273"></a><a class="code" href="classitk_1_1hash__multiset.html#fe09352316dc4f44e4fcbfb3a920f937">00273</a>   <span class="keywordtype">void</span> <a class="code" href="classitk_1_1hash__multiset.html#fe09352316dc4f44e4fcbfb3a920f937">insert</a>(<a class="code" href="structitk_1_1hashtable__const__iterator.html">const_iterator</a> f, <a class="code" href="structitk_1_1hashtable__const__iterator.html">const_iterator</a> l) { rep.<a class="code" href="classitk_1_1hashtable.html#d72fdc55cb8a88a73e4afad5a24a1fe8">insert_equal</a>(f, l); }
<a name="l00274"></a><a class="code" href="classitk_1_1hash__multiset.html#541bf43426743a04262ec96fe3d45d39">00274</a>   <a class="code" href="structitk_1_1hashtable__const__iterator.html">iterator</a> <a class="code" href="classitk_1_1hash__multiset.html#541bf43426743a04262ec96fe3d45d39">insert_noresize</a>(<span class="keyword">const</span> <a class="code" href="classitk_1_1hash__multiset.html#cd34a5fc4ef45832cdcb0191365bba54">value_type</a>&amp; obj)
<a name="l00275"></a>00275     { <span class="keywordflow">return</span> rep.<a class="code" href="classitk_1_1hashtable.html#5507dd5bd99ca558794ed3babcbacafb">insert_equal_noresize</a>(obj); }
<a name="l00276"></a>00276 
<a name="l00277"></a><a class="code" href="classitk_1_1hash__multiset.html#5f6f33f5ad19f5f09ad58f179f5e6a6b">00277</a>   <a class="code" href="structitk_1_1hashtable__const__iterator.html">iterator</a> <a class="code" href="classitk_1_1hash__multiset.html#5f6f33f5ad19f5f09ad58f179f5e6a6b">find</a>(<span class="keyword">const</span> <a class="code" href="classitk_1_1hash__multiset.html#0924fdc7c8db16ddbbde71e4096981a6">key_type</a>&amp; key)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> rep.<a class="code" href="classitk_1_1hashtable.html#de9a7a756cb3ab27dd7d9797b9a3958c">find</a>(key); }
<a name="l00278"></a>00278 
<a name="l00279"></a><a class="code" href="classitk_1_1hash__multiset.html#d974fb93591f35e50ed2a7b703b9e681">00279</a>   <a class="code" href="classitk_1_1hash__multiset.html#8a96efc17945ae98dd85f4bd81d6ac87">size_type</a> <a class="code" href="classitk_1_1hash__multiset.html#d974fb93591f35e50ed2a7b703b9e681">count</a>(<span class="keyword">const</span> <a class="code" href="classitk_1_1hash__multiset.html#0924fdc7c8db16ddbbde71e4096981a6">key_type</a>&amp; key)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> rep.<a class="code" href="classitk_1_1hashtable.html#bfce65fbba7b7aa67653925aebe2dac4">count</a>(key); }
<a name="l00280"></a>00280   
<a name="l00281"></a><a class="code" href="classitk_1_1hash__multiset.html#27b3fb863843a641c0cd6767d2a6336b">00281</a>   std::pair&lt;iterator, iterator&gt; <a class="code" href="classitk_1_1hash__multiset.html#27b3fb863843a641c0cd6767d2a6336b">equal_range</a>(<span class="keyword">const</span> <a class="code" href="classitk_1_1hash__multiset.html#0924fdc7c8db16ddbbde71e4096981a6">key_type</a>&amp; key)<span class="keyword"> const</span>
<a name="l00282"></a>00282 <span class="keyword">    </span>{ <span class="keywordflow">return</span> rep.<a class="code" href="classitk_1_1hashtable.html#9ab88d24837423d2913890c7e0d0596c">equal_range</a>(key); }
<a name="l00283"></a>00283 
<a name="l00284"></a><a class="code" href="classitk_1_1hash__multiset.html#4a79abccd67f21a52db596475ddf8e0b">00284</a>   <a class="code" href="classitk_1_1hash__multiset.html#8a96efc17945ae98dd85f4bd81d6ac87">size_type</a> <a class="code" href="classitk_1_1hash__multiset.html#4a79abccd67f21a52db596475ddf8e0b">erase</a>(<span class="keyword">const</span> <a class="code" href="classitk_1_1hash__multiset.html#0924fdc7c8db16ddbbde71e4096981a6">key_type</a>&amp; key) {<span class="keywordflow">return</span> rep.<a class="code" href="classitk_1_1hashtable.html#2877156f7bd16ed9490819eeb78314eb">erase</a>(key); }
<a name="l00285"></a><a class="code" href="classitk_1_1hash__multiset.html#f02368355be075f2df329bebd2a116f0">00285</a>   <span class="keywordtype">void</span> <a class="code" href="classitk_1_1hash__multiset.html#f02368355be075f2df329bebd2a116f0">erase</a>(<a class="code" href="structitk_1_1hashtable__const__iterator.html">iterator</a> it) { rep.<a class="code" href="classitk_1_1hashtable.html#2877156f7bd16ed9490819eeb78314eb">erase</a>(it); }
<a name="l00286"></a><a class="code" href="classitk_1_1hash__multiset.html#fc739ae1bda4ab918889185b4b502066">00286</a>   <span class="keywordtype">void</span> <a class="code" href="classitk_1_1hash__multiset.html#fc739ae1bda4ab918889185b4b502066">erase</a>(<a class="code" href="structitk_1_1hashtable__const__iterator.html">iterator</a> f, <a class="code" href="structitk_1_1hashtable__const__iterator.html">iterator</a> l) { rep.<a class="code" href="classitk_1_1hashtable.html#2877156f7bd16ed9490819eeb78314eb">erase</a>(f, l); }
<a name="l00287"></a><a class="code" href="classitk_1_1hash__multiset.html#251d6ac75f184914dd30cded3c394c1e">00287</a>   <span class="keywordtype">void</span> <a class="code" href="classitk_1_1hash__multiset.html#251d6ac75f184914dd30cded3c394c1e">clear</a>() { rep.<a class="code" href="classitk_1_1hashtable.html#8277af2e2c3a55380bb0e6fee17942ca">clear</a>(); }
<a name="l00288"></a>00288 
<a name="l00289"></a>00289 <span class="keyword">public</span>:
<a name="l00290"></a><a class="code" href="classitk_1_1hash__multiset.html#7d0be1f570fe24d5c60526d465befdab">00290</a>   <span class="keywordtype">void</span> <a class="code" href="classitk_1_1hash__multiset.html#7d0be1f570fe24d5c60526d465befdab">resize</a>(<a class="code" href="classitk_1_1hash__multiset.html#8a96efc17945ae98dd85f4bd81d6ac87">size_type</a> hint) { rep.<a class="code" href="classitk_1_1hashtable.html#f40249391498b87b6ee4765a034d3ebe">resize</a>(hint); }
<a name="l00291"></a><a class="code" href="classitk_1_1hash__multiset.html#1485a86b29840c0543cc37d87a68fc1a">00291</a>   <a class="code" href="classitk_1_1hash__multiset.html#8a96efc17945ae98dd85f4bd81d6ac87">size_type</a> <a class="code" href="classitk_1_1hash__multiset.html#1485a86b29840c0543cc37d87a68fc1a">bucket_count</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> rep.<a class="code" href="classitk_1_1hashtable.html#05913daab175ec271753c0134762c7c7">bucket_count</a>(); }
<a name="l00292"></a><a class="code" href="classitk_1_1hash__multiset.html#3b63b184bdc3367dfa9d99a61a92bf47">00292</a>   <a class="code" href="classitk_1_1hash__multiset.html#8a96efc17945ae98dd85f4bd81d6ac87">size_type</a> <a class="code" href="classitk_1_1hash__multiset.html#3b63b184bdc3367dfa9d99a61a92bf47">max_bucket_count</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> rep.<a class="code" href="classitk_1_1hashtable.html#573ec83655435defacce1c4c39637e18">max_bucket_count</a>(); }
<a name="l00293"></a><a class="code" href="classitk_1_1hash__multiset.html#7595a09eabfe452d118115da2315c4e2">00293</a>   <a class="code" href="classitk_1_1hash__multiset.html#8a96efc17945ae98dd85f4bd81d6ac87">size_type</a> <a class="code" href="classitk_1_1hash__multiset.html#7595a09eabfe452d118115da2315c4e2">elems_in_bucket</a>(<a class="code" href="classitk_1_1hash__multiset.html#8a96efc17945ae98dd85f4bd81d6ac87">size_type</a> n)<span class="keyword"> const</span>
<a name="l00294"></a>00294 <span class="keyword">    </span>{ <span class="keywordflow">return</span> rep.<a class="code" href="classitk_1_1hashtable.html#57b0c1ab29503a23eb0d38cc4447e67b">elems_in_bucket</a>(n); }
<a name="l00295"></a>00295 };
<a name="l00296"></a>00296 
<a name="l00297"></a>00297 
<a name="l00300"></a>00300 <span class="keyword">template</span> &lt;<span class="keyword">class</span> Value, <span class="keyword">class</span> HashFcn, <span class="keyword">class</span> EqualKey, <span class="keyword">class</span> Alloc&gt;
<a name="l00301"></a><a class="code" href="namespaceitk.html#7c1ea3d392f446a59422cb90908bc994">00301</a> <span class="keywordtype">bool</span> <a class="code" href="namespaceitk.html#e1c1b02c301187419478f5126c789a01">operator==</a>(<span class="keyword">const</span> <a class="code" href="classitk_1_1hash__set.html" title="Replacement for STL hash set because some systems do not support it, or support it...">hash_set&lt;Value, HashFcn, EqualKey, Alloc&gt;</a>&amp; hs1,
<a name="l00302"></a>00302                        <span class="keyword">const</span> <a class="code" href="classitk_1_1hash__set.html" title="Replacement for STL hash set because some systems do not support it, or support it...">hash_set&lt;Value, HashFcn, EqualKey, Alloc&gt;</a>&amp; hs2)
<a name="l00303"></a>00303 {
<a name="l00304"></a>00304   <span class="keywordflow">return</span> hs1.rep == hs2.rep;
<a name="l00305"></a>00305 }
<a name="l00306"></a>00306 
<a name="l00309"></a>00309 <span class="keyword">template</span> &lt;<span class="keyword">class</span> Value, <span class="keyword">class</span> HashFcn, <span class="keyword">class</span> EqualKey, <span class="keyword">class</span> Alloc&gt;
<a name="l00310"></a><a class="code" href="namespaceitk.html#fb5cd22b964eb69365ea5006827349b9">00310</a> <span class="keywordtype">bool</span> <a class="code" href="namespaceitk.html#e1c1b02c301187419478f5126c789a01">operator==</a>(<span class="keyword">const</span> <a class="code" href="classitk_1_1hash__multiset.html">hash_multiset&lt;Value, HashFcn, EqualKey, Alloc&gt;</a>&amp; hs1,
<a name="l00311"></a>00311                        <span class="keyword">const</span> <a class="code" href="classitk_1_1hash__multiset.html">hash_multiset&lt;Value, HashFcn, EqualKey, Alloc&gt;</a>&amp; hs2)
<a name="l00312"></a>00312 {
<a name="l00313"></a>00313   <span class="keywordflow">return</span> hs1.rep == hs2.rep;
<a name="l00314"></a>00314 }
<a name="l00315"></a>00315 
<a name="l00316"></a>00316 <span class="preprocessor"># if defined (__STL_CLASS_PARTIAL_SPECIALIZATION )</span>
<a name="l00317"></a>00317 <span class="preprocessor"></span><span class="keyword">template</span> &lt;<span class="keyword">class</span> Value, <span class="keyword">class</span> HashFcn, <span class="keyword">class</span> EqualKey, <span class="keyword">class</span> Alloc&gt;
<a name="l00318"></a>00318 <span class="keyword">inline</span> <span class="keywordtype">void</span> swap(hash_multiset&lt;Value, HashFcn, EqualKey, Alloc&gt;&amp; a,
<a name="l00319"></a>00319                  hash_multiset&lt;Value, HashFcn, EqualKey, Alloc&gt;&amp; b) { a.swap(b); }
<a name="l00320"></a>00320 <span class="keyword">template</span> &lt;<span class="keyword">class</span> Value, <span class="keyword">class</span> HashFcn, <span class="keyword">class</span> EqualKey, <span class="keyword">class</span> Alloc&gt;
<a name="l00321"></a>00321 <span class="keyword">inline</span> <span class="keywordtype">void</span> swap(hash_set&lt;Value, HashFcn, EqualKey, Alloc&gt;&amp; a,
<a name="l00322"></a>00322                  hash_set&lt;Value, HashFcn, EqualKey, Alloc&gt;&amp; b) { a.swap(b); }
<a name="l00323"></a>00323 <span class="preprocessor"># endif</span>
<a name="l00324"></a>00324 <span class="preprocessor"></span>
<a name="l00325"></a>00325 } <span class="comment">// end namespace itk</span>
<a name="l00326"></a>00326 
<a name="l00327"></a>00327 <span class="preprocessor">#endif</span>
<a name="l00328"></a>00328 <span class="preprocessor"></span><span class="preprocessor">#endif // itk_emulation_hash_set_h</span>
<a name="l00329"></a>00329 <span class="preprocessor"></span>
</pre></div></div>
<hr><address><small>
Generated at Thu May 7 22:04:10 2009 for ITK  by <a href="http://www.stack.nl/~dimitri/doxygen/index.html"> <img 
src="http://www.stack.nl/~dimitri/doxygen/doxygen.png" alt="doxygen"
align="middle" border=0 width=110 height=53>
</a> 1.5.9 written by <a href="mailto:dimitri@stack.nl">Dimitri van Heesch</a>,
 &copy;&nbsp;1997-2000</small></address>
</body>
</html>