1 #ifndef ECALDETID_ECALCONTAINER_H 2 #define ECALDETID_ECALCONTAINER_H 15 template <
typename DetId,
typename T>
21 typedef typename std::vector<Item>
Items;
23 typedef typename std::vector<Item>::iterator
iterator;
32 void insert(std::pair<uint32_t, Item>
const&
a) { (*this)[a.first] = a.second; }
34 inline const Item&
item(
size_t hashid)
const {
return m_items[hashid]; }
44 return m_items[
id.hashedIndex()];
50 m_items.resize(DetId::kSizeForDenseIndexing);
70 return m_items[
id.hashedIndex()];
73 inline const_iterator
find(uint32_t rawId)
const {
77 return m_items.begin() + ib.hashedIndex();
82 inline const_iterator
end()
const {
return m_items.end(); }
90 #if !defined(__CINT__) && !defined(__MAKECINT__) && !defined(__REFLEX__) 93 static const Item s_dummy{};
105 #endif // ECALCONTAINER
const_iterator begin() const
const Item & item(size_t hashid) const
void setItems(const std::vector< Item > &items)
std::vector< Item >::iterator iterator
const Items & items() const
const_iterator end() const
std::vector< Item > m_items
std::vector< Item >::const_iterator const_iterator
const_iterator find(uint32_t rawId) const
Item & operator[](uint32_t rawId)
static const Item & dummy_item()
void checkAndResize(size_t priv_size)
Item const & operator[](uint32_t rawId) const
void insert(std::pair< uint32_t, Item > const &a)
bool isValidId(const DetId id) const
std::vector< Item > Items