1#ifndef __JTOOLS__JHASHSET__
2#define __JTOOLS__JHASHSET__
29 template<
class JElement_t,
class JEvaluator_t = JHashEvaluator>
43 typedef typename container_type::iterator
iterator;
87 JHashSet(
const JEvaluator_t& evaluator = JEvaluator_t()) :
101 const int ival = this->
getValue(element);
103 if (!this->
router.has(ival)) {
105 iterator p = container_type::insert(lower_bound(this->begin(), this->end(), element,
compare), element);
107 this->
router.put(ival, std::distance(this->begin(), p));
109 for (
iterator i = p; ++i != this->end(); ) {
110 this->
router.put(this->
getValue(*i), std::distance(this->begin(), i));
General purpose class for a hash collection of unique elements.
This name space includes all other name spaces (except KM3NETDAQ, KM3NET and ANTARES).