CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
InputData.h
Go to the documentation of this file.
1 #ifndef L1Trigger_TrackFindingTMTT_InputData_h
2 #define L1Trigger_TrackFindingTMTT_InputData_h
3 
10 #include <list>
11 
12 namespace tmtt {
13 
14  class Settings;
15  class StubWindowSuggest;
16  class DegradeBend;
17 
18  //=== Unpacks stub & tracking particle (truth) data into user-friendlier format in Stub & TP classes.
19  //=== Also makes B-field available to Settings class.
20 
21  class InputData {
22  public:
24  const edm::EventSetup& iSetup,
25  const Settings* settings,
26  StubWindowSuggest* stubWindowSuggest,
27  const DegradeBend* degradeBend,
28  const TrackerGeometry* trackerGeometry,
29  const TrackerTopology* trackerTopology,
30  const std::list<TrackerModule>& listTrackerModule,
32  const edm::EDGetTokenT<TTStubDetSetVec> stubToken,
33  const edm::EDGetTokenT<TTStubAssMap> stubTruthToken,
34  const edm::EDGetTokenT<TTClusterAssMap> clusterTruthToken,
36 
37  // Info about each tracker module
38  const std::list<TrackerModule>& trackerModules() const { return trackerModules_; };
39 
40  // Get tracking particles
41  const std::list<TP>& getTPs() const { return vTPs_; }
42  // Get stubs that would be output by the front-end readout electronics
43  const std::list<Stub*>& stubs() const { return vStubs_; }
44  // Ditto but const
45  const std::list<const Stub*>& stubsConst() const { return vStubsConst_; }
46 
47  //--- of minor importance ...
48 
49  // Get number of stubs prior to applying tighted front-end readout electronics cuts specified in section StubCuts of Analyze_Defaults_cfi.py. (Only used to measure the efficiency of these cuts).
50  const std::list<Stub>& allStubs() const { return vAllStubs_; }
51 
52  private:
53  bool enableMCtruth_; // Notes if job will use MC truth info.
54 
55  std::list<TrackerModule> trackerModules_; // Info about each tracker module.
56 
57  std::list<TP> vTPs_; // tracking particles
58  std::list<Stub*> vStubs_; // stubs that would be output by the front-end readout electronics.
59  std::list<const Stub*> vStubsConst_; // ditto but const
60 
61  //--- Used for a few minor studies ...
62 
63  // all stubs, even those that would fail any tightened front-end readout electronic cuts specified in section StubCuts of Analyze_Defaults_cfi.py. (Only used to measure the efficiency of these cuts).
64  std::list<Stub> vAllStubs_;
65 
66  // Recommends optimal FE stub window sizes.
68  // Degrades bend to allow for FE stub bend encoding.
70  };
71 
72 } // namespace tmtt
73 #endif
const std::list< Stub > & allStubs() const
Definition: InputData.h:50
const DegradeBend * degradeBend_
Definition: InputData.h:69
StubWindowSuggest * stubWindowSuggest_
Definition: InputData.h:67
const std::list< const Stub * > & stubsConst() const
Definition: InputData.h:45
std::list< const Stub * > vStubsConst_
Definition: InputData.h:59
int iEvent
Definition: GenABIO.cc:224
bool enableMCtruth_
Definition: InputData.h:53
const std::list< TP > & getTPs() const
Definition: InputData.h:41
InputData(const edm::Event &iEvent, const edm::EventSetup &iSetup, const Settings *settings, StubWindowSuggest *stubWindowSuggest, const DegradeBend *degradeBend, const TrackerGeometry *trackerGeometry, const TrackerTopology *trackerTopology, const std::list< TrackerModule > &listTrackerModule, const edm::EDGetTokenT< TrackingParticleCollection > tpToken, const edm::EDGetTokenT< TTStubDetSetVec > stubToken, const edm::EDGetTokenT< TTStubAssMap > stubTruthToken, const edm::EDGetTokenT< TTClusterAssMap > clusterTruthToken, const edm::EDGetTokenT< reco::GenJetCollection > genJetToken)
std::list< TrackerModule > trackerModules_
Definition: InputData.h:55
std::list< Stub > vAllStubs_
Definition: InputData.h:64
const std::list< Stub * > & stubs() const
Definition: InputData.h:43
std::list< Stub * > vStubs_
Definition: InputData.h:58
std::list< TP > vTPs_
Definition: InputData.h:57
const std::list< TrackerModule > & trackerModules() const
Definition: InputData.h:38