57 MsgStream&
msg )
const
59 msg << MSG::DEBUG <<
"Loading Jet from persistent state... e = "<< pers->
m_momentum.
m_ene
67 msg << MSG::DEBUG <<
" after momCnv e=" << trans->
e() <<
endmsg;
80 if( !(pers)->m_shapeStore.empty() ){
81 if( momentNames.size() < (pers)->m_shapeStore.size() ) {}
84 for(
size_t i=0;i<(pers)->m_shapeStore.size();i++){
85 trans->
setMoment(momentNames[i], (pers)->m_shapeStore[i],
true);
89 const_cast<Jet_p4*
>(pers)->m_shapeStore.clear();
106 vector<const JetTagInfoBase *> *ptags =
108 if (ptags !=
nullptr) {
109 vector<const JetTagInfoBase*> &
tags (*ptags);
110 for (
unsigned int i = 0; i <
tags.size(); i++) {
130 trans->
m_assocStore =
new vector<const JetAssociationBase*> ();
131 vector<const JetAssociationBase *> *pass =
134 if (pass !=
nullptr) {
135 vector<const JetAssociationBase *> &
ass (*pass);
136 vector<const JetAssociationBase *> &store (*trans->
m_assocStore);
137 for (
unsigned int i = 0; i <
ass.size(); i++) {
163 unsigned int index =
ass[i]->keyIndex();
178 if (
index >= store.size()) {
179 store.resize(
index+1,
nullptr);
201 msg << MSG::DEBUG <<
"Loaded Jet from persistent state [OK]"
207 MsgStream&
msg )
const
227 vector<const JetTagInfoBase*> goodTagInfo;
228 const vector<const JetTagInfoBase*> &tagInfo(*(trans->
m_tagInfoStore));
229 for (
unsigned int i = 0; i < tagInfo.size(); i++) {
230 if (tagInfo[i] !=
nullptr) {
231 goodTagInfo.push_back(tagInfo[i]);
242 vector<const JetAssociationBase*> goodAssInfo;
243 const vector<const JetAssociationBase*> &assInfo(*trans->
m_assocStore);
245 for (
unsigned int i = 0; i < assInfo.size(); i++) {
246 if (assInfo[i] !=
nullptr) {
247 goodAssInfo.push_back(assInfo[i]);
263 msg << MSG::DEBUG <<
"Created persistent state of Jet [OK] e="<< pers->
m_momentum.
m_ene
NavigableCnv_p1< Navigable< INavigable4MomentumCollection, double > > NavigableCnv_t
static const NavigableCnv_t navCnv
static const P4ImplPxPyPzECnv_p1 momCnv
static const ParticleBaseCnv_p1 pbsCnv
This file contains the class definition for the NavigableCnv_p1 class.
virtual void persToTrans(const Jet_p4 *persObj, Jet *transObj, MsgStream &msg) const override
Method creating the transient representation of Jet from its persistent representation Jet_p4.
std::atomic< int > m_nIndexTest
JetCnv_p4()
Default constructor:
TagInfoCollectionCnv m_taginfoCnv
std::atomic< bool > m_badIndex
virtual void transToPers(const Jet *transObj, Jet_p4 *persObj, MsgStream &msg) const override
Method creating the persistent representation Jet_p4 from its transient representation Jet.
TagAssCollectionCnv m_tagAssCnv
Theses classes implement a mapping between string and index used by jets.
const std::vector< key_t > & getKeys(const category_t &cat) const
static JetKeyDescriptorInstance * instance()
P4PxPyPzE_p1 m_momentum
the 4-mom part
Navigable_p1< uint32_t, double > m_nav
the navigable part
char m_ratioPy
ratio for uncalibrated p_x
char m_ratioPx
ratio for uncalibrated E
ParticleBase_p1 m_partBase
The Particle base stuff – since Jet now inherrits from particle base.
char m_ratioPz
ratio for uncalibrated p_y
std::vector< TPObjRef > m_associations
JetAssociationBase objects.
std::vector< TPObjRef > m_tagJetInfo
JetTagInfoBase objects.
void addInfo(const TAGINFO *tag)
Add tag info object.
tagstore_t * m_tagInfoStore
Tag info store.
void setAssociation(const T *pAssoc, bool useLink=false)
Set association object.
size_t m_jetAuthor
Jet author store.
assostore_t * m_assocStore
key descriptor for all jet stores
void setMoment(const mkey_t &shapeName, shape_t shape, bool addIfMissing=true) const
Alias for setShape.
void setRawPx(double px)
Sets uncalibrated .
void setRawE(double e)
Sets uncalibrated .
void setRawPy(double py)
Sets uncalibrated .
void setRawPz(double pz)
Sets uncalibrated .
virtual bool setSignalState(state_t s)
set the current signal state
const particle_type & particleBase() const
access to underlying base type (IParticle-like)
virtual double pz() const
z component of momentum
virtual double e() const
energy
virtual double py() const
y component of momentum
const navigable_type & navigableBase() const
access to underlying base type (INavigable-like)
const momentum_type & momentumBase(state_t s) const
access to underlying base type (I4Momentum-like)
virtual double px() const
We re-define here extra class routines that will allow direct access to signal state kinematics witho...
double ratio_from_char(char c) const
char char_from_ratio(double r) const
make the histogram assessment part of the config
std::vector< std::string > tags
static const key_t ShapeCat
Index category for jet shapes.