CMS 3D CMS Logo

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
ticl::PatternRecognitionAlgoBaseT::None
Definition: PatternRecognitionAlgoBase.h:54
ticl::PatternRecognitionAlgoBaseT::Inputs::es
const edm::EventSetup & es
Definition: PatternRecognitionAlgoBase.h:33
input
static const std::string input
Definition: EdmProvDump.cc:48
Trackster.h
ticl::PatternRecognitionAlgoBaseT::PatternRecognitionAlgoBaseT
PatternRecognitionAlgoBaseT(const edm::ParameterSet &conf, const CacheBase *cache, edm::ConsumesCollector)
Definition: PatternRecognitionAlgoBase.h:27
egammaIdentification.Inputs
Inputs
Definition: egammaIdentification.py:182
ticl::PatternRecognitionAlgoBaseT::~PatternRecognitionAlgoBaseT
virtual ~PatternRecognitionAlgoBaseT()
Definition: PatternRecognitionAlgoBase.h:29
edm
HLT enums.
Definition: AlignableModifier.h:19
ticl::PatternRecognitionAlgoBaseT::Inputs::layerClustersTime
const edm::ValueMap< std::pair< float, float > > & layerClustersTime
Definition: PatternRecognitionAlgoBase.h:36
ticl::PatternRecognitionAlgoBaseT::Basic
Definition: PatternRecognitionAlgoBase.h:54
ticl
Definition: Common.h:8
ticl::PatternRecognitionAlgoBaseT::Inputs::Inputs
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)
Definition: PatternRecognitionAlgoBase.h:40
ticl::PatternRecognitionAlgoBaseT::Inputs::tiles
const TILES & tiles
Definition: PatternRecognitionAlgoBase.h:37
TICLLayerTile.h
ticl::PatternRecognitionAlgoBaseT
Definition: PatternRecognitionAlgoBase.h:25
ticl::CacheBase
Definition: GlobalCache.h:11
Event
utilities.cache
def cache(function)
Definition: utilities.py:3
GlobalCache.h
ticl::PatternRecognitionAlgoBaseT::Expert
Definition: PatternRecognitionAlgoBase.h:54
edm::ParameterSet
Definition: ParameterSet.h:47
ticl::PatternRecognitionAlgoBaseT::Inputs::mask
const std::vector< float > & mask
Definition: PatternRecognitionAlgoBase.h:35
ticl::PatternRecognitionAlgoBaseT::VerbosityLevel
VerbosityLevel
Definition: PatternRecognitionAlgoBase.h:54
ticl::PatternRecognitionAlgoBaseT::Inputs::ev
const edm::Event & ev
Definition: PatternRecognitionAlgoBase.h:32
createfilelist.int
int
Definition: createfilelist.py:10
ticl::PatternRecognitionAlgoBaseT::Inputs
Definition: PatternRecognitionAlgoBase.h:31
edm::EventSetup
Definition: EventSetup.h:58
ValueMap.h
TICLSeedingRegion.h
ticl::PatternRecognitionAlgoBaseT::Guru
Definition: PatternRecognitionAlgoBase.h:54
edm::ValueMap
Definition: ValueMap.h:107
ticl::PatternRecognitionAlgoBaseT::makeTracksters
virtual void makeTracksters(const Inputs &input, std::vector< Trackster > &result, std::unordered_map< int, std::vector< int >> &seedToTracksterAssociation)=0
mps_fire.result
result
Definition: mps_fire.py:311
ConsumesCollector.h
EventSetup
ParameterSet.h
ticl::PatternRecognitionAlgoBaseT::Advanced
Definition: PatternRecognitionAlgoBase.h:54
edm::Event
Definition: Event.h:73
ticl::PatternRecognitionAlgoBaseT::Inputs::layerClusters
const std::vector< reco::CaloCluster > & layerClusters
Definition: PatternRecognitionAlgoBase.h:34
edm::ConsumesCollector
Definition: ConsumesCollector.h:45
ticl::PatternRecognitionAlgoBaseT::algo_verbosity_
int algo_verbosity_
Definition: PatternRecognitionAlgoBase.h:57
CaloCluster.h
ticl::PatternRecognitionAlgoBaseT::Inputs::regions
const std::vector< TICLSeedingRegion > & regions
Definition: PatternRecognitionAlgoBase.h:38