CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Classes | Public Types | Public Member Functions | Private Member Functions | Private Attributes
lhef::JetClustering Class Reference

#include <JetClustering.h>

Classes

class  Algorithm
 
class  Jet
 

Public Types

typedef ROOT::Math::PxPyPzE4D
< double > 
FourVector
 
typedef JetInput::ParticleVector ParticleVector
 

Public Member Functions

double getJetPtMin () const
 
 JetClustering (const edm::ParameterSet &params)
 
 JetClustering (const edm::ParameterSet &params, double jetPtMin)
 
std::vector< Jetoperator() (const ParticleVector &input) const
 
 ~JetClustering ()
 

Private Member Functions

void init (const edm::ParameterSet &params, double jetPtMin)
 

Private Attributes

std::auto_ptr< AlgorithmjetAlgo
 

Detailed Description

Definition at line 15 of file JetClustering.h.

Member Typedef Documentation

typedef ROOT::Math::PxPyPzE4D<double> lhef::JetClustering::FourVector

Definition at line 18 of file JetClustering.h.

Definition at line 17 of file JetClustering.h.

Constructor & Destructor Documentation

lhef::JetClustering::JetClustering ( const edm::ParameterSet params)

Definition at line 156 of file JetClustering.cc.

References edm::ParameterSet::getParameter(), and init().

157 {
158  double jetPtMin = params.getParameter<double>("jetPtMin");
159  init(params, jetPtMin);
160 }
T getParameter(std::string const &) const
void init(const edm::ParameterSet &params, double jetPtMin)
lhef::JetClustering::JetClustering ( const edm::ParameterSet params,
double  jetPtMin 
)

Definition at line 162 of file JetClustering.cc.

References init().

164 {
165  init(params, jetPtMin);
166 }
void init(const edm::ParameterSet &params, double jetPtMin)
lhef::JetClustering::~JetClustering ( )

Definition at line 168 of file JetClustering.cc.

169 {
170 }

Member Function Documentation

double lhef::JetClustering::getJetPtMin ( ) const

Definition at line 188 of file JetClustering.cc.

References jetAlgo.

189 {
190  return jetAlgo->getJetPtMin();
191 }
std::auto_ptr< Algorithm > jetAlgo
Definition: JetClustering.h:70
void lhef::JetClustering::init ( const edm::ParameterSet params,
double  jetPtMin 
)
private

Definition at line 172 of file JetClustering.cc.

References edm::hlt::Exception, edm::ParameterSet::getParameter(), and jetAlgo.

Referenced by JetClustering().

173 {
174  edm::ParameterSet algoParams =
175  params.getParameter<edm::ParameterSet>("algorithm");
176  std::string algoName = algoParams.getParameter<std::string>("name");
177 
178  if (algoName == "KT")
179  jetAlgo.reset(new KtAlgorithm(algoParams, jetPtMin));
180  else if (algoName == "SISCone")
181  jetAlgo.reset(new SISConeAlgorithm(algoParams, jetPtMin));
182  else
183  throw cms::Exception("Configuration")
184  << "JetClustering algorithm \"" << algoName
185  << "\" unknown." << std::endl;
186 }
T getParameter(std::string const &) const
std::auto_ptr< Algorithm > jetAlgo
Definition: JetClustering.h:70
std::vector< JetClustering::Jet > lhef::JetClustering::operator() ( const ParticleVector input) const

Definition at line 193 of file JetClustering.cc.

References LaserDQM_cfg::input, and jetAlgo.

195 {
196  return (*jetAlgo)(input);
197 }
std::auto_ptr< Algorithm > jetAlgo
Definition: JetClustering.h:70

Member Data Documentation

std::auto_ptr<Algorithm> lhef::JetClustering::jetAlgo
private

Definition at line 70 of file JetClustering.h.

Referenced by getJetPtMin(), init(), and operator()().