CMS 3D CMS Logo

CMSMidpointAlgorithm.cc File Reference

#include "DataFormats/Candidate/interface/Candidate.h"
#include "DataFormats/Math/interface/deltaR.h"
#include "RecoJets/JetAlgorithms/interface/ProtoJet.h"
#include "RecoJets/JetAlgorithms/interface/JetAlgoHelper.h"
#include "RecoJets/JetAlgorithms/interface/CMSMidpointAlgorithm.h"

Go to the source code of this file.

Functions

std::vector< InputItemetOrderedCaloTowers (const InputCollection &fInput, double etThreshold)
bool sameTower (InputItem c1, InputItem c2)
std::vector< InputItemtowersWithinCone (const InputCollection &fInput, double coneEta, double conePhi, double coneRadius)


Function Documentation

std::vector<InputItem> @13064::etOrderedCaloTowers ( const InputCollection &  fInput,
double  etThreshold 
) [static]

Definition at line 69 of file CMSMidpointAlgorithm.cc.

References HLT_VtxMuL3::result, and python::multivaluedict::sort().

Referenced by CMSMidpointAlgorithm::findStableConesFromSeeds().

00069                                                                                               {
00070     std::vector<InputItem> result;
00071     InputCollection::const_iterator towerIter = fInput.begin();
00072     InputCollection::const_iterator towerIterEnd = fInput.end();
00073     for (;towerIter != towerIterEnd; ++towerIter) {
00074       InputItem caloTowerPointer = *towerIter;
00075       if(caloTowerPointer->et() > etThreshold){
00076         result.push_back(caloTowerPointer);
00077       }
00078     }   
00079     GreaterByEtRef <InputItem> compCandidate;
00080     sort (result.begin(), result.end(), compCandidate);
00081     return result;
00082   }

bool @13064::sameTower ( InputItem  c1,
InputItem  c2 
) [static]

Definition at line 49 of file CMSMidpointAlgorithm.cc.

Referenced by CMSMidpointAlgorithm::splitAndMerge().

00049                                               {
00050     return c1 == c2;
00051   }

std::vector<InputItem> @13064::towersWithinCone ( const InputCollection &  fInput,
double  coneEta,
double  conePhi,
double  coneRadius 
) [static]

Definition at line 53 of file CMSMidpointAlgorithm.cc.

References deltaR2(), r2, and HLT_VtxMuL3::result.

Referenced by CMSMidpointAlgorithm::iterateCone().

00053                                                                                                                          {
00054     std::vector<InputItem> result;
00055     double r2 = coneRadius*coneRadius;
00056     InputCollection::const_iterator towerIter = fInput.begin();
00057     InputCollection::const_iterator towerIterEnd = fInput.end();
00058     for (;towerIter != towerIterEnd; ++towerIter) {
00059       InputItem caloTowerPointer = *towerIter;
00060       double dR2 = deltaR2 (coneEta, conePhi, caloTowerPointer->eta(), caloTowerPointer->phi());
00061       if(dR2 < r2){
00062         result.push_back(caloTowerPointer);
00063       }
00064     }
00065     return result;
00066   }


Generated on Tue Jun 9 17:55:17 2009 for CMSSW by  doxygen 1.5.4