CGEM BOSS 6.6.5.i
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
 
- 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
 

Protected Member Functions

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

Friends

class DCCombinatoricQuery< CandidateClass >
 

Detailed Description

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

Definition at line 83 of file ConjugateList.h.

Member Typedef Documentation

◆ const_iterator

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

Definition at line 96 of file ConjugateList.h.

◆ const_partial_iterator

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

Definition at line 97 of file ConjugateList.h.

◆ iterator

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

Definition at line 95 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 ( ) const

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 ( ) const

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 117 of file ConjugateList.h.

118 {
119 const_iterator finished ( this->end() ) ;
120 for ( const_iterator entry ( this->begin() ) ;
121 entry != finished ;
122 ++entry ) {
123 analyze( (*entry)() , (*entry).label() == m_label ) ;
124 }
125 }
dchain::WholeCandidateItr< CandidateClass > const_iterator

◆ 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 ( ) const
virtual

◆ label()

template<class CandidateClass >
conjugation::Label dchain::ConjugateList< CandidateClass >::label ( ) const
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 ( ) const
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 ( ) const
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 128 of file ConjugateList.h.

128 {
129 const_partial_iterator finished ( partial_end() ) ;
130 for ( const_partial_iterator entry ( partial_begin() ) ;
131 entry != finished ;
132 ++entry ) {
133 analyze( (*entry)() ) ;
134 }
135 }
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 ( ) const

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)
protected

Definition at line 111 of file ConjugateList.cc.

112{
113 m_label = aLabel ;
114}

Friends And Related Symbol 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: