CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
PatternRecognitionAlgoBase.h
Go to the documentation of this file.
1 // Author: Felice Pantaleo - felice.pantaleo@cern.ch
2 // Date: 09/2018
3 
4 #ifndef RecoHGCal_TICL_PatternRecognitionAlgoBase_H__
5 #define RecoHGCal_TICL_PatternRecognitionAlgoBase_H__
6 
7 #include <memory>
8 #include <vector>
17 
18 namespace edm {
19  class Event;
20  class EventSetup;
21 } // namespace edm
22 
23 namespace ticl {
24  template <typename TILES>
26  public:
28  : algo_verbosity_(conf.getParameter<int>("algo_verbosity")) {}
30 
31  struct Inputs {
32  const edm::Event& ev;
34  const std::vector<reco::CaloCluster>& layerClusters;
35  const std::vector<float>& mask;
37  const TILES& tiles;
38  const std::vector<TICLSeedingRegion>& regions;
39 
40  Inputs(const edm::Event& eV,
41  const edm::EventSetup& eS,
42  const std::vector<reco::CaloCluster>& lC,
43  const std::vector<float>& mS,
44  const edm::ValueMap<std::pair<float, float>>& lT,
45  const TILES& tL,
46  const std::vector<TICLSeedingRegion>& rG)
47  : ev(eV), es(eS), layerClusters(lC), mask(mS), layerClustersTime(lT), tiles(tL), regions(rG) {}
48  };
49 
50  virtual void makeTracksters(const Inputs& input,
51  std::vector<Trackster>& result,
52  std::unordered_map<int, std::vector<int>>& seedToTracksterAssociation) = 0;
53 
55 
56  protected:
58  };
59 } // namespace ticl
60 
61 #endif
PatternRecognitionAlgoBaseT(const edm::ParameterSet &conf, const CacheBase *cache, edm::ConsumesCollector)
static std::string const input
Definition: EdmProvDump.cc:47
const edm::ValueMap< std::pair< float, float > > & layerClustersTime
tuple result
Definition: mps_fire.py:311
const std::vector< TICLSeedingRegion > & regions
Inputs(const edm::Event &eV, const edm::EventSetup &eS, const std::vector< reco::CaloCluster > &lC, const std::vector< float > &mS, const edm::ValueMap< std::pair< float, float >> &lT, const TILES &tL, const std::vector< TICLSeedingRegion > &rG)
virtual void makeTracksters(const Inputs &input, std::vector< Trackster > &result, std::unordered_map< int, std::vector< int >> &seedToTracksterAssociation)=0
const std::vector< reco::CaloCluster > & layerClusters
def cache
Definition: utilities.py:3