CMS 3D CMS Logo

TracksterLinkingbySuperClusteringMustache.h
Go to the documentation of this file.
1 /*
2 TICL plugin for electron superclustering in HGCAL with Mustache algorithm
3 Authors : Theo Cuisset <theo.cuisset@cern.ch>, Shamik Ghosh <shamik.ghosh@cern.ch>
4 Date : 06/2024
5 */
6 
7 #ifndef RecoHGCal_TICL_TracksterLinkingSuperClusteringMustache_H
8 #define RecoHGCal_TICL_TracksterLinkingSuperClusteringMustache_H
9 
10 #include <vector>
11 
12 namespace cms {
13  namespace Ort {
14  class ONNXRuntime;
15  }
16 } // namespace cms
17 
20 
25 
26 namespace ticl {
27  class Trackster;
28 
30  public:
33  cms::Ort::ONNXRuntime const* onnxRuntime = nullptr);
34  /* virtual */ ~TracksterLinkingbySuperClusteringMustache() override {}
36 
37  void linkTracksters(const Inputs& input,
38  std::vector<Trackster>& resultTracksters,
39  std::vector<std::vector<unsigned int>>& linkedResultTracksters,
40  std::vector<std::vector<unsigned int>>& linkedTracksterIdToInputTracksterId) override;
41  void initialize(const HGCalDDDConstants* hgcons,
42  const hgcal::RecHitTools rhtools,
43  const edm::ESHandle<MagneticField> bfieldH,
44  const edm::ESHandle<Propagator> propH) override;
45 
46  virtual void setEvent(edm::Event& iEvent, edm::EventSetup const& iEventSetup) override;
47 
48  private:
49  bool trackstersPassesPIDCut(const Trackster& ts) const;
50 
55 
61  };
62 
63 } // namespace ticl
64 
65 #endif
edm::ESGetToken< EcalSCDynamicDPhiParameters, EcalSCDynamicDPhiParametersRcd > ecalSCDynamicDPhiParametersToken_
void linkTracksters(const Inputs &input, std::vector< Trackster > &resultTracksters, std::vector< std::vector< unsigned int >> &linkedResultTracksters, std::vector< std::vector< unsigned int >> &linkedTracksterIdToInputTracksterId) override
static std::string const input
Definition: EdmProvDump.cc:50
edm::ESGetToken< EcalMustacheSCParameters, EcalMustacheSCParametersRcd > ecalMustacheSCParametersToken_
void initialize(const HGCalDDDConstants *hgcons, const hgcal::RecHitTools rhtools, const edm::ESHandle< MagneticField > bfieldH, const edm::ESHandle< Propagator > propH) override
TracksterLinkingbySuperClusteringMustache(const edm::ParameterSet &ps, edm::ConsumesCollector iC, cms::Ort::ONNXRuntime const *onnxRuntime=nullptr)
int iEvent
Definition: GenABIO.cc:224
Namespace of DDCMS conversion namespace.
static void fillPSetDescription(edm::ParameterSetDescription &iDesc)
Definition: Common.h:10
virtual void setEvent(edm::Event &iEvent, edm::EventSetup const &iEventSetup) override