BOSS 7.1.0
BESIII Offline Software System
Loading...
Searching...
No Matches
dchain::ConjugateList< CandidateClass > Class Template Reference

#include <ConjugateList.h>

+ Inheritance diagram for dchain::ConjugateList< CandidateClass >:

Public Types

typedef dchain::MuteWholeCandidateItr< CandidateClass > iterator
 
typedef dchain::WholeCandidateItr< CandidateClass > const_iterator
 
typedef dchain::PartialCandidateItr< CandidateClass > const_partial_iterator
 
- Public Types inherited from dchain::CandidateList< CandidateClass >
typedef dchain::MuteWholeCandidateItr< CandidateClass > iterator
 
typedef dchain::WholeCandidateItr< CandidateClass > const_iterator
 
typedef dchain::PartialCandidateItr< CandidateClass > const_partial_iterator
 
typedef dchain::LabeledCandidate< CandidateClass > value_type
 

Public Member Functions

 ConjugateList (const conjugation::Label aLabel)
 
virtual ~ConjugateList ()
 
virtual bool isSelfConjugate () const
 
bool isConjugateOf (const ConjugateList< CandidateClass > &aList) const
 
int partial_size () const
 
virtual const_partial_iterator partial_begin () const
 
virtual const_partial_iterator partial_end () const
 
template<class TAnalyzer >
void conjugation_iterate (const TAnalyzer &analyzer) const
 
template<class TAnalyzer >
void partial_iterate (const TAnalyzer &analyze) const
 
const_partial_iterator conjugate_partial_begin () const
 
const_partial_iterator conjugate_partial_end () const
 
virtual conjugation::Label label () const
 
void setLabel (const conjugation::Label aLabel)
 
- Public Member Functions inherited from dchain::CandidateList< CandidateClass >
 CandidateList ()
 
virtual ~CandidateList ()
 
virtual iterator begin ()
 
virtual iterator end ()
 
virtual bool empty () const
 
virtual int size () const
 
virtual const_iterator begin () const
 
virtual const_iterator end () const
 
template<class TAnalyzer >
void iterate (const TAnalyzer &analyze) const
 

Friends

class DCCombinatoricQuery< CandidateClass >
 

Additional Inherited Members

- Protected Member Functions inherited from dchain::CandidateList< CandidateClass >
virtual dchain::LabeledCandidateList< CandidateClass > & labeledCandidateList ()=0
 
virtual const dchain::LabeledCandidateList< CandidateClass > & labeledCandidateList () const =0
 

Detailed Description

template<class CandidateClass>
class dchain::ConjugateList< CandidateClass >

Definition at line 86 of file ConjugateList.h.

Member Typedef Documentation

◆ const_iterator

template<class CandidateClass >
typedef dchain::WholeCandidateItr< CandidateClass > dchain::ConjugateList< CandidateClass >::const_iterator

Definition at line 99 of file ConjugateList.h.

◆ const_partial_iterator

template<class CandidateClass >
typedef dchain::PartialCandidateItr< CandidateClass > dchain::ConjugateList< CandidateClass >::const_partial_iterator

Definition at line 100 of file ConjugateList.h.

◆ iterator

template<class CandidateClass >
typedef dchain::MuteWholeCandidateItr< CandidateClass > dchain::ConjugateList< CandidateClass >::iterator

Definition at line 98 of file ConjugateList.h.

Constructor & Destructor Documentation

◆ ConjugateList()

template<class CandidateClass >
dchain::ConjugateList< CandidateClass >::ConjugateList ( const conjugation::Label  aLabel)

Definition at line 85 of file ConjugateList.cc.

85 :
86 m_label( aLabel )
87{
88}

◆ ~ConjugateList()

template<class CandidateClass >
dchain::ConjugateList< CandidateClass >::~ConjugateList
virtual

Definition at line 95 of file ConjugateList.cc.

96{
97}

Member Function Documentation

◆ conjugate_partial_begin()

template<class CandidateClass >
ConjugateList< CandidateClass >::const_partial_iterator dchain::ConjugateList< CandidateClass >::conjugate_partial_begin

Definition at line 152 of file ConjugateList.cc.

153{
154 return ( this->labeledCandidateList().begin( otherLabel( m_label ) ) ) ;
155}
virtual dchain::LabeledCandidateList< CandidateClass > & labeledCandidateList()=0
virtual iterator begin()
conjugation::Label otherLabel(const conjugation::Label &aLabel)
Definition: conjugation.h:51

◆ conjugate_partial_end()

template<class CandidateClass >
ConjugateList< CandidateClass >::const_partial_iterator dchain::ConjugateList< CandidateClass >::conjugate_partial_end

Definition at line 158 of file ConjugateList.cc.

159{
160 return ( this->labeledCandidateList().end( otherLabel( m_label ) ) ) ;
161}
virtual iterator end()

◆ conjugation_iterate()

template<class CandidateClass >
template<class TAnalyzer >
void dchain::ConjugateList< CandidateClass >::conjugation_iterate ( const TAnalyzer &  analyzer) const
inline

TAnalyzer takes two arguments 1) const CandidateClass& 2) a bool which is 'true' if the candiate matches the present conjugation

Definition at line 120 of file ConjugateList.h.

121 {
122 const_iterator finished ( this->end() ) ;
123 for ( const_iterator entry ( this->begin() ) ;
124 entry != finished ;
125 ++entry ) {
126 analyze( (*entry)() , (*entry).label() == m_label ) ;
127 }
128 }
dchain::WholeCandidateItr< CandidateClass > const_iterator
Definition: ConjugateList.h:99

◆ isConjugateOf()

template<class CandidateClass >
bool dchain::ConjugateList< CandidateClass >::isConjugateOf ( const ConjugateList< CandidateClass > &  aList) const

Definition at line 127 of file ConjugateList.cc.

128{
129 return ( ( &(this->labeledCandidateList()) == &(aList.labeledCandidateList()) ) &&
130 ( label() == otherLabel( aList.label() ) ) ) ;
131}
virtual conjugation::Label label() const

◆ isSelfConjugate()

template<class CandidateClass >
bool dchain::ConjugateList< CandidateClass >::isSelfConjugate
virtual

◆ label()

template<class CandidateClass >
conjugation::Label dchain::ConjugateList< CandidateClass >::label
virtual

Reimplemented in dchain::CombinatoricList< CandidateClass >.

Definition at line 165 of file ConjugateList.cc.

166{
167 return ( m_label ) ;
168}

Referenced by dchain::ConjugateList< CandidateClass >::isConjugateOf().

◆ partial_begin()

template<class CandidateClass >
ConjugateList< CandidateClass >::const_partial_iterator dchain::ConjugateList< CandidateClass >::partial_begin
virtual

Reimplemented in dchain::CombinatoricList< CandidateClass >.

Definition at line 140 of file ConjugateList.cc.

141{
142 return ( this->labeledCandidateList().begin( m_label ) ) ;
143}

Referenced by dchain::ConjugateList< CandidateClass >::partial_iterate().

◆ partial_end()

template<class CandidateClass >
ConjugateList< CandidateClass >::const_partial_iterator dchain::ConjugateList< CandidateClass >::partial_end
virtual

Reimplemented in dchain::CombinatoricList< CandidateClass >.

Definition at line 146 of file ConjugateList.cc.

147{
148 return ( this->labeledCandidateList().end( m_label ) ) ;
149}

Referenced by dchain::ConjugateList< CandidateClass >::partial_iterate().

◆ partial_iterate()

template<class CandidateClass >
template<class TAnalyzer >
void dchain::ConjugateList< CandidateClass >::partial_iterate ( const TAnalyzer &  analyze) const
inline

Definition at line 131 of file ConjugateList.h.

131 {
132 const_partial_iterator finished ( partial_end() ) ;
133 for ( const_partial_iterator entry ( partial_begin() ) ;
134 entry != finished ;
135 ++entry ) {
136 analyze( (*entry)() ) ;
137 }
138 }
dchain::PartialCandidateItr< CandidateClass > const_partial_iterator
virtual const_partial_iterator partial_begin() const
virtual const_partial_iterator partial_end() const

◆ partial_size()

template<class CandidateClass >
int dchain::ConjugateList< CandidateClass >::partial_size

Definition at line 134 of file ConjugateList.cc.

135{
136 return ( this->labeledCandidateList().size( m_label ) ) ;
137}
virtual int size() const

◆ setLabel()

template<class CandidateClass >
void dchain::ConjugateList< CandidateClass >::setLabel ( const conjugation::Label  aLabel)

Definition at line 111 of file ConjugateList.cc.

112{
113 m_label = aLabel ;
114}

Referenced by dchain::DecayList< DecayClass, CandidateClass >::fill().

Friends And Related Function Documentation

◆ DCCombinatoricQuery< CandidateClass >

template<class CandidateClass >
friend class DCCombinatoricQuery< CandidateClass >
friend

Definition at line 1 of file ConjugateList.h.


The documentation for this class was generated from the following files: