CMS 3D CMS Logo

L1TMuonAssignedInternalTrackProducer.cc
Go to the documentation of this file.
1 //
2 // Class: L1TMuonAssignedInternalTrackProducer
3 //
4 // Info: A configurable track processor where the pt assignment/refinement
5 // algorithms are controlled by config files.
6 // The closest representation of this in the old hardware is
7 // the pt lookup table
8 //
9 // Author: L. Gray (FNAL)
10 //
11 
12 #include <memory>
13 #include <map>
14 
20 
21 #include "L1Trigger/L1TMuonEndCap/interface/MuonTriggerPrimitive.h"
22 #include "L1Trigger/L1TMuonEndCap/interface/MuonTriggerPrimitiveFwd.h"
23 
26 
27 // interface to Pt assignment and refinement
30 
32 
33 using namespace L1TMuon;
34 
36 typedef std::unique_ptr<PtAssignmentUnit> pPAU;
37 typedef std::unique_ptr<PtRefinementUnit> pPRU;
38 
40 public:
43 
44  void produce(edm::Event&, const edm::EventSetup&);
45 private:
48 };
49 
51  // configure and build pt assignment unit
52  std::unique_ptr<PtAssignmentUnitFactory>
54  if( p.existsAs<PSet>("PtAssignmentUnit") ) {
55  PSet PAU_config = p.getParameterSet("PtAssignmentUnit");
56  std::string PAU_type = p.getParameter<std::string>("type");
57  _ptassign.reset( fPAU->create( PAU_type,
58  PAU_config) );
59  } else {
60  _ptassign.reset(NULL);
61  }
62  // configure and build pt refinement unit
63  std::unique_ptr<PtRefinementUnitFactory>
65  if( p.existsAs<PSet>("PtRefinementUnit") ) {
66  PSet PRU_config = p.getParameterSet("PtRefinementUnit");
67  std::string PRU_type = p.getParameter<std::string>("type");
68  _ptrefine.reset( fPRU->create( PRU_type,
69  PRU_config) );
70  } else {
71  _ptrefine.reset(NULL);
72  }
73 
74  fPAU.release();
75  fPRU.release();
76 }
77 
79  const edm::EventSetup& es) {
80 }
81 
T getParameter(std::string const &) const
bool existsAs(std::string const &parameterName, bool trackiness=true) const
checks if a parameter exists as a given type
Definition: ParameterSet.h:186
#define DEFINE_FWK_MODULE(type)
Definition: MakerMacros.h:17
std::unique_ptr< PtRefinementUnit > pPRU
edm::ParameterSet PSet
#define NULL
Definition: scimark2.h:8
bool ev
std::unique_ptr< PtAssignmentUnit > pPAU
void produce(edm::Event &, const edm::EventSetup &)
ParameterSet const & getParameterSet(std::string const &) const
T get(const Candidate &c)
Definition: component.h:55