CMS 3D CMS Logo

Classes | Public Types | Public Member Functions | Private Member Functions | Private Attributes

lhef::JetClustering Class Reference

#include <JetClustering.h>

List of all members.

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, double jetPtMin)
 JetClustering (const edm::ParameterSet &params)
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().

{
        double jetPtMin = params.getParameter<double>("jetPtMin");
        init(params, jetPtMin);
}
lhef::JetClustering::JetClustering ( const edm::ParameterSet params,
double  jetPtMin 
)

Definition at line 162 of file JetClustering.cc.

References init().

{
        init(params, jetPtMin);
}
lhef::JetClustering::~JetClustering ( )

Definition at line 168 of file JetClustering.cc.

{
}

Member Function Documentation

double lhef::JetClustering::getJetPtMin ( ) const

Definition at line 188 of file JetClustering.cc.

References jetAlgo.

{
        return jetAlgo->getJetPtMin();
}
void lhef::JetClustering::init ( const edm::ParameterSet params,
double  jetPtMin 
) [private]

Definition at line 172 of file JetClustering.cc.

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

Referenced by JetClustering().

{
        edm::ParameterSet algoParams =
                        params.getParameter<edm::ParameterSet>("algorithm");
        std::string algoName = algoParams.getParameter<std::string>("name");

        if (algoName == "KT")
                jetAlgo.reset(new KtAlgorithm(algoParams, jetPtMin));
        else if (algoName == "SISCone")
                jetAlgo.reset(new SISConeAlgorithm(algoParams, jetPtMin));
        else
                throw cms::Exception("Configuration")
                        << "JetClustering algorithm \"" << algoName
                        << "\" unknown." << std::endl;
}
std::vector< JetClustering::Jet > lhef::JetClustering::operator() ( const ParticleVector input) const

Definition at line 193 of file JetClustering.cc.

References collect_tpl::input, and jetAlgo.

{
        return (*jetAlgo)(input);
}

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()().