BOSS 7.0.7
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 261 of file DCDecayList.h.

264{
265 bool can_only_add_lists_with_same_conjugation =
266 iList1.isSelfConjugate()== iList2.isSelfConjugate();
267 assert(can_only_add_lists_with_same_conjugation);
268
269 DCDecayList< DecayClass, CandidateClass> returnValue( iList1 );
270 if( &iList1 != &iList2 ) {
271 returnValue.fill( iList2 );
272 }
273 return returnValue;
274}
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 278 of file DCDecayList.h.

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

◆ 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 301 of file DCDecayList.h.

304{
306 returnValue = iList2 + iList1;
307 return returnValue;
308}