BOSS 8.0.0
BESIII Offline Software System
Loading...
Searching...
No Matches
dchain Namespace Reference

Namespaces

namespace  children
namespace  conjugation
namespace  candidateitr

Classes

class  LabeledCandidate
struct  ParticleTraits
class  LabeledParticle
struct  NewMaker
struct  MakerTrait
struct  ResultTypeTrait
struct  ResultTypeTrait< TReturn(*)(const TArg &)>
class  MutableReferenceHolder
class  ReferenceCount
class  ReferenceHolder
class  ReferenceHolderBase
class  DCUnaryAdapter
struct  SelectAll
class  IndexedLabeledCandidates
class  LabeledCandidateList
class  MuteWholeCandidateItr
class  LabeledParticleList
class  IndexedLabeledParticles
class  MuteWholeItr
class  PartialCandidateItr
class  PartialItr
struct  SelectiveInserter
class  WholeCandidateItr
class  WholeItr
class  CandidateList
class  ChargedVisibleList
class  ChosenChargeList
class  NeutralNCVisibleList
class  ChosenConjugateList
class  CombinatoricList
class  ConjugateList
class  CombinatoricLoop
class  LabeledDecay
class  IndexedLabeledDecays
class  DecayList
class  FillListWithSelection
class  DPartialCandidateItr
class  NeutralVisibleList
class  FillDecayList

Functions

conjugation::Label otherLabel (const conjugation::Label &aLabel)
template<class CandidateClass>
LabeledCandidate< CandidateClass > * value_type (const MuteWholeCandidateItr< CandidateClass > &)
template<class T>
int charge_sign (const T &iCharged)
template<class T>
int charge_sign (const T *iCharged)
template<class T>
int charge_sign (T *iCharged)
template<class T>
int charge_sign (const std::auto_ptr< T > &iCharged)
template<class TPtr, class TRef>
int charge_sign (const ReferenceHolderBase< TPtr, TRef > &iHolder)
template<class TIList, class TSelector, class T, class U>
void fill_using_selector (const TIList &iList, const TSelector &iSel, ChargedVisibleList< T, U > &oList)
template<class CandidateClass>
CombinatoricList< CandidateClass > operator* (const ConjugateList< CandidateClass > &lhs, const ConjugateList< CandidateClass > &rhs)
template<class CandidateClass>
CombinatoricList< CandidateClass > operator* (const CombinatoricList< CandidateClass > &lhs, const ConjugateList< CandidateClass > &rhs)
template<class CandidateClass>
CombinatoricList< CandidateClass > operator* (const ConjugateList< CandidateClass > &lhs, const CombinatoricList< CandidateClass > &rhs)
template<class CandidateClass>
CombinatoricList< CandidateClass > operator* (const CombinatoricList< CandidateClass > &lhs, const CombinatoricList< CandidateClass > &rhs)
template<class DecayClass, class CandidateClass>
DecayList< DecayClass, CandidateClass > operator+ (const DecayList< DecayClass, CandidateClass > &iList1, const DecayList< DecayClass, CandidateClass > &iList2)
template<class DecayClass, class CandidateClass, class NeutralClass>
DecayList< DecayClass, CandidateClass > operator+ (const DecayList< DecayClass, CandidateClass > &iList1, const NeutralVisibleList< NeutralClass > &iList2)
template<class DecayClass, class CandidateClass, class NeutralClass>
DecayList< DecayClass, CandidateClass > operator+ (const NeutralVisibleList< NeutralClass > &iList1, const DecayList< DecayClass, CandidateClass > &iList2)
template<class TIList, class TSelector, class TOList>
void fill_using_selector (const TIList &iList, const TSelector &iSelector, TOList &oList)
template<class T>
int is_bar (const T &iNeutralNC)
template<class T>
int is_bar (const T *iNeutralNC)
template<class T>
int is_bar (T *iNeutralNC)
template<class TPtr, class TRef>
int is_bar (const ReferenceHolderBase< TPtr, TRef > &iHolder)
template<class TIList, class TSelector, class T, class U>
void fill_using_selector (const TIList &iList, const TSelector &iSel, NeutralNCVisibleList< T, U > &oList)
template<class TIList, class TSelector, class T, class U>
void fill_using_selector (const TIList &iList, const TSelector &iSel, NeutralVisibleList< T, U > &oList)

Function Documentation

◆ charge_sign() [1/5]

template<class TPtr, class TRef>
int dchain::charge_sign ( const ReferenceHolderBase< TPtr, TRef > & iHolder)

Definition at line 126 of file Event/DecayChain/include/DecayChain/List/ChargedVisibleList.h.

126 {
127 return charge_sign( *iHolder );
128 }

◆ charge_sign() [2/5]

template<class T>
int dchain::charge_sign ( const std::auto_ptr< T > & iCharged)

Definition at line 121 of file Event/DecayChain/include/DecayChain/List/ChargedVisibleList.h.

121 {
122 return static_cast<int>( iCharged->charge() );
123 }

◆ charge_sign() [3/5]

template<class T>
int dchain::charge_sign ( const T & iCharged)

Definition at line 109 of file Event/DecayChain/include/DecayChain/List/ChargedVisibleList.h.

109 {
110 return static_cast<int>( iCharged.charge() );
111 }

Referenced by charge_sign(), and dchain::ChargedVisibleList< Charged, CandidateClass >::insert().

◆ charge_sign() [4/5]

template<class T>
int dchain::charge_sign ( const T * iCharged)

Definition at line 113 of file Event/DecayChain/include/DecayChain/List/ChargedVisibleList.h.

113 {
114 return static_cast<int>( iCharged->charge() );
115 }

◆ charge_sign() [5/5]

template<class T>
int dchain::charge_sign ( T * iCharged)

Definition at line 117 of file Event/DecayChain/include/DecayChain/List/ChargedVisibleList.h.

117 {
118 return static_cast<int>( iCharged->charge() );
119 }

◆ fill_using_selector() [1/4]

template<class TIList, class TSelector, class T, class U>
void dchain::fill_using_selector ( const TIList & iList,
const TSelector & iSel,
ChargedVisibleList< T, U > & oList )

◆ fill_using_selector() [2/4]

template<class TIList, class TSelector, class T, class U>
void dchain::fill_using_selector ( const TIList & iList,
const TSelector & iSel,
NeutralNCVisibleList< T, U > & oList )

Definition at line 218 of file Event/DecayChain/include/DecayChain/List/NeutralNCVisibleList.h.

219 {
220 oList.fill( iList.begin(), iList.end(), typename MakerTrait<T>::maker_type(), iSel );
221 }
void fill(const LabeledParticleList< NeutralNC, CandidateClass > &aList, const TMaker &aMaker, const TSelector &aSel)

◆ fill_using_selector() [3/4]

template<class TIList, class TSelector, class T, class U>
void dchain::fill_using_selector ( const TIList & iList,
const TSelector & iSel,
NeutralVisibleList< T, U > & oList )

Definition at line 237 of file Event/DecayChain/include/DecayChain/List/NeutralVisibleList.h.

238 {
239 oList.fill( iList.begin(), iList.end(), typename MakerTrait<T>::maker_type(), iSel );
240 }
void fill(const LabeledParticleList< Neutral, CandidateClass > &aList, const TMaker &aMaker, const TSelector &aSel)

◆ fill_using_selector() [4/4]

template<class TIList, class TSelector, class TOList>
void dchain::fill_using_selector ( const TIList & iList,
const TSelector & iSelector,
TOList & oList )

Definition at line 44 of file Event/DecayChain/include/DecayChain/List/FillListWithSelection.h.

44 {
45 oList.fill( iList, iSelector );
46 }

◆ is_bar() [1/4]

template<class TPtr, class TRef>
int dchain::is_bar ( const ReferenceHolderBase< TPtr, TRef > & iHolder)

Definition at line 63 of file Event/DecayChain/include/DecayChain/List/NeutralNCVisibleList.h.

63 {
64 return is_bar( *iHolder );
65 }

◆ is_bar() [2/4]

template<class T>
int dchain::is_bar ( const T & iNeutralNC)

Definition at line 50 of file Event/DecayChain/include/DecayChain/List/NeutralNCVisibleList.h.

50 {
51 return static_cast<int>( iNeutralNC.isBar() );
52 }

Referenced by dchain::NeutralNCVisibleList< NeutralNC, CandidateClass >::insert(), and is_bar().

◆ is_bar() [3/4]

template<class T>
int dchain::is_bar ( const T * iNeutralNC)

Definition at line 54 of file Event/DecayChain/include/DecayChain/List/NeutralNCVisibleList.h.

54 {
55 return static_cast<int>( iNeutralNC->isBar() );
56 }

◆ is_bar() [4/4]

template<class T>
int dchain::is_bar ( T * iNeutralNC)

Definition at line 58 of file Event/DecayChain/include/DecayChain/List/NeutralNCVisibleList.h.

58 {
59 return static_cast<int>( iNeutralNC->isBar() );
60 }

◆ operator*() [1/4]

template<class CandidateClass>
CombinatoricList< CandidateClass > dchain::operator* ( const CombinatoricList< CandidateClass > & lhs,
const CombinatoricList< CandidateClass > & rhs )
inline

◆ operator*() [2/4]

template<class CandidateClass>
CombinatoricList< CandidateClass > dchain::operator* ( const CombinatoricList< CandidateClass > & lhs,
const ConjugateList< CandidateClass > & rhs )
inline

Definition at line 237 of file Event/DecayChain/include/DecayChain/List/CombinatoricList.h.

238 {
239 return CombinatoricList<CandidateClass>( lhs, rhs );
240 }

◆ operator*() [3/4]

template<class CandidateClass>
CombinatoricList< CandidateClass > dchain::operator* ( const ConjugateList< CandidateClass > & lhs,
const CombinatoricList< CandidateClass > & rhs )
inline

Definition at line 244 of file Event/DecayChain/include/DecayChain/List/CombinatoricList.h.

245 {
246 return CombinatoricList<CandidateClass>( lhs, rhs );
247 }

◆ operator*() [4/4]

template<class CandidateClass>
CombinatoricList< CandidateClass > dchain::operator* ( const ConjugateList< CandidateClass > & lhs,
const ConjugateList< CandidateClass > & rhs )
inline

Definition at line 230 of file Event/DecayChain/include/DecayChain/List/CombinatoricList.h.

231 {
232 return CombinatoricList<CandidateClass>( lhs, rhs );
233 }

◆ operator+() [1/3]

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

Definition at line 233 of file Event/DecayChain/include/DecayChain/List/DecayList.h.

234 {
235 bool can_only_add_lists_with_same_conjugation =
236 iList1.isSelfConjugate() == iList2.isSelfConjugate();
237 assert( can_only_add_lists_with_same_conjugation );
238
239 DecayList<DecayClass, CandidateClass> returnValue( iList1 );
240 if ( &iList1 != &iList2 ) { returnValue.fill( iList2, SelectAll<DecayClass>() ); }
241 return returnValue;
242 }

◆ operator+() [2/3]

template<class DecayClass, class CandidateClass, class NeutralClass>
DecayList< DecayClass, CandidateClass > dchain::operator+ ( const DecayList< DecayClass, CandidateClass > & iList1,
const NeutralVisibleList< NeutralClass > & iList2 )
inline

Definition at line 246 of file Event/DecayChain/include/DecayChain/List/DecayList.h.

247 {
248 bool can_only_add_lists_with_same_conjugation =
249 iList1.isSelfConjugate() == iList2.isSelfConjugate();
250 assert( can_only_add_lists_with_same_conjugation );
251
252 DecayList<DecayClass, CandidateClass> returnValue = iList1;
254 iList2.particle_end() );
256 iList2.particle_begin() );
257 entry != finished; ++entry )
258 {
259 NeutralClass* localCopy = new NeutralClass( ( *entry ).particle() );
260 returnValue.attempt_insert( localCopy, ( *entry ).label(), SelectAll<DecayClass>() );
261 }
262 return returnValue;
263 }
bool attempt_insert(DecayClass *pPossible, const conjugation::Label aLabel, const TSelect &aSelect)

◆ operator+() [3/3]

template<class DecayClass, class CandidateClass, class NeutralClass>
DecayList< DecayClass, CandidateClass > dchain::operator+ ( const NeutralVisibleList< NeutralClass > & iList1,
const DecayList< DecayClass, CandidateClass > & iList2 )
inline

Definition at line 267 of file Event/DecayChain/include/DecayChain/List/DecayList.h.

268 {
270 returnValue = iList2 + iList1;
271 return returnValue;
272 }

◆ otherLabel()

◆ value_type()

template<class CandidateClass>
LabeledCandidate< CandidateClass > * dchain::value_type ( const MuteWholeCandidateItr< CandidateClass > & )
inline

Definition at line 293 of file Event/DecayChain/include/DecayChain/Iterator/MuteWholeCandidateItr.h.

293 {
294 return ( (CandidateClass*)0 );
295 }