24 #include <ktorrent_export.h>
36 template <
class Key,
class Data>
40 std::map<Key,Data*> pmap;
46 PtrMap(
bool autodel =
false) : autodel(autodel)
61 unsigned int count()
const {
return pmap.size();}
72 typedef typename std::map<Key,Data*>::iterator iterator;
73 typedef typename std::map<Key,Data*>::const_iterator const_iterator;
75 iterator begin() {
return pmap.begin();}
76 iterator end() {
return pmap.end();}
78 const_iterator begin()
const {
return pmap.begin();}
79 const_iterator end()
const {
return pmap.end();}
88 for (iterator i = pmap.begin();i != pmap.end();i++)
104 bool insert(
const Key & k,Data* d,
bool overwrite =
true)
106 iterator itr = pmap.find(k);
107 if (itr != pmap.end())
135 iterator i = pmap.find(k);
136 return (i == pmap.end()) ? 0 : i->second;
144 const Data*
find(
const Key & k)
const
146 const_iterator i = pmap.find(k);
147 return (i == pmap.end()) ? 0 : i->second;
157 const_iterator i = pmap.find(k);
158 return i != pmap.end();
169 iterator i = pmap.find(key);