File indexing completed on 2024-09-07 04:37:54
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010 #ifndef RecoPPS_Local_RPixDetTrackFinder_H
0011 #define RecoPPS_Local_RPixDetTrackFinder_H
0012
0013 #include "FWCore/ParameterSet/interface/ParameterSet.h"
0014
0015 #include "DataFormats/CTPPSDetId/interface/CTPPSPixelDetId.h"
0016 #include "DataFormats/CTPPSReco/interface/CTPPSPixelLocalTrack.h"
0017 #include "RecoPPS/Local/interface/RPixDetPatternFinder.h"
0018
0019 #include "Geometry/VeryForwardGeometryBuilder/interface/CTPPSGeometry.h"
0020
0021 #include <vector>
0022 #include <map>
0023
0024 class RPixDetTrackFinder {
0025 public:
0026 RPixDetTrackFinder(edm::ParameterSet const ¶meterSet) : romanPotId_(CTPPSPixelDetId(0, 2, 3, 0)) {}
0027
0028 virtual ~RPixDetTrackFinder() {}
0029
0030 void setHits(std::map<CTPPSPixelDetId, std::vector<RPixDetPatternFinder::PointInPlane> > *hitMap) {
0031 hitMap_ = hitMap;
0032 }
0033 virtual void findTracks(int run) = 0;
0034 virtual void initialize() = 0;
0035 void clear() { localTrackVector_.clear(); }
0036 std::vector<CTPPSPixelLocalTrack> const &getLocalTracks() const { return localTrackVector_; }
0037 void setRomanPotId(CTPPSPixelDetId rpId) { romanPotId_ = rpId; };
0038 void setGeometry(const CTPPSGeometry *geometry) { geometry_ = geometry; }
0039 void setListOfPlanes(std::vector<uint32_t> listOfAllPlanes) { listOfAllPlanes_ = listOfAllPlanes; }
0040 void setZ0(double z0) { z0_ = z0; }
0041
0042 protected:
0043 std::map<CTPPSPixelDetId, std::vector<RPixDetPatternFinder::PointInPlane> > *hitMap_;
0044 std::vector<CTPPSPixelLocalTrack> localTrackVector_;
0045 CTPPSPixelDetId romanPotId_;
0046 const CTPPSGeometry *geometry_;
0047 uint32_t numberOfPlanesPerPot_;
0048 std::vector<uint32_t> listOfAllPlanes_;
0049 double z0_;
0050 };
0051
0052 #endif