CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
L1ExtraParticleMapProd.h
Go to the documentation of this file.
1 #ifndef L1ExtraFromDigis_L1ExtraParticleMapProd_h
2 #define L1ExtraFromDigis_L1ExtraParticleMapProd_h
3 // -*- C++ -*-
4 //
5 // Package: L1ExtraFromDigis
6 // Class : L1ExtraParticleMapProd
7 //
12 //
13 // Original Author:
14 // Created: Tue Oct 17 00:14:00 EDT 2006
15 // $Id: L1ExtraParticleMapProd.h,v 1.11 2010/02/11 00:12:49 wmtan Exp $
16 //
17 
18 // system include files
19 
20 // user include files
27 
36 
37 // forward declarations
38 
40  public:
43 
44 
45  virtual void produce(edm::Event&, const edm::EventSetup&);
46  private:
47 
48  // Adds Refs to the objects in handle to the outputRefs vector.
49  template< class TCollection >
50  void addToVectorRefs(
51  const edm::Handle< TCollection >& handle, // input
52  std::vector< edm::Ref< TCollection > >& vectorRefs ) ; // output
53 
54  template< class TCollection >
56  const std::vector< edm::Ref< TCollection > >& inputRefs, // input
57  const double& etThreshold, // input
58  bool& decision, // output
59  std::vector< edm::Ref< TCollection > >& outputRefs ) ; // output
60 
61  template< class TCollection >
63  const std::vector< edm::Ref< TCollection > >& inputRefs, // input
64  const double& etThreshold, // input
65  bool& decision, // output
66  std::vector< edm::Ref< TCollection > >& outputRefs, // output
68  bool combinedWithGlobalObject = false ) ; // if true, add entry for
69  // HT or MET to particle combos
70 
71  template< class TCollection >
73  const std::vector< edm::Ref< TCollection > >& inputRefs, // input
74  const double& etThreshold, // input
75  bool& decision, // output
76  std::vector< edm::Ref< TCollection > >& outputRefs, // output
77  l1extra::L1ParticleMap::L1IndexComboVector& combos ) ; // output
78 
79  template< class TCollection1, class TCollection2 >
81  const std::vector< edm::Ref< TCollection1 > >& inputRefs1, // input
82  const std::vector< edm::Ref< TCollection2 > >& inputRefs2, // input
83  const double& etThreshold1, // input
84  const double& etThreshold2, // input
85  bool& decision, // output
86  std::vector< edm::Ref< TCollection1 > >& outputRefs1, // output
87  std::vector< edm::Ref< TCollection2 > >& outputRefs2, // output
88  l1extra::L1ParticleMap::L1IndexComboVector& combos ) ; // output
89 
90  template< class TCollection >
92  const std::vector< edm::Ref< TCollection > >& inputRefs, // input
93  const double& etThreshold, // input
94  bool& decision, // output
95  std::vector< edm::Ref< TCollection > >& outputRefs, // output
96  l1extra::L1ParticleMap::L1IndexComboVector& combos ) ; // output
97 
98  template< class TCollection1, class TCollection2 >
100  const std::vector< edm::Ref< TCollection1 > >& inputRefs1, // input
101  const std::vector< edm::Ref< TCollection2 > >& inputRefs2, // input
102  const double& etThreshold1, // input
103  const double& etThreshold2, // input
104  bool& decision, // output
105  std::vector< edm::Ref< TCollection1 > >& outputRefs1, // output
106  std::vector< edm::Ref< TCollection2 > >& outputRefs2, // output
107  l1extra::L1ParticleMap::L1IndexComboVector& combos ) ; // output
108 
109  template< class TCollection >
111  const std::vector< edm::Ref< TCollection > >& inputRefs1, // input
112  const std::vector< edm::Ref< TCollection > >& inputRefs2, // input
113  const double& etThreshold1, // input
114  const double& etThreshold2, // input
115  bool& decision, // output
116  std::vector< edm::Ref< TCollection > >& outputRefs, // output
117  l1extra::L1ParticleMap::L1IndexComboVector& combos ) ; // output
118 
120  const l1extra::L1EmParticleVectorRef& inputRefs1, // input
121  const l1extra::L1JetParticleVectorRef& inputRefs2, // input
122  const double& etThreshold1, // input
123  const double& etThreshold2, // input
124  bool& decision, // output
125  l1extra::L1EmParticleVectorRef& outputRefs1, // output
126  l1extra::L1JetParticleVectorRef& outputRefs2, // output
127  l1extra::L1ParticleMap::L1IndexComboVector& combos ) ; // output
128 
130  const l1extra::L1JetParticleVectorRef& inputRefs, // input
131  const double& etThreshold, // input
132  bool& decision, // output
133  l1extra::L1JetParticleVectorRef& outputRefs, // output
134  l1extra::L1ParticleMap::L1IndexComboVector& combos ); // output
135 
137  const l1extra::L1JetParticleVectorRef& inputRefs, // input
138  const double& etThreshold, // input
139  bool& decision ); // output
140 
142  const l1extra::L1EmParticleVectorRef& inputRefs1, // input
143  const l1extra::L1JetParticleVectorRef& inputRefs2, // input
144  const double& etThreshold1, // input
145  const double& etThreshold2, // input
146  bool& decision, // output
147  l1extra::L1EmParticleVectorRef& outputRefs1, // output
148  l1extra::L1ParticleMap::L1IndexComboVector& combos ); // output
149 
150  // ----------member data ---------------------------
159 
162  int prescaleCounters_[
164  std::pair< double, double >
166 };
167 
168 #endif
std::vector< L1EmParticleRef > L1EmParticleVectorRef
virtual void produce(edm::Event &, const edm::EventSetup &)
std::vector< L1JetParticleRef > L1JetParticleVectorRef
void evaluateQuadSameObjectTrigger(const std::vector< edm::Ref< TCollection > > &inputRefs, const double &etThreshold, bool &decision, std::vector< edm::Ref< TCollection > > &outputRefs, l1extra::L1ParticleMap::L1IndexComboVector &combos)
void evaluateDoublePlusSingleObjectTrigger(const std::vector< edm::Ref< TCollection1 > > &inputRefs1, const std::vector< edm::Ref< TCollection2 > > &inputRefs2, const double &etThreshold1, const double &etThreshold2, bool &decision, std::vector< edm::Ref< TCollection1 > > &outputRefs1, std::vector< edm::Ref< TCollection2 > > &outputRefs2, l1extra::L1ParticleMap::L1IndexComboVector &combos)
void evaluateForwardRapidityGap(const l1extra::L1JetParticleVectorRef &inputRefs, const double &etThreshold, bool &decision)
void evaluateDoubleDifferentObjectSameTypeTrigger(const std::vector< edm::Ref< TCollection > > &inputRefs1, const std::vector< edm::Ref< TCollection > > &inputRefs2, const double &etThreshold1, const double &etThreshold2, bool &decision, std::vector< edm::Ref< TCollection > > &outputRefs, l1extra::L1ParticleMap::L1IndexComboVector &combos)
std::vector< L1IndexCombo > L1IndexComboVector
tuple handle
Definition: patZpeak.py:22
void evaluateDoubleSameObjectTrigger(const std::vector< edm::Ref< TCollection > > &inputRefs, const double &etThreshold, bool &decision, std::vector< edm::Ref< TCollection > > &outputRefs, l1extra::L1ParticleMap::L1IndexComboVector &combos, bool combinedWithGlobalObject=false)
int prescaleCounters_[l1extra::L1ParticleMap::kNumOfL1TriggerTypes]
double singleThresholds_[l1extra::L1ParticleMap::kNumOfL1TriggerTypes]
std::pair< double, double > doubleThresholds_[l1extra::L1ParticleMap::kNumOfL1TriggerTypes]
void evaluateDoubleExclusiveIsoEG(const l1extra::L1EmParticleVectorRef &inputRefs1, const l1extra::L1JetParticleVectorRef &inputRefs2, const double &etThreshold1, const double &etThreshold2, bool &decision, l1extra::L1EmParticleVectorRef &outputRefs1, l1extra::L1ParticleMap::L1IndexComboVector &combos)
void evaluateDoubleDifferentCaloObjectTrigger(const l1extra::L1EmParticleVectorRef &inputRefs1, const l1extra::L1JetParticleVectorRef &inputRefs2, const double &etThreshold1, const double &etThreshold2, bool &decision, l1extra::L1EmParticleVectorRef &outputRefs1, l1extra::L1JetParticleVectorRef &outputRefs2, l1extra::L1ParticleMap::L1IndexComboVector &combos)
void evaluateTripleSameObjectTrigger(const std::vector< edm::Ref< TCollection > > &inputRefs, const double &etThreshold, bool &decision, std::vector< edm::Ref< TCollection > > &outputRefs, l1extra::L1ParticleMap::L1IndexComboVector &combos)
void evaluateSingleObjectTrigger(const std::vector< edm::Ref< TCollection > > &inputRefs, const double &etThreshold, bool &decision, std::vector< edm::Ref< TCollection > > &outputRefs)
int prescales_[l1extra::L1ParticleMap::kNumOfL1TriggerTypes]
L1ExtraParticleMapProd(const edm::ParameterSet &)
void evaluateDoubleDifferentObjectTrigger(const std::vector< edm::Ref< TCollection1 > > &inputRefs1, const std::vector< edm::Ref< TCollection2 > > &inputRefs2, const double &etThreshold1, const double &etThreshold2, bool &decision, std::vector< edm::Ref< TCollection1 > > &outputRefs1, std::vector< edm::Ref< TCollection2 > > &outputRefs2, l1extra::L1ParticleMap::L1IndexComboVector &combos)
void addToVectorRefs(const edm::Handle< TCollection > &handle, std::vector< edm::Ref< TCollection > > &vectorRefs)
void evaluateJetGapJetTrigger(const l1extra::L1JetParticleVectorRef &inputRefs, const double &etThreshold, bool &decision, l1extra::L1JetParticleVectorRef &outputRefs, l1extra::L1ParticleMap::L1IndexComboVector &combos)