80{
81 pers->m_params.clear();
84 const ElementLink<CaloClusterContainer> clusterLink = trans->clusterLink();
86 const ElementLink<CaloClusterContainer> cellClusterLink = trans->cellClusterLink();
88 const ElementLink<JetCollection> jetLink = trans->jetLink();
91 detailsCnv.transToPers( &trans->tauDetailLinkVector(), &pers->m_tauDetails,
msg );
92 pers->m_numberOfTracks = trans->numberOfTracks();
93 pers->m_roiWord = trans->ROIWord();
94
95 if( trans->tauID() )
96 {
97 setBit( pers->m_flags, 0,
true );
98
99 pers->m_vetoFlags = trans->tauID()->vetoFlags().to_ulong();
100
101 pers->m_params.reserve (trans->tauID()->params().size());
102 for (const auto& p : trans->tauID()->params()) {
103 pers->m_params.emplace_back (
static_cast<int>(
p.first ),
p.second);
104 }
105 }
106 else
107 setBit( pers->m_flags, 0,
false );
108
109 if( trans->hasAuthor( TauJetParameters :: tauRec ) )
110 setBit( pers->m_flags, 2,
true );
111 if( trans->hasAuthor( TauJetParameters :: tau1P3P ) )
112 setBit( pers->m_flags, 3,
true );
113}
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...