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>
16 
17 namespace edm {
18  class Event;
19  class EventSetup;
20 } // namespace edm
21 
22 namespace ticl {
23  template <typename TILES>
25  public:
27  : algo_verbosity_(conf.getParameter<int>("algo_verbosity")) {}
29 
30  struct Inputs {
31  const edm::Event& ev;
33  const std::vector<reco::CaloCluster>& layerClusters;
34  const std::vector<float>& mask;
36  const TILES& tiles;
37  const std::vector<TICLSeedingRegion>& regions;
38 
39  Inputs(const edm::Event& eV,
40  const edm::EventSetup& eS,
41  const std::vector<reco::CaloCluster>& lC,
42  const std::vector<float>& mS,
43  const edm::ValueMap<std::pair<float, float>>& lT,
44  const TILES& tL,
45  const std::vector<TICLSeedingRegion>& rG)
46  : ev(eV), es(eS), layerClusters(lC), mask(mS), layerClustersTime(lT), tiles(tL), regions(rG) {}
47  };
48 
49  virtual void makeTracksters(const Inputs& input,
50  std::vector<Trackster>& result,
51  std::unordered_map<int, std::vector<int>>& seedToTracksterAssociation) = 0;
52 
54 
55  protected:
57  };
58 } // namespace ticl
59 
60 #endif
ticl::PatternRecognitionAlgoBaseT::None
Definition: PatternRecognitionAlgoBase.h:53
ticl::PatternRecognitionAlgoBaseT::Inputs::es
const edm::EventSetup & es
Definition: PatternRecognitionAlgoBase.h:32
input
static const std::string input
Definition: EdmProvDump.cc:48
Trackster.h
egammaIdentification.Inputs
Inputs
Definition: egammaIdentification.py:182
ticl::PatternRecognitionAlgoBaseT::~PatternRecognitionAlgoBaseT
virtual ~PatternRecognitionAlgoBaseT()
Definition: PatternRecognitionAlgoBase.h:28
edm
HLT enums.
Definition: AlignableModifier.h:19
ticl::PatternRecognitionAlgoBaseT::Inputs::layerClustersTime
const edm::ValueMap< std::pair< float, float > > & layerClustersTime
Definition: PatternRecognitionAlgoBase.h:35
ticl::PatternRecognitionAlgoBaseT::Basic
Definition: PatternRecognitionAlgoBase.h:53
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:39
ticl::PatternRecognitionAlgoBaseT::Inputs::tiles
const TILES & tiles
Definition: PatternRecognitionAlgoBase.h:36
TICLLayerTile.h
ticl::PatternRecognitionAlgoBaseT
Definition: PatternRecognitionAlgoBase.h:24
ticl::CacheBase
Definition: GlobalCache.h:11
Event
utilities.cache
def cache(function)
Definition: utilities.py:3
GlobalCache.h
ticl::PatternRecognitionAlgoBaseT::Expert
Definition: PatternRecognitionAlgoBase.h:53
ticl::PatternRecognitionAlgoBaseT::PatternRecognitionAlgoBaseT
PatternRecognitionAlgoBaseT(const edm::ParameterSet &conf, const CacheBase *cache)
Definition: PatternRecognitionAlgoBase.h:26
edm::ParameterSet
Definition: ParameterSet.h:47
ticl::PatternRecognitionAlgoBaseT::Inputs::mask
const std::vector< float > & mask
Definition: PatternRecognitionAlgoBase.h:34
ticl::PatternRecognitionAlgoBaseT::VerbosityLevel
VerbosityLevel
Definition: PatternRecognitionAlgoBase.h:53
ticl::PatternRecognitionAlgoBaseT::Inputs::ev
const edm::Event & ev
Definition: PatternRecognitionAlgoBase.h:31
createfilelist.int
int
Definition: createfilelist.py:10
ticl::PatternRecognitionAlgoBaseT::Inputs
Definition: PatternRecognitionAlgoBase.h:30
edm::EventSetup
Definition: EventSetup.h:57
ValueMap.h
TICLSeedingRegion.h
ticl::PatternRecognitionAlgoBaseT::Guru
Definition: PatternRecognitionAlgoBase.h:53
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
EventSetup
ParameterSet.h
ticl::PatternRecognitionAlgoBaseT::Advanced
Definition: PatternRecognitionAlgoBase.h:53
edm::Event
Definition: Event.h:73
ticl::PatternRecognitionAlgoBaseT::Inputs::layerClusters
const std::vector< reco::CaloCluster > & layerClusters
Definition: PatternRecognitionAlgoBase.h:33
ticl::PatternRecognitionAlgoBaseT::algo_verbosity_
int algo_verbosity_
Definition: PatternRecognitionAlgoBase.h:56
CaloCluster.h
ticl::PatternRecognitionAlgoBaseT::Inputs::regions
const std::vector< TICLSeedingRegion > & regions
Definition: PatternRecognitionAlgoBase.h:37