BOSS 6.6.4.p01
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 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}