3#ifndef FPGATrackSimLLPDOUBLETHOUGHTRANSFORMTOOL_H
4#define FPGATrackSimLLPDOUBLETHOUGHTRANSFORMTOOL_H
8#include "GaudiKernel/ServiceHandle.h"
30 using base_class::base_class;
33 virtual StatusCode
finalize()
override;
35 virtual StatusCode
getRoads(
const std::vector<std::shared_ptr<const FPGATrackSimHit>> & hits, std::vector<std::shared_ptr<const FPGATrackSimRoad>> & roads)
override;
43 Gaudi::Property <int>
m_threshold {
this,
"m_threshold", 8,
"Threshold to be allied to bins of abs(d0) > 50 (mm)"};
44 Gaudi::Property <int>
m_threshold50 {
this,
"m_threshold50", 8,
"Threshold to be allied to bins of abs(d0) < (mm)"};
45 Gaudi::Property <bool>
m_traceHits {
this,
"traceHits",
true,
"Trace each hit that goes in a bin. Disabling this will save memory/time since each bin doesn't have to store all its hits but the roads created won't have hits from convolution, etc."};
46 Gaudi::Property <float>
m_d0_range {
this,
"d0_range", 120,
"The d0 span: (-range, range) in mm"};
47 Gaudi::Property <float>
m_qOverPt_range {
this,
"qOverPt_range", 0.002,
"The q/pT span: (-range, range) in e/MeV"};
48 Gaudi::Property <bool>
m_continuous {
this,
"continuous",
true,
"assure that there is continuity of the line (i.e. middle bins in d0 are filled when one q/pT step would result in a hole)"};
60 StatusCode
fillImage(std::shared_ptr<const FPGATrackSimHit> &hit1, std::shared_ptr<const FPGATrackSimHit> &hit2,
Image& image)
const;
: FPGATrackSim-specific class to represent an hit in the detector.
Defines a class for roads.
Structs that store the 5 track parameters.
Defines several vector wrappers for homogenous multi-dimensional vectors, declared as 1D arrays for l...