File indexing completed on 2023-10-25 09:31:36
0001 #ifndef Alignment_APEEstimation_EventVariables_h
0002 #define Alignment_APEEstimation_EventVariables_h
0003
0004 #include <vector>
0005
0006 struct TrackStruct {
0007 TrackStruct() {}
0008
0009 enum HitState { notInTracker, notAssignedToSectors, invalid, negativeError, ok };
0010
0011 struct HitParameterStruct {
0012 HitParameterStruct()
0013 : hitState(ok),
0014 isPixelHit(false),
0015 goodXMeasurement(false),
0016 goodYMeasurement(false),
0017 widthX(0),
0018 baryStripX(-999.F),
0019 widthY(0),
0020 baryStripY(-999.F),
0021 chargePixel(-999.F),
0022 clusterProbabilityXY(-999.F),
0023 clusterProbabilityQ(-999.F),
0024 clusterProbabilityXYQ(-999.F),
0025 logClusterProbability(-999.F),
0026 isOnEdge(false),
0027 hasBadPixels(false),
0028 spansTwoRoc(false),
0029 qBin(-1),
0030 isModuleUsable(true),
0031 chargeStrip(0),
0032 maxStrip(0),
0033 maxStripInv(0),
0034 maxCharge(0),
0035 maxIndex(0),
0036 chargeOnEdges(-999.F),
0037 chargeAsymmetry(-999.F),
0038 chargeLRplus(-999.F),
0039 chargeLRminus(-999.F),
0040 sOverN(-999.F),
0041 projWidth(-999.F),
0042 resX(-999.F),
0043 norResX(-999.F),
0044 xHit(-999.F),
0045 xTrk(-999.F),
0046 errXHit(-999.F),
0047 errXTrk(-999.F),
0048 errX(-999.F),
0049 errX2(-999.F),
0050 errXHitWoApe(-999.F),
0051 errXWoApe(-999.F),
0052 probX(-999.F),
0053 resY(-999.F),
0054 norResY(-999.F),
0055 yHit(-999.F),
0056 yTrk(-999.F),
0057 errYHit(-999.F),
0058 errYTrk(-999.F),
0059 errY(-999.F),
0060 errY2(-999.F),
0061 errYHitWoApe(-999.F),
0062 errYWoApe(-999.F),
0063 probY(-999.F),
0064 phiSens(-999.F),
0065 phiSensX(-999.F),
0066 phiSensY(-999.F) {}
0067
0068 HitState hitState;
0069 bool isPixelHit;
0070 bool goodXMeasurement, goodYMeasurement;
0071 std::vector<unsigned int> v_sector;
0072
0073
0074
0075 unsigned int widthX;
0076 float baryStripX;
0077
0078 unsigned int widthY;
0079 float baryStripY;
0080 float chargePixel;
0081 float clusterProbabilityXY, clusterProbabilityQ, clusterProbabilityXYQ, logClusterProbability;
0082 bool isOnEdge, hasBadPixels, spansTwoRoc;
0083 int qBin;
0084
0085 bool isModuleUsable;
0086 unsigned int chargeStrip;
0087 unsigned int maxStrip, maxStripInv, maxCharge, maxIndex;
0088 float chargeOnEdges, chargeAsymmetry, chargeLRplus, chargeLRminus;
0089 float sOverN;
0090 float projWidth;
0091
0092
0093 float resX, norResX, xHit, xTrk, errXHit, errXTrk, errX, errX2, errXHitWoApe, errXWoApe, probX;
0094 float resY, norResY, yHit, yTrk, errYHit, errYTrk, errY, errY2, errYHitWoApe, errYWoApe, probY;
0095 float phiSens, phiSensX, phiSensY;
0096 };
0097
0098 struct TrackParameterStruct {
0099 TrackParameterStruct()
0100 : hitsSize(-999),
0101 hitsValid(-999),
0102 hitsInvalid(-999),
0103 hits2D(-999),
0104 layersMissed(-999),
0105 hitsPixel(-999),
0106 hitsStrip(-999),
0107 charge(-999),
0108 chi2(-999.F),
0109 ndof(-999.F),
0110 norChi2(-999.F),
0111 prob(-999.F),
0112 eta(-999.F),
0113 etaErr(-999.F),
0114 theta(-999.F),
0115 phi(-999.F),
0116 phiErr(-999.F),
0117 d0(-999.F),
0118 d0Beamspot(-999.F),
0119 d0BeamspotErr(-999.F),
0120 dz(-999.F),
0121 dzErr(-999.F),
0122 dzBeamspot(-999.F),
0123 p(-999.F),
0124 pt(-999.F),
0125 ptErr(-999.F),
0126 meanPhiSensToNorm(-999.F) {}
0127
0128 int hitsSize, hitsValid, hitsInvalid, hits2D, layersMissed, hitsPixel, hitsStrip, charge;
0129 float chi2, ndof, norChi2, prob, eta, etaErr, theta, phi, phiErr, d0, d0Beamspot, d0BeamspotErr, dz, dzErr,
0130 dzBeamspot, p, pt, ptErr, meanPhiSensToNorm;
0131 };
0132
0133 TrackParameterStruct trkParams;
0134 std::vector<HitParameterStruct> v_hitParams;
0135 };
0136
0137 #endif