ATLAS Offline Software
|
#include <PassThroughTool.h>
Private Attributes | |
Gaudi::Property< bool > | m_runSW {this, "RunSW", true, "Run software mode"} |
Software mode, not running on the FPGA. More... | |
Gaudi::Property< bool > | m_doSpacepoints {this, "DoSpacepoints", false, "Do spacepoints"} |
Temporary flag before spacepoints are ready. More... | |
Gaudi::Property< bool > | m_clusterOnlyPassThrouth |
Use the cluster-only pass through tool. More... | |
SG::ReadHandleKey< xAOD::StripClusterContainer > | m_stripClustersKey |
SG::ReadHandleKey< xAOD::PixelClusterContainer > | m_pixelClustersKey |
Definition at line 23 of file PassThroughTool.h.
StatusCode PassThroughTool::getInputClusterData | ( | const xAOD::PixelClusterContainer * | pc, |
std::vector< EFTrackingDataFormats::PixelCluster > & | ef_pc, | ||
unsigned long | N | ||
) | const |
Convert the pixel cluster from xAOD container to simple std::vector of EFTrackingDataFormats::PixelCluster.
This is needed for the kernel input.
Definition at line 364 of file PassThroughTool.cxx.
StatusCode PassThroughTool::getInputClusterData | ( | const xAOD::StripClusterContainer * | sc, |
std::vector< EFTrackingDataFormats::StripCluster > & | ef_sc, | ||
unsigned long | N | ||
) | const |
Convert the strip cluster from xAOD container to simple std::vector of EFTrackingDataFormats::StripCluster.
This is needed for the kernel input.
Definition at line 323 of file PassThroughTool.cxx.
StatusCode PassThroughTool::getInputSpacePointData | ( | const xAOD::SpacePointContainer * | sp, |
std::vector< EFTrackingDataFormats::SpacePoint > & | ef_sp, | ||
std::vector< std::vector< const xAOD::UncalibratedMeasurement * >> & | sp_meas, | ||
unsigned long | N, | ||
bool | isStrip | ||
) | const |
Convert the space point from xAOD container to simple std::vector of EFTrackingDataFormats::SpacePoint.
This is needed for the kernel input.
Definition at line 432 of file PassThroughTool.cxx.
|
override |
Definition at line 17 of file PassThroughTool.cxx.
StatusCode PassThroughTool::passThroughSW | ( | const std::vector< EFTrackingDataFormats::StripCluster > & | inputSC, |
EFTrackingDataFormats::StripClusterOutput & | ef_scOutput, | ||
const std::vector< EFTrackingDataFormats::PixelCluster > & | inputPC, | ||
EFTrackingDataFormats::PixelClusterOutput & | ef_pcOutput, | ||
const std::vector< EFTrackingDataFormats::SpacePoint > & | inputSSP, | ||
EFTrackingDataFormats::SpacePointOutput & | ef_sspOutput, | ||
const std::vector< EFTrackingDataFormats::SpacePoint > & | inputPSP, | ||
EFTrackingDataFormats::SpacePointOutput & | ef_pspOutput, | ||
EFTrackingDataFormats::Metadata * | metadata | ||
) | const |
Software version of the pass-through kernel.
The purse of this function is to mimic the FPGA output at software level.
It takes the EFTrackingDataFormats::StripCluster EFTrackingDataFormats::PixelCluster, and EFTrackingDataFormat::SpacePoints as input arguments and mimic the transfer kernel by giving array output.
Definition at line 499 of file PassThroughTool.cxx.
StatusCode PassThroughTool::passThroughSW_clusterOnly | ( | const std::vector< EFTrackingDataFormats::StripCluster > & | inputSC, |
EFTrackingDataFormats::StripClusterOutput & | ef_scOutput, | ||
const std::vector< EFTrackingDataFormats::PixelCluster > & | inputPC, | ||
EFTrackingDataFormats::PixelClusterOutput & | ef_pcOutput, | ||
EFTrackingDataFormats::Metadata * | metadata | ||
) | const |
This is a cluster-only version (sw) of the pass-through kernel This is used for cluter level studies.
Definition at line 669 of file PassThroughTool.cxx.
StatusCode PassThroughTool::runPassThrough | ( | EFTrackingDataFormats::StripClusterAuxInput & | scAux, |
EFTrackingDataFormats::PixelClusterAuxInput & | pxAux, | ||
EFTrackingDataFormats::Metadata * | metadata, | ||
const EventContext & | ctx | ||
) | const |
Call this function at the DataPreparationPipeline to run the pass-through kernels.
Definition at line 26 of file PassThroughTool.cxx.
|
inline |
A getter for the m_runSW property.
Determine if the user set the tool to run at software level. If yes, the sw version of the pass-through kernel will be executed. If not, the FPGA (hw) version will be executed
Definition at line 116 of file PassThroughTool.h.
|
private |
Use the cluster-only pass through tool.
Definition at line 121 of file PassThroughTool.h.
|
private |
Temporary flag before spacepoints are ready.
Definition at line 120 of file PassThroughTool.h.
|
private |
Definition at line 127 of file PassThroughTool.h.
|
private |
Software mode, not running on the FPGA.
Definition at line 119 of file PassThroughTool.h.
|
private |
Definition at line 124 of file PassThroughTool.h.