6#include "GaudiKernel/MsgStream.h"
36 throw std::runtime_error (
"Attempt to modify const JetKeyDescriptor");
53 if ( createIfMissing )
61 catlist_t::const_iterator
64 if ( createIfMissing )
73 m_Stores->m_keyStore.push_back(std::move(kStore));
83 if ( iCat < m_ConstStores->m_keyStore.size() )
85 keystore_t::const_iterator fKey(std::find((
m_ConstStores->m_keyStore[iCat]).begin(),
89 if ( createIfMissing )
95 (
m_Stores->m_keyStore[iCat]).push_back(key);
97 return (
m_Stores->m_keyStore[iCat]).size()-1;
112 const key_t& key)
const
119 catlist_t::const_iterator
127 if ( iCat < m_ConstStores->m_keyStore.size() )
129 keystore_t::const_iterator fKey(std::find((
m_ConstStores->m_keyStore[iCat]).begin(),
151 msgStream <<
m_ConstStores->m_catStore[i] <<
" Number of keys: "
153 for (
size_t j=0;j<(
m_ConstStores->m_keyStore[i]).size();j++ )
155 msgStream <<
" index: " << j <<
" key <" << (
m_ConstStores->m_keyStore[i])[j]
166 catlist_t::const_iterator fCat(std::find(
m_ConstStores->m_catStore.begin(),
177const std::vector<JetKeyDescriptorInstance::key_t>&
182 catlist_t::const_iterator fCat(std::find(
m_ConstStores->m_catStore.begin(),
static const bool m_persistified
friend class JetKeyDescriptor
const JetKeyDescriptor * m_ConstStores
static const std::string m_notFound
std::vector< key_t > keystore_t
virtual ~JetKeyDescriptorInstance()
JetKeyDescriptor * m_Stores
JetKeyDescriptor * getKeyStore()
const std::vector< key_t > & getKeys(const category_t &cat) const
void createKeyStore() const
static JetKeyDescriptorInstance * instance()
size_t getIndex(const category_t &cat, const key_t &key, bool createIfMissing=true)
static const size_t m_invalid
JetKeyDescriptorInstance(bool create=true)
void printOut(MsgStream &msgStream) const
const key_t & getKey(const category_t &cat, size_t index) const
static const std::vector< key_t > m_invalidKeys
virtual ~JetKeyDescriptor()
friend class JetKeyDescriptorInstance
static const key_t ShapeCat
Index category for jet shapes.
static const key_t TagCat
Index category for jet tag info.
static const key_t InfoCat
Index category for general jet info.
JetKeyDescriptor::key_t key_t
static const key_t AssoCat
Index category for jet associations.