IMP
2.2.0
The Integrative Modeling Platform
IMP Mainpage
All IMP Modules
Related Pages
Modules
Namespaces
Classes
Files
Examples
Indexes
File List
File Members
base/set.h
Go to the documentation of this file.
1
/**
2
* \file IMP/base/set.h
3
* \brief Declare an efficient stl-compatible set.
4
*
5
* Copyright 2007-2014 IMP Inventors. All rights reserved.
6
*/
7
8
#ifndef IMPBASE_SET_H
9
#define IMPBASE_SET_H
10
11
#include <IMP/base/base_config.h>
12
#include <boost/version.hpp>
13
14
#include <boost/unordered_set.hpp>
15
#include "
hash.h
"
16
17
IMPBASE_DEPRECATED_HEADER(2.2,
18
"Use boost::unordered_set directly or"
19
" base/set_map_macros.h."
);
20
21
IMPBASE_BEGIN_NAMESPACE
22
/** This class chooses the best of STL compatible
23
non-ordered
24
set available. This will, in general, be a hash set
25
if it
26
is available or std::set if it is not.
27
*/
28
template
<
class
Key>
29
class
set
:
public
boost::unordered_set<Key> {
30
typedef
boost::unordered_set<Key> P;
31
32
public
:
33
set
() {}
34
template
<
class
It>
35
set
(It b, It e)
36
: P(b, e) {}
37
};
38
39
IMPBASE_END_NAMESPACE
40
41
#endif
/* IMPBASE_SET_H */
IMP::base::set
Definition:
base/set.h:29
hash.h
IO support.