CMS 3D CMS Logo

TrackerValidationVariables.h
Go to the documentation of this file.
1 #ifndef TrackerTrackerValidationVariables_h
2 #define TrackerTrackerValidationVariables_h
3 
4 // system include files
5 #include <vector>
6 
9 
10 class MagneticField;
11 class Trajectory;
12 
13 namespace edm {
14  class ConsumesCollector;
15  class Event;
16  class EventSetup;
17  class ParameterSet;
18 }
19 
21 {
22  public:
23 
24  struct AVHitStruct
25  {
26  AVHitStruct() : resX(-999.), resY(-999.), resErrX(-999.), resErrY(-999.), resXprime(-999.), resXatTrkY(-999.), resXprimeErr(-999.),
27  resYprime(-999.), resYprimeErr(-999.), phi(-999.), eta(-999.),
28  inside(false), localX(-999.), localY(-999.), localXnorm(-999.), localYnorm(-999.), localAlpha(-999.), localBeta(-999.),
29  rawDetId(0) {}
30  float resX;
31  float resY;
32  float resErrX;
33  float resErrY;
34  float resXprime;
35  float resXatTrkY;
36  float resXprimeErr;
37  float resYprime;
38  float resYprimeErr;
39  float phi;
40  float eta;
41  bool inside;
42  float localX;
43  float localY;
44  float localXnorm;
45  float localYnorm;
46  float localAlpha;
47  float localBeta;
48  uint32_t rawDetId;
49  };
50 
52  {
53  AVTrackStruct() : p(0.), pt(0.), ptError(0.), px(0.), py(0.), pz(0.), eta(0.), phi(0.), kappa(0.),
54  chi2(0.), chi2Prob(0.), normchi2(0), d0(-999.), dz(-999.), charge(-999), numberOfValidHits(0), numberOfLostHits(0) {};
55  float p;
56  float pt;
57  float ptError;
58  float px;
59  float py;
60  float pz;
61  float eta;
62  float phi;
63  float kappa;
64  float chi2;
65  float chi2Prob;
66  float normchi2;
67  float d0;
68  float dz;
69  int charge;
72  std::vector<AVHitStruct> hits;
73  };
74 
79 
80  void fillHitQuantities(const Trajectory* trajectory, std::vector<AVHitStruct> & v_avhitout);
81  void fillHitQuantities(reco::Track const & track, std::vector<AVHitStruct> & v_avhitout);
82  void fillTrackQuantities(const edm::Event&,
83  const edm::EventSetup&,
84  std::vector<AVTrackStruct> & v_avtrackout);
85  // all Tracks are passed to the trackFilter first, and only processed if it returns true.
86  void fillTrackQuantities(const edm::Event& event,
87  const edm::EventSetup& eventSetup,
88  std::function<bool(const reco::Track&)> trackFilter,
89  std::vector<AVTrackStruct> & v_avtrackout);
90 
91  private:
92 
95 };
96 
97 #endif
Definition: config.py:1
edm::EDGetTokenT< std::vector< Trajectory > > trajCollectionToken_
HLT enums.
static const G4double kappa
edm::EDGetTokenT< std::vector< reco::Track > > tracksToken_
Definition: event.py:1