ATLAS Offline Software
|
#include <FPGATrackSimHoughTransformTool.h>
Public Types | |
typedef vector2D< std::pair< int, std::unordered_set< std::shared_ptr< const FPGATrackSimHit > > > > | Image |
Public Member Functions | |
FPGATrackSimHoughTransformTool (const std::string &, const std::string &, const IInterface *) | |
virtual StatusCode | initialize () override |
virtual StatusCode | getRoads (const std::vector< std::shared_ptr< const FPGATrackSimHit >> &hits, std::vector< std::shared_ptr< const FPGATrackSimRoad >> &roads) override |
double | getMinX () const |
double | getMaxX () const |
double | getMinY () const |
double | getMaxY () const |
unsigned | getThreshold () const |
int | getSubRegion () const |
double | yToX (double y, const std::shared_ptr< const FPGATrackSimHit > &hit) const |
Image const & | getImage () const |
Private Member Functions | |
Image | createLayerImage (std::vector< unsigned > const &combine_layers, const std::vector< std::shared_ptr< const FPGATrackSimHit >> &hits, unsigned const scale) const |
Image | createImage (const std::vector< std::shared_ptr< const FPGATrackSimHit >> &hits) const |
Image | convolute (Image const &image) const |
std::pair< unsigned, unsigned > | yToXBins (size_t yBin_min, size_t yBin_max, const std::shared_ptr< const FPGATrackSimHit > &hit) const |
unsigned | getExtension (unsigned y, unsigned layer) const |
bool | passThreshold (Image const &image, unsigned x, unsigned y) const |
void | matchIdealGeoSector (FPGATrackSimRoad &r) const |
void | addRoad (const std::vector< std::vector< std::shared_ptr< const FPGATrackSimHit >>> &hits, layer_bitmask_t hitLayers, unsigned x, unsigned y) |
void | addRoad (const std::unordered_set< std::shared_ptr< const FPGATrackSimHit >> &hits, unsigned x, unsigned y) |
void | addRoad (const std::vector< std::shared_ptr< const FPGATrackSimHit >> &hits, unsigned x, unsigned y) |
int | conv (unsigned y, unsigned x) |
void | drawImage (Image const &image, std::string const &name) |
Private Attributes | |
ServiceHandle< IFPGATrackSimEventSelectionSvc > | m_EvtSel {this, "FPGATrackSimEventSelectionSvc", "FPGATrackSimEventSelectionSvc"} |
ServiceHandle< IFPGATrackSimBankSvc > | m_FPGATrackSimBankSvc {this, "FPGATrackSimBankSvc", "FPGATrackSimBankSvc"} |
ServiceHandle< IFPGATrackSimMappingSvc > | m_FPGATrackSimMapping {this, "FPGATrackSimMappingSvc", "FPGATrackSimMappingSvc"} |
FPGATrackSimTrackPars | m_parMin |
FPGATrackSimTrackPars | m_parMax |
FPGATrackSimTrackPars::pars_index | m_par_x = FPGATrackSimTrackPars::IPHI |
FPGATrackSimTrackPars::pars_index | m_par_y = FPGATrackSimTrackPars::IHIP |
Gaudi::Property< int > | m_subRegion { this, "subRegion", 0," -1 for entire region (no slicing)"} |
Gaudi::Property< float > | m_tempMin_phi { this, "phi_min", 0, "min phi"} |
Gaudi::Property< float > | m_tempMax_phi { this, "phi_max", 0, "max phi"} |
Gaudi::Property< float > | m_tempMin_qOverPt { this, "qpT_min", 0, "min q/pt"} |
Gaudi::Property< float > | m_tempMax_qOverPt { this, "qpT_max", 0, "max q/pt"} |
Gaudi::Property< float > | m_tempMin_d0 { this, "d0_min", 0, "min q/pt"} |
Gaudi::Property< float > | m_tempMax_d0 { this, "d0_max", 0, "max q/pt"} |
Gaudi::Property< std::vector< int > > | m_threshold { this, "threshold", {},"Minimum number of hit layers to fire a road"} |
Gaudi::Property< unsigned > | m_imageSize_x { this, "nBins_x", 0, ""} |
Gaudi::Property< unsigned > | m_imageSize_y { this, "nBins_y", 0, ""} |
Gaudi::Property< std::vector< int > > | m_conv { this, "convolution", {}, "Convolution filter, with size m_convSize_y * m_convSize_x"} |
Gaudi::Property< std::vector< unsigned > > | m_combineLayers { this, "combine_layers", {}, ""} |
Gaudi::Property< std::vector< unsigned > > | m_binScale { this, "scale", {}, "Vector containing the scales for each layers"} |
Gaudi::Property< unsigned > | m_convSize_x { this, "convSize_x", 0, ""} |
Gaudi::Property< unsigned > | m_convSize_y { this, "convSize_y", 0, ""} |
Gaudi::Property< std::vector< unsigned > > | m_hitExtend_x { this, "hitExtend_x", {}, "Hit lines will fill extra bins in x by this amount on each side, size == nLayers"} |
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."} |
Gaudi::Property< bool > | m_localMaxWindowSize { this, "localMaxWindowSize", 0, "Only create roads that are a local maximum within this window size. Set this to 0 to turn off local max filtering"} |
Gaudi::Property< bool > | m_fieldCorrection { this, "fieldCorrection", true, "Apply corrections to hough equation due to field nonuniformity"} |
Gaudi::Property< bool > | m_useSectors { this, "useSectors", false, "Will reverse calculate the sector for track-fitting purposes"} |
Gaudi::Property< bool > | m_idealGeoRoads { this, "IdealGeoRoads", true, "Set sectors to use ideal geometry fit constants"} |
Gaudi::Property< bool > | m_doRegionalMapping { this, "RegionalMapping", false, "Use the sub-region maps to define the sector"} |
Gaudi::Property< bool > | m_doEtaPatternConsts { this, "doEtaPatternConsts", false, "Whether to use the eta pattern tool for constant generation"} |
Gaudi::Property< bool > | m_useSpacePoints { this, "useSpacePoints", false, "Whether we are using spacepoints."} |
std::vector< std::vector< unsigned > > | m_combineLayer2D |
unsigned | m_nLayers = 0U |
unsigned | m_nCombineLayers = 0U |
double | m_step_x = 0 |
double | m_step_y = 0 |
std::vector< double > | m_bins_x |
std::vector< double > | m_bins_y |
Image | m_image |
std::vector< FPGATrackSimRoad > | m_roads |
Definition at line 90 of file FPGATrackSimHoughTransformTool.h.
typedef vector2D<std::pair<int, std::unordered_set<std::shared_ptr<const FPGATrackSimHit> > > > FPGATrackSimHoughTransformTool::Image |
Definition at line 119 of file FPGATrackSimHoughTransformTool.h.
FPGATrackSimHoughTransformTool::FPGATrackSimHoughTransformTool | ( | const std::string & | algname, |
const std::string & | name, | ||
const IInterface * | ifc | ||
) |
Definition at line 34 of file FPGATrackSimHoughTransformTool.cxx.
|
private |
Definition at line 455 of file FPGATrackSimHoughTransformTool.cxx.
|
private |
Definition at line 468 of file FPGATrackSimHoughTransformTool.cxx.
|
private |
Definition at line 429 of file FPGATrackSimHoughTransformTool.cxx.
|
inlineprivate |
Definition at line 210 of file FPGATrackSimHoughTransformTool.h.
|
private |
Definition at line 221 of file FPGATrackSimHoughTransformTool.cxx.
|
private |
Definition at line 202 of file FPGATrackSimHoughTransformTool.cxx.
|
private |
Definition at line 162 of file FPGATrackSimHoughTransformTool.cxx.
|
private |
|
private |
Definition at line 349 of file FPGATrackSimHoughTransformTool.cxx.
Definition at line 124 of file FPGATrackSimHoughTransformTool.h.
|
inline |
Definition at line 110 of file FPGATrackSimHoughTransformTool.h.
|
inline |
Definition at line 112 of file FPGATrackSimHoughTransformTool.h.
|
inline |
Definition at line 109 of file FPGATrackSimHoughTransformTool.h.
|
inline |
Definition at line 111 of file FPGATrackSimHoughTransformTool.h.
|
overridevirtual |
Definition at line 139 of file FPGATrackSimHoughTransformTool.cxx.
|
inline |
Definition at line 114 of file FPGATrackSimHoughTransformTool.h.
|
inline |
Definition at line 113 of file FPGATrackSimHoughTransformTool.h.
|
overridevirtual |
Definition at line 41 of file FPGATrackSimHoughTransformTool.cxx.
|
private |
Definition at line 362 of file FPGATrackSimHoughTransformTool.cxx.
|
private |
double FPGATrackSimHoughTransformTool::yToX | ( | double | y, |
const std::shared_ptr< const FPGATrackSimHit > & | hit | ||
) | const |
Definition at line 300 of file FPGATrackSimHoughTransformTool.cxx.
|
private |
Definition at line 323 of file FPGATrackSimHoughTransformTool.cxx.
|
private |
Definition at line 180 of file FPGATrackSimHoughTransformTool.h.
|
private |
Definition at line 181 of file FPGATrackSimHoughTransformTool.h.
|
private |
Definition at line 157 of file FPGATrackSimHoughTransformTool.h.
|
private |
Definition at line 170 of file FPGATrackSimHoughTransformTool.h.
|
private |
Definition at line 156 of file FPGATrackSimHoughTransformTool.h.
|
private |
Definition at line 155 of file FPGATrackSimHoughTransformTool.h.
|
private |
Definition at line 158 of file FPGATrackSimHoughTransformTool.h.
|
private |
Definition at line 159 of file FPGATrackSimHoughTransformTool.h.
|
private |
Definition at line 167 of file FPGATrackSimHoughTransformTool.h.
|
private |
Definition at line 166 of file FPGATrackSimHoughTransformTool.h.
|
private |
Definition at line 131 of file FPGATrackSimHoughTransformTool.h.
|
private |
Definition at line 163 of file FPGATrackSimHoughTransformTool.h.
|
private |
Definition at line 132 of file FPGATrackSimHoughTransformTool.h.
|
private |
Definition at line 133 of file FPGATrackSimHoughTransformTool.h.
|
private |
Definition at line 160 of file FPGATrackSimHoughTransformTool.h.
|
private |
Definition at line 165 of file FPGATrackSimHoughTransformTool.h.
|
private |
Definition at line 188 of file FPGATrackSimHoughTransformTool.h.
|
private |
Definition at line 153 of file FPGATrackSimHoughTransformTool.h.
|
private |
Definition at line 154 of file FPGATrackSimHoughTransformTool.h.
|
private |
Definition at line 162 of file FPGATrackSimHoughTransformTool.h.
|
private |
Definition at line 176 of file FPGATrackSimHoughTransformTool.h.
|
private |
Definition at line 175 of file FPGATrackSimHoughTransformTool.h.
|
private |
Definition at line 142 of file FPGATrackSimHoughTransformTool.h.
|
private |
Definition at line 143 of file FPGATrackSimHoughTransformTool.h.
|
private |
Definition at line 140 of file FPGATrackSimHoughTransformTool.h.
|
private |
Definition at line 139 of file FPGATrackSimHoughTransformTool.h.
|
private |
Definition at line 189 of file FPGATrackSimHoughTransformTool.h.
|
private |
Definition at line 178 of file FPGATrackSimHoughTransformTool.h.
|
private |
Definition at line 179 of file FPGATrackSimHoughTransformTool.h.
|
private |
Definition at line 145 of file FPGATrackSimHoughTransformTool.h.
|
private |
Definition at line 151 of file FPGATrackSimHoughTransformTool.h.
|
private |
Definition at line 147 of file FPGATrackSimHoughTransformTool.h.
|
private |
Definition at line 149 of file FPGATrackSimHoughTransformTool.h.
|
private |
Definition at line 150 of file FPGATrackSimHoughTransformTool.h.
|
private |
Definition at line 146 of file FPGATrackSimHoughTransformTool.h.
|
private |
Definition at line 148 of file FPGATrackSimHoughTransformTool.h.
|
private |
Definition at line 152 of file FPGATrackSimHoughTransformTool.h.
|
private |
Definition at line 161 of file FPGATrackSimHoughTransformTool.h.
|
private |
Definition at line 164 of file FPGATrackSimHoughTransformTool.h.
|
private |
Definition at line 168 of file FPGATrackSimHoughTransformTool.h.