#include <DCFillableNeutralList.h>
Inheritance diagram for DCFillableNeutralList< Neutral >:
Public Types | |
typedef dchain::WholeItr< Neutral > | const_iterator |
typedef dchain::WholeItr< Neutral > | const_iterator |
typedef dchain::PartialCandidateItr< Neutral::CandidateClass > | const_partial_iterator |
typedef dchain::PartialCandidateItr< Neutral::CandidateClass > | const_partial_iterator |
typedef dchain::MuteWholeItr< Neutral > | iterator |
typedef dchain::MuteWholeItr< Neutral > | iterator |
typedef NeutralVisibleList< Neutral, Neutral::CandidateClass > | self_type |
typedef NeutralVisibleList< Neutral, Neutral::CandidateClass > | self_type |
typedef Neutral | value_type |
typedef Neutral | value_type |
Public Member Functions | |
bool | attempt_insert (THolder &pPossible, const TSelect &aSelect) |
bool | attempt_insert (THolder &pPossible, const TSelect &aSelect) |
virtual const_iterator | begin () const |
virtual iterator | begin () |
virtual const_iterator | begin () const |
virtual iterator | begin () |
const_partial_iterator | conjugate_partial_begin () const |
const_partial_iterator | conjugate_partial_begin () const |
const_partial_iterator | conjugate_partial_end () const |
const_partial_iterator | conjugate_partial_end () const |
void | conjugation_iterate (const TAnalyzer &analyzer) const |
void | conjugation_iterate (const TAnalyzer &analyzer) const |
DCFillableNeutralList (const std::vector< Neutral > &aVector) | |
DCFillableNeutralList (const DCFillableNeutralList< Neutral > &aOtherList, DCSelectionFunction< Neutral > &aFunctionalObject) | |
DCFillableNeutralList (DCSelectionFunction< Neutral > &aFunctionalObject) | |
DCFillableNeutralList (const DCFillableNeutralList< Neutral > &aOtherList, bool(*pFunction)(Neutral &)=0) | |
template<class WitnessIterator> | |
DCFillableNeutralList (WitnessIterator first, WitnessIterator last, DCSelectionFunction< Neutral > &aFunctionalObject) | |
template<class WitnessIterator> | |
DCFillableNeutralList (WitnessIterator first, WitnessIterator last, bool(*pFunction)(Neutral &)=0) | |
DCFillableNeutralList (bool(*pFunction)(Neutral &)=0) | |
DCFillableNeutralList (const std::vector< Neutral > &aVector) | |
DCFillableNeutralList (const DCFillableNeutralList< Neutral > &aOtherList, DCSelectionFunction< Neutral > &aFunctionalObject) | |
DCFillableNeutralList (DCSelectionFunction< Neutral > &aFunctionalObject) | |
DCFillableNeutralList (const DCFillableNeutralList< Neutral > &aOtherList, bool(*pFunction)(Neutral &)=0) | |
template<class WitnessIterator> | |
DCFillableNeutralList (WitnessIterator first, WitnessIterator last, DCSelectionFunction< Neutral > &aFunctionalObject) | |
template<class WitnessIterator> | |
DCFillableNeutralList (WitnessIterator first, WitnessIterator last, bool(*pFunction)(Neutral &)=0) | |
DCFillableNeutralList (bool(*pFunction)(Neutral &)=0) | |
virtual bool | empty () const |
virtual bool | empty () const |
virtual const_iterator | end () const |
virtual iterator | end () |
virtual const_iterator | end () const |
virtual iterator | end () |
void | erase () |
void | erase () |
void | eraseContents () |
void | eraseContents () |
void | fill (Iterator first, Iterator last, const TMaker &aMaker, const TSelector &aSel=SelectAll< Neutral >()) |
void | fill (const LabeledParticleList< Neutral, Neutral::CandidateClass > &aList, const TMaker &aMaker, const TSelector &aSel) |
template<class WitnessIterator> | |
void | fill (WitnessIterator first, WitnessIterator last) |
template<class WitnessIterator> | |
void | fill (WitnessIterator first, WitnessIterator last) |
void | insert (THolder &pPossible) |
void | insert (THolder &pPossible) |
bool | isConjugateOf (const ConjugateList< Neutral::CandidateClass > &aList) const |
bool | isConjugateOf (const ConjugateList< Neutral::CandidateClass > &aList) const |
virtual bool | isSelfConjugate () const |
virtual bool | isSelfConjugate () const |
void | iterate (const TAnalyzer &analyze) const |
void | iterate (TAnalyze &analyze) const |
void | iterate (const TAnalyze &analyze) const |
void | iterate (TAnalyze &analyze) const |
void | iterate (const TAnalyze &analyze) const |
virtual conjugation::Label | label () const |
virtual conjugation::Label | label () const |
template<class Witness> | |
const DCFillableNeutralList< Neutral > & | operator= (const Witness &aWitnessList) |
const DCFillableNeutralList< Neutral > & | operator= (const DCFillableNeutralList< Neutral > &aOtherList) |
template<class Witness> | |
const DCFillableNeutralList< Neutral > & | operator= (const Witness &aWitnessList) |
const DCFillableNeutralList< Neutral > & | operator= (const DCFillableNeutralList< Neutral > &aOtherList) |
FillListWithSelection< self_type, TSelector > | operator[] (const TSelector &iSel) |
FillListWithSelection< self_type, TSelector > | operator[] (const TSelector &iSel) |
virtual const_partial_iterator | partial_begin () const |
virtual const_partial_iterator | partial_begin () const |
virtual const_partial_iterator | partial_end () const |
virtual const_partial_iterator | partial_end () const |
void | partial_iterate (const TAnalyzer &analyze) const |
void | partial_iterate (const TAnalyzer &analyze) const |
int | partial_size () const |
int | partial_size () const |
const_iterator | particle_begin () const |
iterator | particle_begin () |
const_iterator | particle_begin () const |
iterator | particle_begin () |
const_iterator | particle_end () const |
iterator | particle_end () |
const_iterator | particle_end () const |
iterator | particle_end () |
SelectiveInserter< self_type, TSelect > | selectiveInserter (const TSelect &iSelect) |
creates an insert iterator that filters based on iSelect | |
SelectiveInserter< self_type, TSelect > | selectiveInserter (const TSelect &iSelect) |
creates an insert iterator that filters based on iSelect | |
virtual int | size () const |
virtual int | size () const |
virtual | ~DCFillableNeutralList () |
virtual | ~DCFillableNeutralList () |
Protected Member Functions | |
void | fill (Iterator first, Iterator last) |
void | fill (const dchain::LabeledParticleList< Neutral, Neutral::CandidateClass > &aList) |
virtual const dchain::LabeledParticleList< Neutral, Neutral::CandidateClass > & | labeledCandidateList () const |
virtual dchain::LabeledParticleList< Neutral, Neutral::CandidateClass > & | labeledCandidateList () |
virtual const dchain::LabeledParticleList< Neutral, Neutral::CandidateClass > & | labeledCandidateList () const |
virtual dchain::LabeledParticleList< Neutral, Neutral::CandidateClass > & | labeledCandidateList () |
void | setLabel (const conjugation::Label aLabel) |
void | setLabel (const conjugation::Label aLabel) |
Private Member Functions | |
void | fill (const dchain::LabeledParticleList< Neutral, typename Neutral::CandidateClass > &aList) |
void | fill (const dchain::LabeledParticleList< Neutral, typename Neutral::CandidateClass > &aList) |
|
Reimplemented from dchain::ConjugateList< Neutral::CandidateClass >. |
|
Reimplemented from dchain::ConjugateList< Neutral::CandidateClass >. |
|
Reimplemented from dchain::CandidateList< Neutral::CandidateClass >. |
|
Reimplemented from dchain::CandidateList< Neutral::CandidateClass >. |
|
Reimplemented from dchain::ConjugateList< Neutral::CandidateClass >. |
|
Reimplemented from dchain::ConjugateList< Neutral::CandidateClass >. |
|
|
|
|
|
Reimplemented from dchain::NeutralVisibleList< Neutral, Neutral::CandidateClass >. |
|
Reimplemented from dchain::NeutralVisibleList< Neutral, Neutral::CandidateClass >. |
|
00066 : 00067 DCNeutralVisibleList< Neutral , typename Neutral::CandidateClass >( pFunction ) 00068 { 00069 }
|
|
00075 : 00076 DCNeutralVisibleList<Neutral, typename Neutral::CandidateClass>(pFunction) { 00077 fill(first, last); } //DCFillableNeutralList( const TruthWitnesses& aTruthList ,
|
|
00089 : 00090 DCNeutralVisibleList<Neutral, typename Neutral::CandidateClass>(aFunctionalObject) { 00091 fill(first, last); } DCFillableNeutralList( const DCFillableNeutralList< Neutral >& aOtherList ,
|
|
00098 : 00099 DCNeutralVisibleList< Neutral , 00100 typename Neutral::CandidateClass >( aOtherList , 00101 pFunction ) 00102 { 00103 }
|
|
00109 : 00110 DCNeutralVisibleList< Neutral , 00111 typename Neutral::CandidateClass >( aFunctionalObject ) 00112 { 00113 }
|
|
00142 : 00143 DCNeutralVisibleList< Neutral , 00144 typename Neutral::CandidateClass >( aOtherList , 00145 aFunctionalObject ) 00146 { 00147 } /*
|
|
|
|
00162 { 00163 }
|
|
|
|
00075 : 00076 DCNeutralVisibleList<Neutral, typename Neutral::CandidateClass>(pFunction) { 00077 fill(first, last); } //DCFillableNeutralList( const TruthWitnesses& aTruthList ,
|
|
00089 : 00090 DCNeutralVisibleList<Neutral, typename Neutral::CandidateClass>(aFunctionalObject) { 00091 fill(first, last); } DCFillableNeutralList( const DCFillableNeutralList< Neutral >& aOtherList ,
|
|
|
|
|
|
|
|
|
|
|
|
00196 { 00197 bool returnValue = (aSelect)(*pPossible); 00198 if (returnValue) { 00199 this->insert(pPossible); 00200 } 00201 return returnValue; 00202 }
|
|
00196 { 00197 bool returnValue = (aSelect)(*pPossible); 00198 if (returnValue) { 00199 this->insert(pPossible); 00200 } 00201 return returnValue; 00202 }
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
TAnalyzer takes two arguments 1) const CandidateClass& 2) a bool which is 'true' if the candiate matches the present conjugation 00118 { 00119 const_iterator finished ( this->end() ) ; 00120 for ( const_iterator entry ( this->begin() ) ; 00121 entry != finished ; 00122 ++entry ) { 00123 analyze( (*entry)() , (*entry).label() == m_label ) ; 00124 } 00125 }
|
|
TAnalyzer takes two arguments 1) const CandidateClass& 2) a bool which is 'true' if the candiate matches the present conjugation 00118 { 00119 const_iterator finished ( this->end() ) ; 00120 for ( const_iterator entry ( this->begin() ) ; 00121 entry != finished ; 00122 ++entry ) { 00123 analyze( (*entry)() , (*entry).label() == m_label ) ; 00124 } 00125 }
|
|
|
|
|
|
|
|
|
|
|
|
|
|
00210 { 00211 eraseContents(); 00212 }
|
|
00210 { 00211 eraseContents(); 00212 }
|
|
|
|
|
|
00233 { 00234 std::transform(first,last, 00235 selectiveInserter(aSel), 00236 aMaker); 00237 }
|
|
00218 { 00219 00220 for( const_iterator entry(aList.begin()); entry != aList.end(); ++entry){ 00221 //NOTE: even though this is really just calling the copy constructor 00222 //it is best to use the maker since it allows further control 00223 const Neutral& from((*entry)()); 00224 typename ResultTypeTrait<TMaker>::type localCopy( aMaker(from) ); 00225 00226 attempt_insert(localCopy,aSel); 00227 } 00228 00229 }
|
|
00130 { 00131 if ( 0 != m_function ) { 00132 fill(first,last, dchain::NewMaker<Neutral>(), m_function); 00133 } else if (m_functionalObject) { 00134 fill(first,last,dchain::NewMaker<Neutral>(),m_functionalObject); 00135 } else { 00136 fill(first,last, dchain::NewMaker<Neutral>(), dchain::SelectAll<Neutral>()); 00137 } 00138 }
|
|
|
|
|
|
00109 { 00110 DCNeutralVisibleList< Neutral , typename Neutral::CandidateClass >::fill(first,last); 00111 }
|
|
00241 { 00242 DCNeutralVisibleList< Neutral , 00243 typename Neutral::CandidateClass >::fill( aList ) ; 00244 }
|
|
00109 { 00110 DCNeutralVisibleList< Neutral , typename Neutral::CandidateClass >::fill(first,last); 00111 }
|
|
00204 { 00205 m_list->push_back( LabeledParticle< Neutral >( pPossible , 00206 conjugation::kNone ) ) ; 00207 }
|
|
00204 { 00205 m_list->push_back( LabeledParticle< Neutral >( pPossible , 00206 conjugation::kNone ) ) ; 00207 }
|
|
|
|
|
|
|
|
|
|
00102 { 00103 const_iterator finished ( end() ); 00104 for ( const_iterator entry ( begin() ) ; 00105 entry != finished ; 00106 ++entry ) { 00107 analyze( (*entry)() ) ; 00108 } 00109 }
|
|
00180 { 00181 const_iterator finished ( particle_end() ) ; 00182 for ( const_iterator entry ( particle_begin() ) ; 00183 entry != finished ; 00184 ++entry ) { 00185 analyze( (*entry)() ) ; 00186 } 00187 }
|
|
00170 { 00171 const_iterator finished ( particle_end() ) ; 00172 for ( const_iterator entry ( particle_begin() ) ; 00173 entry != finished ; 00174 ++entry ) { 00175 analyze( (*entry)() ) ; 00176 } 00177 }
|
|
00180 { 00181 const_iterator finished ( particle_end() ) ; 00182 for ( const_iterator entry ( particle_begin() ) ; 00183 entry != finished ; 00184 ++entry ) { 00185 analyze( (*entry)() ) ; 00186 } 00187 }
|
|
00170 { 00171 const_iterator finished ( particle_end() ) ; 00172 for ( const_iterator entry ( particle_begin() ) ; 00173 entry != finished ; 00174 ++entry ) { 00175 analyze( (*entry)() ) ; 00176 } 00177 }
|
|
|
|
|
|
Implements dchain::CandidateList< Neutral::CandidateClass >. |
|
Implements dchain::CandidateList< Neutral::CandidateClass >. |
|
Implements dchain::CandidateList< Neutral::CandidateClass >. |
|
Implements dchain::CandidateList< Neutral::CandidateClass >. |
|
Reimplemented from dchain::NeutralVisibleList< Neutral, Neutral::CandidateClass >. 00114 { 00115 this->eraseContents(); 00116 fill(aWitnessList.begin(), aWitnessList.end()); 00117 return ( *this ) ; 00118 }
|
|
|
|
Reimplemented from dchain::NeutralVisibleList< Neutral, Neutral::CandidateClass >. 00114 { 00115 this->eraseContents(); 00116 fill(aWitnessList.begin(), aWitnessList.end()); 00117 return ( *this ) ; 00118 }
|
|
00197 { 00198 DCNeutralVisibleList< Neutral , 00199 typename Neutral::CandidateClass >::operator=( 00200 aOtherList ) ; 00201 return ( *this ) ; 00202 }
|
|
00157 { 00158 return FillListWithSelection<self_type,TSelector>(*this, iSel); 00159 }
|
|
00157 { 00158 return FillListWithSelection<self_type,TSelector>(*this, iSel); 00159 }
|
|
|
|
|
|
|
|
|
|
00128 { 00129 const_partial_iterator finished ( partial_end() ) ; 00130 for ( const_partial_iterator entry ( partial_begin() ) ; 00131 entry != finished ; 00132 ++entry ) { 00133 analyze( (*entry)() ) ; 00134 } 00135 }
|
|
00128 { 00129 const_partial_iterator finished ( partial_end() ) ; 00130 for ( const_partial_iterator entry ( partial_begin() ) ; 00131 entry != finished ; 00132 ++entry ) { 00133 analyze( (*entry)() ) ; 00134 } 00135 }
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
creates an insert iterator that filters based on iSelect
00191 { 00192 return SelectiveInserter<self_type,TSelect>(*this,iSelect); }
|
|
creates an insert iterator that filters based on iSelect
00191 { 00192 return SelectiveInserter<self_type,TSelect>(*this,iSelect); }
|
|
|
|
|
|
|
|
|