File indexing completed on 2023-10-25 09:58:45
0001 #ifndef RecoBTag_FeatureTools_TrackPairInfoBuilder_h
0002 #define RecoBTag_FeatureTools_TrackPairInfoBuilder_h
0003
0004 #include "DataFormats/GeometrySurface/interface/Line.h"
0005 #include "TrackingTools/Records/interface/TransientTrackRecord.h"
0006 #include "TrackingTools/IPTools/interface/IPTools.h"
0007 #include "TrackingTools/PatternTools/interface/TwoTrackMinimumDistance.h"
0008
0009 namespace btagbtvdeep {
0010
0011 class TrackPairInfoBuilder {
0012 public:
0013 TrackPairInfoBuilder();
0014
0015 void buildTrackPairInfo(const reco::TransientTrack* it,
0016 const reco::TransientTrack* tt,
0017 const reco::Vertex& pv,
0018 float mass,
0019 GlobalVector jetdirection,
0020 const std::pair<bool, Measurement1D>& t_ip,
0021 const std::pair<bool, Measurement1D>& t_ip2d);
0022
0023 const float track_pt() const { return track_pt_; }
0024 const float track_eta() const { return track_eta_; }
0025 const float track_phi() const { return track_phi_; }
0026 const float track_dz() const { return track_dz_; }
0027 const float track_dxy() const { return track_dxy_; }
0028 const float pca_distance() const { return pca_distance_; }
0029 const float pca_significance() const { return pca_significance_; }
0030 const float pcaSeed_x() const { return pcaSeed_x_; }
0031 const float pcaSeed_y() const { return pcaSeed_y_; }
0032 const float pcaSeed_z() const { return pcaSeed_z_; }
0033 const float pcaSeed_xerr() const { return pcaSeed_xerr_; }
0034 const float pcaSeed_yerr() const { return pcaSeed_yerr_; }
0035 const float pcaSeed_zerr() const { return pcaSeed_zerr_; }
0036 const float pcaTrack_x() const { return pcaTrack_x_; }
0037 const float pcaTrack_y() const { return pcaTrack_y_; }
0038 const float pcaTrack_z() const { return pcaTrack_z_; }
0039 const float pcaTrack_xerr() const { return pcaTrack_xerr_; }
0040 const float pcaTrack_yerr() const { return pcaTrack_yerr_; }
0041 const float pcaTrack_zerr() const { return pcaTrack_zerr_; }
0042 const float dotprodTrack() const { return dotprodTrack_; }
0043 const float dotprodSeed() const { return dotprodSeed_; }
0044 const float pcaSeed_dist() const { return pcaSeed_dist_; }
0045 const float pcaTrack_dist() const { return pcaTrack_dist_; }
0046 const float track_candMass() const { return track_candMass_; }
0047 const float track_ip2d() const { return track_ip2d_; }
0048 const float track_ip2dSig() const { return track_ip2dSig_; }
0049 const float track_ip3d() const { return track_ip3d_; }
0050 const float track_ip3dSig() const { return track_ip3dSig_; }
0051 const float dotprodTrackSeed2D() const { return dotprodTrackSeed2D_; }
0052 const float dotprodTrackSeed2DV() const { return dotprodTrackSeed2DV_; }
0053 const float dotprodTrackSeed3D() const { return dotprodTrackSeed3D_; }
0054 const float dotprodTrackSeed3DV() const { return dotprodTrackSeed3DV_; }
0055 const float pca_jetAxis_dist() const { return pca_jetAxis_dist_; }
0056 const float pca_jetAxis_dotprod() const { return pca_jetAxis_dotprod_; }
0057 const float pca_jetAxis_dEta() const { return pca_jetAxis_dEta_; }
0058 const float pca_jetAxis_dPhi() const { return pca_jetAxis_dPhi_; }
0059
0060 private:
0061 float track_pt_;
0062 float track_eta_;
0063 float track_phi_;
0064 float track_dz_;
0065 float track_dxy_;
0066 float pca_distance_;
0067 float pca_significance_;
0068 float pcaSeed_x_;
0069 float pcaSeed_y_;
0070 float pcaSeed_z_;
0071 float pcaSeed_xerr_;
0072 float pcaSeed_yerr_;
0073 float pcaSeed_zerr_;
0074 float pcaTrack_x_;
0075 float pcaTrack_y_;
0076 float pcaTrack_z_;
0077 float pcaTrack_xerr_;
0078 float pcaTrack_yerr_;
0079 float pcaTrack_zerr_;
0080 float dotprodTrack_;
0081 float dotprodSeed_;
0082 float pcaSeed_dist_;
0083 float pcaTrack_dist_;
0084 float track_candMass_;
0085 float track_ip2d_;
0086 float track_ip2dSig_;
0087 float track_ip3d_;
0088 float track_ip3dSig_;
0089 float dotprodTrackSeed2D_;
0090 float dotprodTrackSeed2DV_;
0091 float dotprodTrackSeed3D_;
0092 float dotprodTrackSeed3DV_;
0093 float pca_jetAxis_dist_;
0094 float pca_jetAxis_dotprod_;
0095 float pca_jetAxis_dEta_;
0096 float pca_jetAxis_dPhi_;
0097 };
0098
0099 }
0100
0101 #endif