CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Classes | Public Member Functions | Private Types | Private Member Functions | Private Attributes
pat::eventhypothesis::Looper< T > Class Template Reference

#include <EventHypothesis.h>

Classes

struct  null_deleter
 

Public Member Functions

const reco::Candidatecand () const
 C++ reference to pointed particle. More...
 
const Tget () const
 Accessor as if it was a smart pointer to const T *. More...
 
size_t globalIndex ()
 Index of this item in the full EventHypothesis. More...
 
size_t index () const
 Index of this item among those in the loop. More...
 
bool isTypeOk () const
 test if the type is correct More...
 
 Looper (const EventHypothesis &eh, const ParticleFilter &filter)
 
 Looper (const EventHypothesis &eh, const ParticleFilter *filter)
 
 Looper (const EventHypothesis &eh, const ParticleFilterPtr &filter)
 
 operator bool () const
 
template<typename T2 >
bool operator!= (const Looper< T2 > &other) const
 
const Toperator* () const
 Accessor as if it was a const_iterator on a list of T. More...
 
Looperoperator++ ()
 iteration More...
 
Looperoperator-- ()
 iteration More...
 
const Toperator-> () const
 Accessor as if it was a const_iterator on a list of T. More...
 
template<typename T2 >
bool operator< (const Looper< T2 > &other) const
 
template<typename T2 >
bool operator<= (const Looper< T2 > &other) const
 
template<typename T2 >
bool operator== (const Looper< T2 > &other) const
 returns true if loopers point to the same record More...
 
template<typename T2 >
bool operator> (const Looper< T2 > &other) const
 
template<typename T2 >
bool operator>= (const Looper< T2 > &other) const
 
const CandRefTyperef () const
 EDM Ref to pointed particle. More...
 
Looperreset (int item=0)
 
const std::string & role () const
 Role of pointed item. More...
 
size_t size () const
 Number of particles in the loop. More...
 
Looperskip (int delta)
 skip (might be slow) More...
 
 ~Looper ()
 

Private Types

typedef
EventHypothesis::const_iterator 
const_iterator
 

Private Member Functions

bool assertOk () const
 
void first ()
 
void realSize () const
 

Private Attributes

const EventHypothesiseh_
 
const ParticleFilterPtr filter_
 
const_iterator iter_
 
int num_
 
DynCastCandPtr< Tptr_
 
int total_
 

Detailed Description

template<typename T>
class pat::eventhypothesis::Looper< T >

Definition at line 15 of file EventHypothesis.h.

Member Typedef Documentation

Definition at line 105 of file EventHypothesisLooper.h.

Constructor & Destructor Documentation

template<typename T >
pat::eventhypothesis::Looper< T >::Looper ( const EventHypothesis eh,
const ParticleFilter filter 
)

Looper from EventHypothesis and an external, not owned, ParticleFilter. That is: MyFilter flt; Looper(eh, flt);

Definition at line 121 of file EventHypothesisLooper.h.

template<typename T >
pat::eventhypothesis::Looper< T >::Looper ( const EventHypothesis eh,
const ParticleFilter filter 
)

Looper from EventHypothesis and an internal, owned, ParticleFilter That is: Looper(eh, new MyFilter());

Definition at line 128 of file EventHypothesisLooper.h.

template<typename T >
pat::eventhypothesis::Looper< T >::Looper ( const EventHypothesis eh,
const ParticleFilterPtr filter 
)

Looper from EventHypothesis and a shared ParticleFilter That is: Looper(eh, ParticleFilterPtr(new MyFilter()));

Definition at line 135 of file EventHypothesisLooper.h.

template<typename T >
pat::eventhypothesis::Looper< T >::~Looper ( )
inline

Definition at line 55 of file EventHypothesisLooper.h.

Member Function Documentation

template<typename T >
bool pat::eventhypothesis::Looper< T >::assertOk ( ) const
private

Definition at line 143 of file EventHypothesisLooper.h.

template<typename T >
const reco::Candidate& pat::eventhypothesis::Looper< T >::cand ( ) const
inline

C++ reference to pointed particle.

Definition at line 72 of file EventHypothesisLooper.h.

template<typename T >
void pat::eventhypothesis::Looper< T >::first ( )
private

Definition at line 206 of file EventHypothesisLooper.h.

template<typename T >
const T* pat::eventhypothesis::Looper< T >::get ( ) const
inline

Accessor as if it was a smart pointer to const T *.

Definition at line 62 of file EventHypothesisLooper.h.

Referenced by Options.Options::__getitem__().

template<typename T >
size_t pat::eventhypothesis::Looper< T >::globalIndex ( )
inline

Index of this item in the full EventHypothesis.

Definition at line 75 of file EventHypothesisLooper.h.

template<typename T >
size_t pat::eventhypothesis::Looper< T >::index ( ) const
inline

Index of this item among those in the loop.

Definition at line 77 of file EventHypothesisLooper.h.

template<typename T >
bool pat::eventhypothesis::Looper< T >::isTypeOk ( ) const
inline

test if the type is correct

Definition at line 65 of file EventHypothesisLooper.h.

template<typename T >
pat::eventhypothesis::Looper< T >::operator bool ( ) const

Returns true if you have not run out of the boundaries. It does NOT check if typeOk()

Definition at line 217 of file EventHypothesisLooper.h.

template<typename T >
template<typename T2 >
bool pat::eventhypothesis::Looper< T >::operator!= ( const Looper< T2 > &  other) const
inline

Definition at line 97 of file EventHypothesisLooper.h.

template<typename T >
const T& pat::eventhypothesis::Looper< T >::operator* ( void  ) const
inline

Accessor as if it was a const_iterator on a list of T.

Definition at line 58 of file EventHypothesisLooper.h.

template<typename T >
Looper< T > & pat::eventhypothesis::Looper< T >::operator++ ( void  )

iteration

Definition at line 151 of file EventHypothesisLooper.h.

template<typename T >
Looper< T > & pat::eventhypothesis::Looper< T >::operator-- ( )

iteration

Definition at line 167 of file EventHypothesisLooper.h.

template<typename T >
const T* pat::eventhypothesis::Looper< T >::operator-> ( ) const
inline

Accessor as if it was a const_iterator on a list of T.

Definition at line 60 of file EventHypothesisLooper.h.

template<typename T >
template<typename T2 >
bool pat::eventhypothesis::Looper< T >::operator< ( const Looper< T2 > &  other) const
inline

Definition at line 100 of file EventHypothesisLooper.h.

template<typename T >
template<typename T2 >
bool pat::eventhypothesis::Looper< T >::operator<= ( const Looper< T2 > &  other) const
inline

Definition at line 98 of file EventHypothesisLooper.h.

template<typename T >
template<typename T2 >
bool pat::eventhypothesis::Looper< T >::operator== ( const Looper< T2 > &  other) const
inline

returns true if loopers point to the same record

Definition at line 96 of file EventHypothesisLooper.h.

template<typename T >
template<typename T2 >
bool pat::eventhypothesis::Looper< T >::operator> ( const Looper< T2 > &  other) const
inline

Definition at line 101 of file EventHypothesisLooper.h.

template<typename T >
template<typename T2 >
bool pat::eventhypothesis::Looper< T >::operator>= ( const Looper< T2 > &  other) const
inline

Definition at line 99 of file EventHypothesisLooper.h.

template<typename T >
void pat::eventhypothesis::Looper< T >::realSize ( ) const
private

Definition at line 222 of file EventHypothesisLooper.h.

template<typename T >
const CandRefType& pat::eventhypothesis::Looper< T >::ref ( ) const
inline

EDM Ref to pointed particle.

Definition at line 70 of file EventHypothesisLooper.h.

template<typename T >
Looper< T > & pat::eventhypothesis::Looper< T >::reset ( int  item = 0)

Reset to the start or to any other specific item; negatives count from the end. might be slow, especially with negative items

Definition at line 192 of file EventHypothesisLooper.h.

template<typename T >
const std::string& pat::eventhypothesis::Looper< T >::role ( ) const
inline

Role of pointed item.

Definition at line 68 of file EventHypothesisLooper.h.

template<typename T >
size_t pat::eventhypothesis::Looper< T >::size ( void  ) const
inline

Number of particles in the loop.

Definition at line 79 of file EventHypothesisLooper.h.

template<typename T >
Looper< T > & pat::eventhypothesis::Looper< T >::skip ( int  delta)

skip (might be slow)

Definition at line 184 of file EventHypothesisLooper.h.

Member Data Documentation

template<typename T >
const EventHypothesis& pat::eventhypothesis::Looper< T >::eh_
private

Definition at line 111 of file EventHypothesisLooper.h.

template<typename T >
const ParticleFilterPtr pat::eventhypothesis::Looper< T >::filter_
private

Definition at line 112 of file EventHypothesisLooper.h.

template<typename T >
const_iterator pat::eventhypothesis::Looper< T >::iter_
private

Definition at line 113 of file EventHypothesisLooper.h.

template<typename T >
int pat::eventhypothesis::Looper< T >::num_
private

Definition at line 114 of file EventHypothesisLooper.h.

template<typename T >
DynCastCandPtr<T> pat::eventhypothesis::Looper< T >::ptr_
mutableprivate

Definition at line 116 of file EventHypothesisLooper.h.

template<typename T >
int pat::eventhypothesis::Looper< T >::total_
mutableprivate

Definition at line 115 of file EventHypothesisLooper.h.