CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
classes.h
Go to the documentation of this file.
5 
21 
27 
29 
31 
38 
41 
44 
47 
49 
50 namespace {
51  struct dictionary {
52 
53  /* ==========================================================================================================================
54  PAT Dataformats: PatObjects
55  ========================================================================================================================== */
56  /* PAT Object Collection Iterators */
57  std::vector<pat::Electron>::const_iterator v_p_e_ci;
58  std::vector<pat::Muon>::const_iterator v_p_mu_ci;
59  std::vector<pat::Tau>::const_iterator v_p_t_ci;
60  std::vector<pat::Photon>::const_iterator v_p_ph_ci;
61  std::vector<pat::Jet>::const_iterator v_p_j_ci;
62  std::vector<pat::MET>::const_iterator v_p_m_ci;
63  std::vector<pat::MHT>::const_iterator v_p_mht_ci;
64  std::vector<pat::Particle>::const_iterator v_p_p_ci;
65  std::vector<pat::CompositeCandidate>::const_iterator v_p_cc_ci;
66  std::vector<pat::PFParticle>::const_iterator v_p_pfp_ci;
67  std::vector<pat::GenericParticle>::const_iterator v_p_gp_ci;
68  std::vector<pat::Hemisphere>::const_iterator v_p_h_ci;
69  std::vector<pat::Conversion>::const_iterator v_p_c_ci;
70 
71  /* PAT Object Collection Wrappers */
85 
86  /* PAT Object References */
87  pat::ElectronRef p_r_e;
88  pat::MuonRef p_r_mu;
89  pat::TauRef p_r_t;
90  pat::PhotonRef p_r_ph;
91  pat::JetRef p_r_j;
92  pat::METRef p_r_m;
93  pat::ParticleRef p_r_p;
95  pat::PFParticleRef p_r_pgp;
97  pat::HemisphereRef p_r_h;
98  pat::ConversionRef p_r_c;
99 
100  /* PAT Object Ref Vector Wrappers */
113 
114  /* RefToBase<Candidate> from PATObjects */
115  /* With direct Holder */
127  /* With indirect holder (RefHolder) */
139  /* With direct VectorHolder */
140  /* RefToBaseVector<Candidate> from PATObjects, not yet provided. Useful? */
141  /*
142  edm::reftobase::VectorHolder<reco::Candidate, pat::ElectronRefVector> rb_cand_vh_p_e;
143  edm::reftobase::VectorHolder<reco::Candidate, pat::MuonRefVector> rb_cand_vh_p_mu;
144  edm::reftobase::VectorHolder<reco::Candidate, pat::TauRefVector> rb_cand_vh_p_t;
145  edm::reftobase::VectorHolder<reco::Candidate, pat::PhotonRefVector> rb_cand_vh_p_ph;
146  edm::reftobase::VectorHolder<reco::Candidate, pat::JetRefVector> rb_cand_vh_p_j;
147  edm::reftobase::VectorHolder<reco::Candidate, pat::METRefVector> rb_cand_vh_p_m;
148  edm::reftobase::VectorHolder<reco::Candidate, pat::ParticleRefVector> rb_cand_vh_p_p;
149  edm::reftobase::VectorHolder<reco::Candidate, pat::PFParticleRefVector> rb_cand_vh_p_pfp;
150  edm::reftobase::VectorHolder<reco::Candidate, pat::GenericParticleRefVector> rb_cand_vh_p_gp;
151  */
153  /* With indirect holder (RefVectorHolder) */
154  /*
155  edm::reftobase::RefVectorHolder<pat::ElectronRefVector> rb_rvh_p_e;
156  edm::reftobase::RefVectorHolder<pat::MuonRefVector> rb_rvh_p_mu;
157  edm::reftobase::RefVectorHolder<pat::TauRefVector> rb_rvh_p_t;
158  edm::reftobase::RefVectorHolder<pat::PhotonRefVector> rb_rvh_p_ph;
159  edm::reftobase::RefVectorHolder<pat::JetRefVector> rb_rvh_p_j;
160  edm::reftobase::RefVectorHolder<pat::METRefVector> rb_rvh_p_m;
161  edm::reftobase::RefVectorHolder<pat::ParticleRefVector> rb_rvh_p_p;
162  edm::reftobase::RefVectorHolder<pat::PFParticleRefVector> rb_rvh_p_pfp;
163  edm::reftobase::RefVectorHolder<pat::GenericParticleRefVector> rb_rvh_p_gp;
164  */
166 
167  /* RefToBase<AODType> from PATObjects. In addition to the ones for Candidate */
168  /*
169  edm::reftobase::Holder<reco::GsfElectron, pat::ElectronRef> rb_e_h_p_e;
170  edm::reftobase::Holder<reco::Muon, pat::MuonRef> rb_mu_h_p_mu;
171  edm::reftobase::Holder<reco::BaseTau, pat::TauRef> rb_t_h_p_t;
172  edm::reftobase::Holder<reco::Photon, pat::PhotonRef> rb_ph_h_p_ph;
173  edm::reftobase::Holder<reco::Jet, pat::JetRef> rb_j_h_p_j;
174  edm::reftobase::Holder<reco::MET, pat::METRef> rb_m_h_p_m;
175 
176  edm::reftobase::VectorHolder<reco::GsfElectron, pat::ElectronRefVector> rb_e_vh_p_e;
177  edm::reftobase::VectorHolder<reco::Muon, pat::MuonRefVector> rb_mu_vh_p_mu;
178  edm::reftobase::VectorHolder<reco::BaseTau, pat::TauRefVector> rb_t_vh_p_t;
179  edm::reftobase::VectorHolder<reco::Photon, pat::PhotonRefVector> rb_ph_vh_p_ph;
180  edm::reftobase::VectorHolder<reco::Jet, pat::JetRefVector> rb_j_vh_p_j;
181  edm::reftobase::VectorHolder<reco::MET, pat::METRefVector> rb_m_vh_p_m;
182  */
183 
184  /* ==========================================================================================================================
185  PAT Dataformats beyond PatObjects
186  ========================================================================================================================== */
187  std::pair<std::string, std::vector<float> > jcfcf;
189  std::vector<pat::JetCorrFactors::CorrectionFactor> v_jcfcf;
191  std::vector<pat::JetCorrFactors> v_jcf;
195  //std::vector<pat::TauJetCorrFactors::CorrectionFactor> v_tjcfcf;
196  //edm::Wrapper<std::vector<pat::TauJetCorrFactors::CorrectionFactor> > w_v_tjcfcf;
197  std::vector<pat::TauJetCorrFactors> v_tjcf;
201 
203 
205 
207 
209  pat::TriggerObjectCollection::const_iterator v_p_to_ci;
211  pat::TriggerObjectRef r_p_to;
212  std::pair< std::string, pat::TriggerObjectRef > p_r_p_to;
221 // edm::reftobase::VectorHolder<reco::Candidate, pat::TriggerObjectRefVector> vh_p_to;
222 // edm::reftobase::RefVectorHolder<pat::TriggerObjectRefVector> rvh_p_to;
225  std::pair< std::string, pat::TriggerObjectMatchRefProd > p_rp_a_p_to;
227  pat::TriggerObjectMatchContainer::const_iterator m_rp_a_p_to_ci;
229 
231  pat::TriggerObjectStandAloneCollection::const_iterator v_p_tosa_ci;
241 // edm::reftobase::VectorHolder<reco::Candidate, pat::TriggerObjectStandAloneRefVector> vh_p_tosa;
242 // edm::reftobase::RefVectorHolder<pat::TriggerObjectStandAloneRefVector> rvh_p_tosa;
244 
246  pat::TriggerFilterCollection::const_iterator v_p_tf_ci;
248  pat::TriggerFilterRef r_p_tf;
253 
255  pat::TriggerPathCollection::const_iterator v_p_tp_ci;
257  pat::TriggerPathRef r_p_tp;
258  pat::TriggerPathRefProd rp_p_tp;
262  pat::L1Seed p_bs;
263  pat::L1SeedCollection vp_bs;
264  pat::L1SeedCollection::const_iterator vp_bs_ci;
265 
267  pat::TriggerConditionCollection::const_iterator v_p_tc_ci;
274 
276  pat::TriggerAlgorithmCollection::const_iterator v_p_ta_ci;
283 
285 
286  std::vector<std::pair<pat::IsolationKeys,reco::IsoDeposit> > v_p_ik_id;
287 
288  /* UserData: Core */
289  pat::UserDataCollection ov_p_ud;
290  /* UserData: Standalone UserData in the event. Needed? */
293  edm::Ptr<pat::UserData> yadda_pat_ptr_userdata;
294  /* UserData: a few holders */
309 
310 
312 
314  std::vector<pat::CandKinResolution> v_ckr;
317  edm::Ptr<pat::Jet> ptr_Jet;
318  edm::Ptr<pat::MET> ptr_MET;
319  edm::Ptr<pat::Electron> ptr_Electron;
320  edm::Ptr<pat::Conversion> ptr_Conversion;
321  edm::Ptr<pat::Muon> ptr_Muon;
322  edm::Ptr<pat::Tau> ptr_Tau;
323 
324  };
325 
326 }
std::map< std::string, TriggerObjectRef > TriggerObjectMatchMap
Container to store match references from different producers (for one PAT object) ...
std::vector< TriggerObjectStandAlone > TriggerObjectStandAloneCollection
Collection of TriggerObjectStandAlone.
std::vector< TriggerAlgorithm > TriggerAlgorithmCollection
Collection of TriggerAlgorithm.
std::pair< bool, std::string > L1Seed
Pair to store decision and name of L1 seeds.
Definition: TriggerPath.h:37
std::vector< TriggerFilter > TriggerFilterCollection
Collection of TriggerFilter.
std::vector< TriggerObject > TriggerObjectCollection
Collection of TriggerObject.
std::vector< TriggerCondition > TriggerConditionCollection
Collection of TriggerCondition.
std::vector< L1Seed > L1SeedCollection
Collection of L1Seed.
Definition: TriggerPath.h:39
std::map< std::string, TriggerObjectMatchRefProd > TriggerObjectMatchContainer
Container to store references to matches from different producers in the trigger event.
std::vector< TriggerPath > TriggerPathCollection
Collection of TriggerPath.
Definition: TriggerPath.h:155