BOSS 7.1.0
BESIII Offline Software System
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
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}