CMS 3D CMS Logo

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

#include <Stage1Layer2MainProcessorFirmware.h>

Inheritance diagram for l1t::Stage1Layer2MainProcessorFirmwareImp1:
l1t::Stage1Layer2MainProcessor

Public Member Functions

virtual void processEvent (const std::vector< CaloEmCand > &, const std::vector< CaloRegion > &, std::vector< EGamma > *egammas, std::vector< Tau > *taus, std::vector< Tau > *isoTaus, std::vector< Jet > *jets, std::vector< Jet > *preGtJets, std::vector< EtSum > *etsums, CaloSpare *hfSums, CaloSpare *hfCounts)
 
 Stage1Layer2MainProcessorFirmwareImp1 (const int fwv, CaloParamsHelper *dbPars)
 
virtual ~Stage1Layer2MainProcessorFirmwareImp1 ()
 
- Public Member Functions inherited from l1t::Stage1Layer2MainProcessor
virtual ~Stage1Layer2MainProcessor ()
 

Private Attributes

CaloParamsHelperm_db
 
Stage1Layer2EGammaAlgorithmm_egAlgo
 
int m_fwv
 
Stage1Layer2HFBitCountAlgorithmm_hfBitAlgo
 
Stage1Layer2HFRingSumAlgorithmm_hfRingAlgo
 
Stage1Layer2JetAlgorithmm_jetAlgo
 
Stage1Layer2EtSumAlgorithmm_sumAlgo
 
Stage1Layer2TauAlgorithmm_tauAlgo
 

Detailed Description

Author
: R. Alex Barbieri MIT

Definition at line 29 of file Stage1Layer2MainProcessorFirmware.h.

Constructor & Destructor Documentation

Stage1Layer2MainProcessorFirmwareImp1::Stage1Layer2MainProcessorFirmwareImp1 ( const int  fwv,
CaloParamsHelper dbPars 
)

Definition at line 21 of file Stage1Layer2MainProcessorFirmwareImp1.cc.

References m_db, m_egAlgo, m_fwv, m_hfBitAlgo, m_hfRingAlgo, m_jetAlgo, m_sumAlgo, m_tauAlgo, and NULL.

21  : m_fwv(fwv), m_db(dbPars) {
22  if (m_fwv == 1)
23  { //HI algo
26  m_jetAlgo = new Stage1Layer2JetAlgorithmImpHI(m_db); //fwv =1 => HI algo
27  m_tauAlgo = new Stage1Layer2SingleTrackHI(m_db); //fwv=1 => single track seed
30  // m_hfRingAlgo = new Stage1Layer2FlowAlgorithm(m_db);
31  // m_hfBitAlgo = new Stage1Layer2CentralityAlgorithm(m_db);
32  }
33  else if( m_fwv == 2 )
34  { //PP algorithm
37  m_jetAlgo = new Stage1Layer2JetAlgorithmImpPP(m_db); //fwv =2 => PP algo
40  m_hfBitAlgo = NULL;
41  }
42  else if ( m_fwv == 3 )
43  { // hw testing algorithms
50  }
51  else{ // undefined fwv version
52  edm::LogError("FWVersionError")
53  << "Undefined firmware version passed to Stage1Layer2MainProcessorFirmwareImp1" << std::endl;
54  return;
55  }
56 }
#define NULL
Definition: scimark2.h:8
Stage1Layer2MainProcessorFirmwareImp1::~Stage1Layer2MainProcessorFirmwareImp1 ( )
virtual

Definition at line 58 of file Stage1Layer2MainProcessorFirmwareImp1.cc.

References m_egAlgo, m_hfBitAlgo, m_hfRingAlgo, m_jetAlgo, m_sumAlgo, and m_tauAlgo.

58  {
59  delete m_jetAlgo;
60  delete m_egAlgo;
61  delete m_tauAlgo;
62  delete m_sumAlgo;
63  delete m_hfRingAlgo;
64  delete m_hfBitAlgo;
65 };

Member Function Documentation

void Stage1Layer2MainProcessorFirmwareImp1::processEvent ( const std::vector< CaloEmCand > &  emcands,
const std::vector< CaloRegion > &  regions,
std::vector< EGamma > *  egammas,
std::vector< Tau > *  taus,
std::vector< Tau > *  isoTaus,
std::vector< Jet > *  jets,
std::vector< Jet > *  preGtJets,
std::vector< EtSum > *  etsums,
CaloSpare hfSums,
CaloSpare hfCounts 
)
virtual

Implements l1t::Stage1Layer2MainProcessor.

Definition at line 67 of file Stage1Layer2MainProcessorFirmwareImp1.cc.

References m_egAlgo, m_hfBitAlgo, m_hfRingAlgo, m_jetAlgo, m_sumAlgo, m_tauAlgo, l1t::Stage1Layer2JetAlgorithm::processEvent(), l1t::Stage1Layer2EtSumAlgorithm::processEvent(), l1t::Stage1Layer2HFBitCountAlgorithm::processEvent(), l1t::Stage1Layer2HFRingSumAlgorithm::processEvent(), l1t::Stage1Layer2TauAlgorithm::processEvent(), and l1t::Stage1Layer2EGammaAlgorithm::processEvent().

76  {
77  if(m_jetAlgo)
78  m_jetAlgo->processEvent(regions, emcands, jets, preGtJets); // need to run jets before MHT
79  if(m_egAlgo)
80  m_egAlgo->processEvent(emcands, regions, jets, egammas);
81  if(m_tauAlgo)
82  m_tauAlgo->processEvent(emcands, regions, isoTaus, taus);
83  if(m_sumAlgo)
84  m_sumAlgo->processEvent(regions, emcands, jets, etsums); //MHT uses jets for phi calculation
85  if(m_hfRingAlgo)
86  m_hfRingAlgo->processEvent(regions, emcands, isoTaus, HFringsums);
87  if(m_hfBitAlgo)
88  m_hfBitAlgo->processEvent(regions, emcands, HFbitcounts);
89 
90 }
virtual void processEvent(const std::vector< l1t::CaloRegion > &regions, const std::vector< l1t::CaloEmCand > &EMCands, const std::vector< l1t::Jet > *jets, std::vector< l1t::EtSum > *sums)=0
virtual void processEvent(const std::vector< l1t::CaloRegion > &regions, const std::vector< l1t::CaloEmCand > &EMCands, l1t::CaloSpare *spare)=0
virtual void processEvent(const std::vector< l1t::CaloRegion > &regions, const std::vector< l1t::CaloEmCand > &EMCands, std::vector< l1t::Jet > *jets, std::vector< l1t::Jet > *preGtJets)=0
vector< PseudoJet > jets
virtual void processEvent(const std::vector< l1t::CaloEmCand > &EMCands, const std::vector< l1t::CaloRegion > &regions, const std::vector< l1t::Jet > *jets, std::vector< l1t::EGamma > *egammas)=0
virtual void processEvent(const std::vector< l1t::CaloEmCand > &clusters, const std::vector< l1t::CaloRegion > &regions, std::vector< l1t::Tau > *isoTaus, std::vector< l1t::Tau > *taus)=0
virtual void processEvent(const std::vector< l1t::CaloRegion > &regions, const std::vector< l1t::CaloEmCand > &EMCands, const std::vector< l1t::Tau > *taus, l1t::CaloSpare *spare)=0

Member Data Documentation

CaloParamsHelper* l1t::Stage1Layer2MainProcessorFirmwareImp1::m_db
private
Stage1Layer2EGammaAlgorithm* l1t::Stage1Layer2MainProcessorFirmwareImp1::m_egAlgo
private
int l1t::Stage1Layer2MainProcessorFirmwareImp1::m_fwv
private
Stage1Layer2HFBitCountAlgorithm* l1t::Stage1Layer2MainProcessorFirmwareImp1::m_hfBitAlgo
private
Stage1Layer2HFRingSumAlgorithm* l1t::Stage1Layer2MainProcessorFirmwareImp1::m_hfRingAlgo
private
Stage1Layer2JetAlgorithm* l1t::Stage1Layer2MainProcessorFirmwareImp1::m_jetAlgo
private
Stage1Layer2EtSumAlgorithm* l1t::Stage1Layer2MainProcessorFirmwareImp1::m_sumAlgo
private
Stage1Layer2TauAlgorithm* l1t::Stage1Layer2MainProcessorFirmwareImp1::m_tauAlgo
private