BOSS 7.1.0
BESIII Offline Software System
Loading...
Searching...
No Matches
DCDecayList.h File Reference

Go to the source code of this file.

Classes

class  DCDecayList< DecayClass, CandidateClass >
 

Functions

template<class DecayClass , class CandidateClass >
DCDecayList< DecayClass, CandidateClass > operator+ (const DCDecayList< DecayClass, CandidateClass > &iList1, const DCDecayList< DecayClass, CandidateClass > &iList2)
 
template<class DecayClass , class CandidateClass , class NeutralClass >
DCDecayList< DecayClass, CandidateClass > operator+ (const DCDecayList< DecayClass, CandidateClass > &iList1, const DCFillableNeutralList< NeutralClass > &iList2)
 
template<class DecayClass , class CandidateClass , class NeutralClass >
DCDecayList< DecayClass, CandidateClass > operator+ (const DCFillableNeutralList< NeutralClass > &iList1, const DCDecayList< DecayClass, CandidateClass > &iList2)
 

Function Documentation

◆ operator+() [1/3]

template<class DecayClass , class CandidateClass >
DCDecayList< DecayClass, CandidateClass > operator+ ( const DCDecayList< DecayClass, CandidateClass > &  iList1,
const DCDecayList< DecayClass, CandidateClass > &  iList2 
)
inline

Definition at line 264 of file DCDecayList.h.

267{
268 bool can_only_add_lists_with_same_conjugation =
269 iList1.isSelfConjugate()== iList2.isSelfConjugate();
270 assert(can_only_add_lists_with_same_conjugation);
271
272 DCDecayList< DecayClass, CandidateClass> returnValue( iList1 );
273 if( &iList1 != &iList2 ) {
274 returnValue.fill( iList2 );
275 }
276 return returnValue;
277}
virtual bool isSelfConjugate() const

◆ operator+() [2/3]

template<class DecayClass , class CandidateClass , class NeutralClass >
DCDecayList< DecayClass, CandidateClass > operator+ ( const DCDecayList< DecayClass, CandidateClass > &  iList1,
const DCFillableNeutralList< NeutralClass > &  iList2 
)
inline

Definition at line 281 of file DCDecayList.h.

284{
285 bool can_only_add_lists_with_same_conjugation =
286 iList1.isSelfConjugate()== iList2.isSelfConjugate();
287 assert(can_only_add_lists_with_same_conjugation);
288
289
290 DCDecayList< DecayClass, CandidateClass> returnValue( iList1 );
293 entry != finished ;
294 ++entry ){
295 NeutralClass* localCopy = new NeutralClass( (*entry).particle() ) ;
296 returnValue.attempt_insert( localCopy, (*entry).label() ) ;
297 }
298 return returnValue;
299}

◆ operator+() [3/3]

template<class DecayClass , class CandidateClass , class NeutralClass >
DCDecayList< DecayClass, CandidateClass > operator+ ( const DCFillableNeutralList< NeutralClass > &  iList1,
const DCDecayList< DecayClass, CandidateClass > &  iList2 
)
inline

Definition at line 304 of file DCDecayList.h.

307{
309 returnValue = iList2 + iList1;
310 return returnValue;
311}