81{
85 const ElementLink<CaloClusterContainer> clusterLink = trans->clusterLink();
87 const ElementLink<CaloClusterContainer> cellClusterLink = trans->cellClusterLink();
89 const ElementLink<JetCollection> jetLink = trans->jetLink();
92 detailsCnv.transToPers( &trans->tauDetailLinkVector(), &pers->m_tauDetails,
msg );
93 pers->m_numberOfTracks = trans->numberOfTracks();
94 pers->m_roiWord = trans->ROIWord();
95 pers->m_params.clear();
96
97 if( trans->tauID() )
98 {
99 setBit( pers->m_flags, 0,
true );
100
101 pers->m_vetoFlags = trans->tauID()->vetoFlags().to_ulong();
102
103 pers->m_params.reserve (trans->tauID()->params().size());
104 for (const auto& p : trans->tauID()->params()) {
105 pers->m_params.emplace_back (
static_cast<int>(
p.first ),
p.second);
106 }
107 }
108 else
109 setBit( pers->m_flags, 0,
false );
110
111 if( trans->hasAuthor( TauJetParameters :: tauRec ) )
112 setBit( pers->m_flags, 2,
true );
113 if( trans->hasAuthor( TauJetParameters :: tau1P3P ) )
114 setBit( pers->m_flags, 3,
true );
115}
static void setBit(unsigned char &field, unsigned num, bool val)
void transToPers(const Link_t &trans, PersLink_t &pers, const SG::ThinningCache *cache, MsgStream &log) const
void transToPers(const LinkVect_t &trans, PersLinkVect_t &pers, const SG::ThinningCache *cache, MsgStream &log) const
virtual void transToPers(const Jet *transObj, Jet_p1 *persObj, MsgStream &msg) const override
Method creating the persistent representation Jet_p1 from its transient representation Jet.
virtual void transToPers(const P4ImplPxPyPzE *transObj, P4ImplPxPyPzE_p1 *persObj, MsgStream &msg) const override
Method creating the persistent representation P4ImplPxPyPzE_p1 from its transient representation P4Px...
virtual void transToPers(const ParticleBase *transObj, ParticleBase_p1 *persObj, MsgStream &msg) const final
Method creating the persistent representation ParticleBase_p1 from its transient representation Parti...