7#include "GaudiKernel/MsgStream.h"
15 const std::string& name,
16 const IInterface* parent)
32 std::vector<const FPGATrackSimFitConstantBank*> bankvec;
36 for (
unsigned int iplane = 0; iplane <
m_FPGATrackSimMapping->PlaneMap_1st(0)->getNLogiLayers(); iplane++) {
38 bankvec.push_back(bank);
45 for (
unsigned int iplane = 0; iplane <
m_FPGATrackSimMapping->PlaneMap_2nd(0)->getNLogiLayers(); iplane++) {
47 bankvec.push_back(bank);
52 MsgStream m(msgSvc(),
"TrackFitter");
53 m.setLevel(
msg().level());
82 return StatusCode::SUCCESS;
89 int status =
m_tfpobj->fitTracks(roads,tracks);
93 for (
auto& track : tracks) {
94 track.setQOverPt(std::clamp(
static_cast<double>(track.getQOverPt()),
96 track.setEta(std::clamp(
static_cast<double>(track.getEta()),
98 track.setPhi(std::clamp(
static_cast<double>(track.getPhi()),
100 track.setD0(std::clamp(
static_cast<double>(track.getD0()),
102 track.setZ0(std::clamp(
static_cast<double>(track.getZ0()),
106 if (msgLvl(MSG::DEBUG))
108 ATH_MSG_DEBUG(
"getTracks() returning " << tracks.size() <<
" tracks:");
109 for (
auto & t : tracks)
110 ATH_MSG_DEBUG(
"\tchi2 = " << t.getChi2() <<
" and phi = " << t.getPhi()
111 <<
" and eta = " << t.getEta() <<
" and d0 = " << t.getD0()
112 <<
" and z0 = " << t.getZ0() <<
"and pt = " << t.getPt());
115 return StatusCode::SUCCESS;
122 tracks_guessed =
m_tfpobj->getMissingHitsCheckTracks();
123 return StatusCode::SUCCESS;
#define ATH_CHECK
Evaluate an expression and check for errors.
#define ATH_MSG_WARNING(x)
Maps physical layers to logical layers.
Maps ITK module indices to FPGATrackSim regions.