File indexing completed on 2024-04-06 11:59:47
0001 #ifndef SHALLOW_TRACKS_PRODUCER
0002 #define SHALLOW_TRACKS_PRODUCER
0003
0004 #include "FWCore/Framework/interface/global/EDProducer.h"
0005 #include "FWCore/Framework/interface/Frameworkfwd.h"
0006 #include "FWCore/Utilities/interface/InputTag.h"
0007 #include "DataFormats/TrackReco/interface/Track.h"
0008
0009 class ShallowTracksProducer : public edm::global::EDProducer<> {
0010 public:
0011 explicit ShallowTracksProducer(const edm::ParameterSet &);
0012
0013 private:
0014 const edm::EDGetTokenT<edm::View<reco::Track>> tracks_token_;
0015 edm::InputTag theTracksLabel;
0016 std::string Prefix;
0017 std::string Suffix;
0018 void produce(edm::StreamID, edm::Event &, const edm::EventSetup &) const override;
0019
0020 const edm::EDPutTokenT<unsigned int> numberPut_;
0021 const edm::EDPutTokenT<std::vector<double>> chi2Put_;
0022 const edm::EDPutTokenT<std::vector<double>> ndofPut_;
0023 const edm::EDPutTokenT<std::vector<double>> chi2ndofPut_;
0024 const edm::EDPutTokenT<std::vector<float>> chargePut_;
0025 const edm::EDPutTokenT<std::vector<float>> momentumPut_;
0026 const edm::EDPutTokenT<std::vector<float>> ptPut_;
0027 const edm::EDPutTokenT<std::vector<float>> pterrPut_;
0028 const edm::EDPutTokenT<std::vector<unsigned int>> hitsvalidPut_;
0029 const edm::EDPutTokenT<std::vector<unsigned int>> hitslostPut_;
0030 const edm::EDPutTokenT<std::vector<double>> thetaPut_;
0031 const edm::EDPutTokenT<std::vector<double>> thetaerrPut_;
0032 const edm::EDPutTokenT<std::vector<double>> phiPut_;
0033 const edm::EDPutTokenT<std::vector<double>> phierrPut_;
0034 const edm::EDPutTokenT<std::vector<double>> etaPut_;
0035 const edm::EDPutTokenT<std::vector<double>> etaerrPut_;
0036 const edm::EDPutTokenT<std::vector<double>> dxyPut_;
0037 const edm::EDPutTokenT<std::vector<double>> dxyerrPut_;
0038 const edm::EDPutTokenT<std::vector<double>> dszPut_;
0039 const edm::EDPutTokenT<std::vector<double>> dszerrPut_;
0040 const edm::EDPutTokenT<std::vector<double>> qoverpPut_;
0041 const edm::EDPutTokenT<std::vector<double>> qoverperrPut_;
0042 const edm::EDPutTokenT<std::vector<double>> vxPut_;
0043 const edm::EDPutTokenT<std::vector<double>> vyPut_;
0044 const edm::EDPutTokenT<std::vector<double>> vzPut_;
0045 const edm::EDPutTokenT<std::vector<int>> algoPut_;
0046 };
0047 #endif