CMS 3D CMS Logo

Public Member Functions | Private Attributes | Friends

l1slhc::L1CaloCluster Class Reference

#include <L1CaloCluster.h>

List of all members.

Public Member Functions

void addConstituent (const L1CaloTowerRef &)
const int & E () const
const bool & eGamma () const
const int & eGammaValue () const
const bool & fg () const
const int & FourthTowerE () const
L1CaloTowerRef getConstituent (const int &)
const L1CaloTowerRefVectorgetConstituents () const
int hasConstituent (const int &, const int &)
const bool & hasLeadTower () const
const int & iEta () const
const int & innerEta () const
const int & innerPhi () const
const int & iPhi () const
const bool & isCentral () const
bool isEGamma () const
bool isIsoEGamma () const
bool isIsoTau () const
const int & isoClustersEG () const
const int & isoClustersTau () const
const bool & isoEG () const
const int & isoEnergyEG () const
const int & isoEnergyTau () const
const bool & isoTau () const
bool isTau () const
 L1CaloCluster (const int &, const int &)
 L1CaloCluster ()
const int & LeadTowerE () const
const
math::PtEtaPhiMLorentzVector
p4 () const
void removeConstituent (const int &, const int &)
const int & Ring1E () const
const int & Ring2E () const
const int & Ring3E () const
const int & Ring4E () const
const int & SecondTowerE () const
void setCentral (const bool &)
void setConstituents (const L1CaloTowerRefVector &)
void setE (const int &)
void setEGamma (const bool &)
void setEGammaValue (const int &)
void setFg (const bool &)
void setFourthTowerE (const int &)
void setIsoClusters (const int &, const int &)
void setIsoEG (const bool &)
void setIsoEnergy (const int &, const int &)
void setIsoTau (const bool &)
void setLeadTower (const bool &)
void setLeadTowerE (const int &)
void setLorentzVector (const math::PtEtaPhiMLorentzVector &)
void setPosBits (const int &, const int &)
void setRing1E (const int &)
void setRing2E (const int &)
void setRing3E (const int &)
void setRing4E (const int &)
void setSecondTowerE (const int &)
void setThirdTowerE (const int &)
const int & ThirdTowerE () const
 ~L1CaloCluster ()

Private Attributes

bool mCentral
L1CaloTowerRefVector mConstituents
int mE
bool mEgamma
int mEgammavalue
bool mFg
int mFourthTowerE
int mIeta
int mInnereta
int mInnerphi
int mIphi
int mIsoclusterseg
int mIsoclusterstau
bool mIsoeg
int mIsoenergyeg
int mIsoenergytau
bool mIsotau
int mLeadTowerE
bool mLeadtowertau
math::PtEtaPhiMLorentzVector mP4
int mRing1E
int mRing2E
int mRing3E
int mRing4E
int mSecondTowerE
int mThirdTowerE

Friends

bool operator== (const l1slhc::L1CaloCluster &a, const l1slhc::L1CaloCluster &b)

Detailed Description

Definition at line 17 of file L1CaloCluster.h.


Constructor & Destructor Documentation

l1slhc::L1CaloCluster::L1CaloCluster ( )

Definition at line 8 of file L1CaloCluster.cc.

                                      :mIeta( 0 ),
        mIphi( 0 ),
        mE( 0 ),
        mLeadTowerE( 0 ),                              
        mSecondTowerE( 0 ),
        mThirdTowerE( 0 ),
        mFourthTowerE( 0 ),
        mRing1E( 0 ),
        mRing2E( 0 ),
        mRing3E( 0 ),
        mRing4E( 0 ),
        mFg( false ),
        mEgamma( false ),
        mCentral( false ),
        mIsoeg( false ),
        mLeadtowertau( false ), 
        mIsotau( false ), 
        mEgammavalue( 0 ), 
        mInnereta( 0 ), 
        mInnerphi( 0 ), 
        mIsoclusterseg( 0 ), 
        mIsoclusterstau( 0 ), 
        mP4( math::PtEtaPhiMLorentzVector( 0.001, 0, 0, 0. ) )
        {
        }
l1slhc::L1CaloCluster::L1CaloCluster ( const int &  iEta,
const int &  iPhi 
)

Definition at line 34 of file L1CaloCluster.cc.

                                                                      :mIeta( iEta ),
        mIphi( iPhi ),
        mE( 0 ),
        mLeadTowerE( 0 ),                              
        mSecondTowerE( 0 ),                            
        mThirdTowerE( 0 ),                             
        mFourthTowerE( 0 ),
        mRing1E( 0 ),
        mRing2E( 0 ),
        mRing3E( 0 ),
        mRing4E( 0 ),                          
        mFg( false ),
        mEgamma( false ),
        mCentral( false ),
        mIsoeg( false ),
        mLeadtowertau( false ), 
        mIsotau( false ), 
        mEgammavalue( 0 ), 
        mInnereta( 0 ), 
        mInnerphi( 0 ), 
        mIsoclusterseg( 0 ), 
        mIsoclusterstau( 0 ), 
        mP4( math::PtEtaPhiMLorentzVector( 0.001, 0, 0, 0. ) )
        {
        }
l1slhc::L1CaloCluster::~L1CaloCluster ( )

Definition at line 62 of file L1CaloCluster.cc.

        {
        }

Member Function Documentation

void l1slhc::L1CaloCluster::addConstituent ( const L1CaloTowerRef tower)

Definition at line 335 of file L1CaloCluster.cc.

References mConstituents, and mE.

Referenced by L1CaloClusterProducer::algorithm().

        {
                mE += tower->E(  );
                mE += tower->H(  );
                mConstituents.push_back( tower );
        }
const int & l1slhc::L1CaloCluster::E ( ) const
const bool & l1slhc::L1CaloCluster::eGamma ( ) const

Definition at line 141 of file L1CaloCluster.cc.

References mEgamma.

Referenced by isEGamma(), and isIsoEGamma().

        {
                return mEgamma;
        }
const int & l1slhc::L1CaloCluster::eGammaValue ( ) const

Definition at line 152 of file L1CaloCluster.cc.

References mEgammavalue.

Referenced by operator<<().

        {
                return mEgammavalue;
        }
const bool & l1slhc::L1CaloCluster::fg ( ) const

Definition at line 136 of file L1CaloCluster.cc.

References mFg.

Referenced by isEGamma(), isIsoEGamma(), operator<<(), and setFg().

        {
                return mFg;
        }
const int & l1slhc::L1CaloCluster::FourthTowerE ( ) const

Definition at line 109 of file L1CaloCluster.cc.

References mFourthTowerE.

Referenced by L1CaloClusterIsolator::algorithm().

        {
                return mFourthTowerE;
        }
L1CaloTowerRef l1slhc::L1CaloCluster::getConstituent ( const int &  pos)

Definition at line 356 of file L1CaloCluster.cc.

References mConstituents.

Referenced by L1CaloClusterFilter::calculateClusterPosition().

        {
                return mConstituents.at( pos );
        }
const L1CaloTowerRefVector & l1slhc::L1CaloCluster::getConstituents ( ) const

Definition at line 266 of file L1CaloCluster.cc.

References mConstituents.

Referenced by operator<<().

        {
                return mConstituents;
        }
int l1slhc::L1CaloCluster::hasConstituent ( const int &  eta,
const int &  phi 
)

Definition at line 342 of file L1CaloCluster.cc.

References i, mConstituents, mIeta, mIphi, and phi.

Referenced by L1CaloClusterFilter::calculateClusterPosition(), and removeConstituent().

        {
                for ( unsigned int i = 0; i < mConstituents.size(  ); ++i )
                {
                        L1CaloTowerRef tower = mConstituents.at( i );
                        if ( tower->iEta(  ) == mIeta + eta && tower->iPhi(  ) == mIphi + phi )
                        {
                                return i;
                        }
                }
                return -1;
        }
const bool & l1slhc::L1CaloCluster::hasLeadTower ( ) const

Definition at line 146 of file L1CaloCluster.cc.

References mLeadtowertau.

Referenced by isIsoTau(), and isTau().

        {
                return mLeadtowertau;
        }
const int & l1slhc::L1CaloCluster::iEta ( ) const
const int & l1slhc::L1CaloCluster::innerEta ( ) const

Definition at line 77 of file L1CaloCluster.cc.

References mInnereta.

        {
                return mInnereta;
        }
const int & l1slhc::L1CaloCluster::innerPhi ( ) const

Definition at line 82 of file L1CaloCluster.cc.

References mInnerphi.

        {
                return mInnerphi;
        }
const int & l1slhc::L1CaloCluster::iPhi ( ) const

Definition at line 72 of file L1CaloCluster.cc.

References mIphi.

Referenced by L1CaloClusterIsolator::algorithm(), L1CaloClusterFilter::calculateClusterPosition(), and operator<<().

        {
                return mIphi;
        }
const bool & l1slhc::L1CaloCluster::isCentral ( ) const

Definition at line 167 of file L1CaloCluster.cc.

References mCentral.

Referenced by isEGamma(), isIsoEGamma(), isIsoTau(), isTau(), and operator<<().

        {
                return mCentral;
        }
bool l1slhc::L1CaloCluster::isEGamma ( ) const

Definition at line 192 of file L1CaloCluster.cc.

References eGamma(), fg(), and isCentral().

        {
                return ( !fg(  ) && eGamma(  ) && isCentral(  ) );
        }
bool l1slhc::L1CaloCluster::isIsoEGamma ( ) const

Definition at line 197 of file L1CaloCluster.cc.

References eGamma(), fg(), isCentral(), and isoEG().

        {
                return ( !fg(  ) && eGamma(  ) && isoEG(  ) && isCentral(  ) );
        }
bool l1slhc::L1CaloCluster::isIsoTau ( ) const

Definition at line 202 of file L1CaloCluster.cc.

References hasLeadTower(), isCentral(), and isoTau().

        {
                return hasLeadTower(  ) && isoTau(  ) && isCentral(  );
        }
const int & l1slhc::L1CaloCluster::isoClustersEG ( ) const

Definition at line 172 of file L1CaloCluster.cc.

References mIsoclusterseg.

        {
                return mIsoclusterseg;
        }
const int & l1slhc::L1CaloCluster::isoClustersTau ( ) const

Definition at line 177 of file L1CaloCluster.cc.

References mIsoclusterstau.

        {
                return mIsoclusterstau;
        }
const bool & l1slhc::L1CaloCluster::isoEG ( ) const

Definition at line 157 of file L1CaloCluster.cc.

References mIsoeg.

Referenced by isIsoEGamma().

        {
                return mIsoeg;
        }
const int & l1slhc::L1CaloCluster::isoEnergyEG ( ) const

Definition at line 182 of file L1CaloCluster.cc.

References mIsoenergyeg.

        {
                return mIsoenergyeg;
        }
const int & l1slhc::L1CaloCluster::isoEnergyTau ( ) const

Definition at line 187 of file L1CaloCluster.cc.

References mIsoenergytau.

        {
                return mIsoenergytau;
        }
const bool & l1slhc::L1CaloCluster::isoTau ( ) const

Definition at line 162 of file L1CaloCluster.cc.

References mIsotau.

Referenced by isIsoTau().

        {
                return mIsotau;
        }
bool l1slhc::L1CaloCluster::isTau ( ) const

Definition at line 207 of file L1CaloCluster.cc.

References hasLeadTower(), and isCentral().

        {
                return hasLeadTower(  ) && isCentral(  );
        }
const int & l1slhc::L1CaloCluster::LeadTowerE ( ) const

Definition at line 94 of file L1CaloCluster.cc.

References mLeadTowerE.

Referenced by L1CaloClusterIsolator::algorithm().

        {
                return mLeadTowerE;
        }
const math::PtEtaPhiMLorentzVector & l1slhc::L1CaloCluster::p4 ( ) const

Definition at line 378 of file L1CaloCluster.cc.

References mP4.

Referenced by operator<<().

        {
                return mP4;
        }
void l1slhc::L1CaloCluster::removeConstituent ( const int &  eta,
const int &  phi 
)

Definition at line 363 of file L1CaloCluster.cc.

References hasConstituent(), mConstituents, mE, and pos.

Referenced by L1CaloClusterFilter::algorithm().

        {

                int pos = hasConstituent( eta, phi );

                if ( pos != -1 )
                {
                        mE = mE - mConstituents.at( pos )->E(  );
                        mE = mE - mConstituents.at( pos )->H(  );
                        mConstituents.erase( mConstituents.begin(  ) + pos );
                }
        }
const int & l1slhc::L1CaloCluster::Ring1E ( ) const

Definition at line 115 of file L1CaloCluster.cc.

References mRing1E.

Referenced by L1CaloClusterIsolator::algorithm(), and setRing1E().

        {
                return mRing1E;
        }
const int & l1slhc::L1CaloCluster::Ring2E ( ) const

Definition at line 121 of file L1CaloCluster.cc.

References mRing2E.

Referenced by L1CaloClusterIsolator::algorithm(), and setRing2E().

        {
                return mRing2E;
        }
const int & l1slhc::L1CaloCluster::Ring3E ( ) const

Definition at line 126 of file L1CaloCluster.cc.

References mRing3E.

Referenced by L1CaloClusterIsolator::algorithm(), and setRing3E().

        {
                return mRing3E;
        }
const int & l1slhc::L1CaloCluster::Ring4E ( ) const

Definition at line 131 of file L1CaloCluster.cc.

References mRing4E.

Referenced by L1CaloClusterIsolator::algorithm(), and setRing4E().

        {
                return mRing4E;
        }
const int & l1slhc::L1CaloCluster::SecondTowerE ( ) const

Definition at line 99 of file L1CaloCluster.cc.

References mSecondTowerE.

Referenced by L1CaloClusterIsolator::algorithm().

        {
                return mSecondTowerE;
        }
void l1slhc::L1CaloCluster::setCentral ( const bool &  eg)

Definition at line 317 of file L1CaloCluster.cc.

References mCentral.

Referenced by L1CaloClusterFilter::algorithm().

        {
                mCentral = eg;
        }
void l1slhc::L1CaloCluster::setConstituents ( const L1CaloTowerRefVector cons)

Definition at line 261 of file L1CaloCluster.cc.

References mConstituents.

        {
                mConstituents = cons;
        }
void l1slhc::L1CaloCluster::setE ( const int &  E)

Definition at line 213 of file L1CaloCluster.cc.

References E(), and mE.

        {
                mE = E;
        }
void l1slhc::L1CaloCluster::setEGamma ( const bool &  eg)

Definition at line 278 of file L1CaloCluster.cc.

References mEgamma.

Referenced by L1CaloClusterProducer::algorithm().

        {
                mEgamma = eg;
        }
void l1slhc::L1CaloCluster::setEGammaValue ( const int &  eg)

Definition at line 289 of file L1CaloCluster.cc.

References mEgammavalue.

Referenced by L1CaloClusterProducer::algorithm().

        {
                mEgammavalue = eg;
        }
void l1slhc::L1CaloCluster::setFg ( const bool &  fg)

Definition at line 272 of file L1CaloCluster.cc.

References fg(), and mFg.

Referenced by L1CaloClusterProducer::algorithm().

        {
                mFg = fg;
        }
void l1slhc::L1CaloCluster::setFourthTowerE ( const int &  E)

Definition at line 234 of file L1CaloCluster.cc.

References E(), and mFourthTowerE.

        {
                mFourthTowerE = E;
        }
void l1slhc::L1CaloCluster::setIsoClusters ( const int &  eg,
const int &  tau 
)

Definition at line 304 of file L1CaloCluster.cc.

References mIsoclusterseg, mIsoclusterstau, and metsig::tau.

Referenced by L1CaloClusterIsolator::algorithm().

void l1slhc::L1CaloCluster::setIsoEG ( const bool &  eg)

Definition at line 294 of file L1CaloCluster.cc.

References mIsoeg.

Referenced by L1CaloClusterIsolator::algorithm().

        {
                mIsoeg = eg;
        }
void l1slhc::L1CaloCluster::setIsoEnergy ( const int &  eg,
const int &  tau 
)

Definition at line 310 of file L1CaloCluster.cc.

References mIsoenergyeg, mIsoenergytau, and metsig::tau.

Referenced by L1CaloClusterIsolator::algorithm().

void l1slhc::L1CaloCluster::setIsoTau ( const bool &  eg)

Definition at line 299 of file L1CaloCluster.cc.

References mIsotau.

Referenced by L1CaloClusterIsolator::algorithm().

        {
                mIsotau = eg;
        }
void l1slhc::L1CaloCluster::setLeadTower ( const bool &  eg)

Definition at line 283 of file L1CaloCluster.cc.

References mLeadtowertau.

Referenced by L1CaloClusterProducer::algorithm().

        {
                mLeadtowertau = eg;
        }
void l1slhc::L1CaloCluster::setLeadTowerE ( const int &  E)

Definition at line 219 of file L1CaloCluster.cc.

References E(), and mLeadTowerE.

Referenced by L1CaloClusterProducer::algorithm().

        {
                mLeadTowerE = E;
        }
void l1slhc::L1CaloCluster::setLorentzVector ( const math::PtEtaPhiMLorentzVector v)

Definition at line 329 of file L1CaloCluster.cc.

References mP4, and v.

Referenced by L1CaloClusterFilter::calculateClusterPosition().

        {
                mP4 = v;
        }
void l1slhc::L1CaloCluster::setPosBits ( const int &  eta,
const int &  phi 
)

Definition at line 322 of file L1CaloCluster.cc.

References eta, mInnereta, mInnerphi, and phi.

Referenced by L1CaloClusterFilter::calculateClusterPosition().

void l1slhc::L1CaloCluster::setRing1E ( const int &  Ring1E)

Definition at line 240 of file L1CaloCluster.cc.

References mRing1E, and Ring1E().

Referenced by L1CaloClusterIsolator::algorithm().

        {
                mRing1E = Ring1E;
        }
void l1slhc::L1CaloCluster::setRing2E ( const int &  Ring2E)

Definition at line 246 of file L1CaloCluster.cc.

References mRing2E, and Ring2E().

Referenced by L1CaloClusterIsolator::algorithm().

        {
                mRing2E = Ring2E;
        }
void l1slhc::L1CaloCluster::setRing3E ( const int &  Ring3E)

Definition at line 251 of file L1CaloCluster.cc.

References mRing3E, and Ring3E().

Referenced by L1CaloClusterIsolator::algorithm().

        {
                mRing3E = Ring3E;
        }
void l1slhc::L1CaloCluster::setRing4E ( const int &  Ring4E)

Definition at line 256 of file L1CaloCluster.cc.

References mRing4E, and Ring4E().

Referenced by L1CaloClusterIsolator::algorithm().

        {
                mRing4E = Ring4E;
        }
void l1slhc::L1CaloCluster::setSecondTowerE ( const int &  E)

Definition at line 224 of file L1CaloCluster.cc.

References E(), and mSecondTowerE.

        {
                mSecondTowerE = E;
        }
void l1slhc::L1CaloCluster::setThirdTowerE ( const int &  E)

Definition at line 229 of file L1CaloCluster.cc.

References E(), and mThirdTowerE.

        {
                mThirdTowerE = E;
        }
const int & l1slhc::L1CaloCluster::ThirdTowerE ( ) const

Definition at line 104 of file L1CaloCluster.cc.

References mThirdTowerE.

Referenced by L1CaloClusterIsolator::algorithm().

        {
                return mThirdTowerE;
        }

Friends And Related Function Documentation

bool operator== ( const l1slhc::L1CaloCluster a,
const l1slhc::L1CaloCluster b 
) [friend]

Definition at line 20 of file L1CaloCluster.h.

                {
                        if ( a.mIeta != b.mIeta )
                                return false;
                        if ( a.mIphi != b.mIphi )
                                return false;
                        if ( a.mFg != b.mFg )
                                return false;
                        if ( a.mEgamma != b.mEgamma )
                                return false;
                        if ( a.mLeadtowertau != b.mLeadtowertau )
                                return false;
                        if ( a.mEgammavalue != b.mEgammavalue )
                                return false;
                        if ( a.mInnereta != b.mInnereta )
                                return false;
                        if ( a.mInnerphi != b.mInnerphi )
                                return false;
                        if ( a.mIsoclusterseg != b.mIsoclusterseg )
                                return false;
                        if ( a.mIsoclusterstau != b.mIsoclusterstau )
                                return false;
                        if ( a.mIsoeg != b.mIsoeg )
                                return false;
                        if ( a.mIsotau != b.mIsotau )
                                return false;
                        if ( a.mCentral != b.mCentral )
                                return false;
                        if ( a.mE != b.mE )
                                return false;
                        if ( a.mP4 != b.mP4 )
                                return false;
                        return true;
                }

Member Data Documentation

Definition at line 152 of file L1CaloCluster.h.

Referenced by isCentral(), and setCentral().

Definition at line 139 of file L1CaloCluster.h.

Referenced by addConstituent(), E(), removeConstituent(), and setE().

Definition at line 151 of file L1CaloCluster.h.

Referenced by eGamma(), and setEGamma().

Definition at line 156 of file L1CaloCluster.h.

Referenced by eGammaValue(), and setEGammaValue().

Definition at line 150 of file L1CaloCluster.h.

Referenced by fg(), and setFg().

Definition at line 143 of file L1CaloCluster.h.

Referenced by FourthTowerE(), and setFourthTowerE().

Definition at line 137 of file L1CaloCluster.h.

Referenced by hasConstituent(), and iEta().

Definition at line 157 of file L1CaloCluster.h.

Referenced by innerEta(), and setPosBits().

Definition at line 158 of file L1CaloCluster.h.

Referenced by innerPhi(), and setPosBits().

Definition at line 138 of file L1CaloCluster.h.

Referenced by hasConstituent(), and iPhi().

Definition at line 159 of file L1CaloCluster.h.

Referenced by isoClustersEG(), and setIsoClusters().

Definition at line 162 of file L1CaloCluster.h.

Referenced by isoClustersTau(), and setIsoClusters().

Definition at line 153 of file L1CaloCluster.h.

Referenced by isoEG(), and setIsoEG().

Definition at line 160 of file L1CaloCluster.h.

Referenced by isoEnergyEG(), and setIsoEnergy().

Definition at line 161 of file L1CaloCluster.h.

Referenced by isoEnergyTau(), and setIsoEnergy().

Definition at line 155 of file L1CaloCluster.h.

Referenced by isoTau(), and setIsoTau().

Definition at line 140 of file L1CaloCluster.h.

Referenced by LeadTowerE(), and setLeadTowerE().

Definition at line 154 of file L1CaloCluster.h.

Referenced by hasLeadTower(), and setLeadTower().

Definition at line 164 of file L1CaloCluster.h.

Referenced by p4(), and setLorentzVector().

Definition at line 144 of file L1CaloCluster.h.

Referenced by Ring1E(), and setRing1E().

Definition at line 145 of file L1CaloCluster.h.

Referenced by Ring2E(), and setRing2E().

Definition at line 146 of file L1CaloCluster.h.

Referenced by Ring3E(), and setRing3E().

Definition at line 147 of file L1CaloCluster.h.

Referenced by Ring4E(), and setRing4E().

Definition at line 141 of file L1CaloCluster.h.

Referenced by SecondTowerE(), and setSecondTowerE().

Definition at line 142 of file L1CaloCluster.h.

Referenced by setThirdTowerE(), and ThirdTowerE().