![]() |
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_clusterOnlyPassThrough |
Use the cluster-only pass through tool More... | |
Gaudi::Property< unsigned int > | m_maxClusterNum |
Gaudi::Property< unsigned int > | m_maxSpacePointNum |
SG::ReadHandleKey< xAOD::StripClusterContainer > | m_stripClustersKey |
SG::ReadHandleKey< xAOD::PixelClusterContainer > | m_pixelClustersKey |
SG::ReadHandleKey< xAOD::SpacePointContainer > | m_spacePointsKey |
Definition at line 23 of file PassThroughTool.h.
StatusCode PassThroughTool::getInputClusterData | ( | const xAOD::PixelClusterContainer * | pc, |
std::vector< EFTrackingTransient::PixelCluster > & | ef_pc, | ||
unsigned long | N | ||
) | const |
Convert the pixel cluster from xAOD container to simple std::vector of EFTrackingTransient::PixelCluster.
This is needed for the kernel input.
Definition at line 501 of file PassThroughTool.cxx.
StatusCode PassThroughTool::getInputClusterData | ( | const xAOD::StripClusterContainer * | sc, |
std::vector< EFTrackingTransient::StripCluster > & | ef_sc, | ||
unsigned long | N | ||
) | const |
Convert the strip cluster from xAOD container to simple std::vector of EFTrackingTransient::StripCluster.
This is needed for the kernel input.
Definition at line 460 of file PassThroughTool.cxx.
StatusCode PassThroughTool::getInputSpacePointData | ( | const xAOD::SpacePointContainer * | sp, |
std::vector< EFTrackingTransient::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 EFTrackingTransient::SpacePoint.
This is needed for the kernel input.
Definition at line 569 of file PassThroughTool.cxx.
|
override |
Definition at line 13 of file PassThroughTool.cxx.
StatusCode PassThroughTool::passThroughSW | ( | const std::vector< EFTrackingTransient::StripCluster > & | inputSC, |
EFTrackingTransient::StripClusterOutput & | ef_scOutput, | ||
const std::vector< EFTrackingTransient::PixelCluster > & | inputPC, | ||
EFTrackingTransient::PixelClusterOutput & | ef_pcOutput, | ||
const std::vector< EFTrackingTransient::SpacePoint > & | inputSSP, | ||
EFTrackingTransient::SpacePointOutput & | ef_sspOutput, | ||
const std::vector< EFTrackingTransient::SpacePoint > & | inputPSP, | ||
EFTrackingTransient::SpacePointOutput & | ef_pspOutput, | ||
EFTrackingTransient::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 EFTrackingTransient::StripCluster EFTrackingTransient::PixelCluster, and EFTrackingDataFormat::SpacePoints as input arguments and mimic the transfer kernel by giving array output.
Definition at line 636 of file PassThroughTool.cxx.
StatusCode PassThroughTool::passThroughSW_clusterOnly | ( | const std::vector< EFTrackingTransient::StripCluster > & | inputSC, |
EFTrackingTransient::StripClusterOutput & | ef_scOutput, | ||
const std::vector< EFTrackingTransient::PixelCluster > & | inputPC, | ||
EFTrackingTransient::PixelClusterOutput & | ef_pcOutput, | ||
EFTrackingTransient::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 859 of file PassThroughTool.cxx.
StatusCode PassThroughTool::runPassThrough | ( | EFTrackingTransient::StripClusterAuxInput & | scAux, |
EFTrackingTransient::PixelClusterAuxInput & | pxAux, | ||
EFTrackingTransient::SpacePointAuxInput & | stripSpAux, | ||
EFTrackingTransient::SpacePointAuxInput & | pixelSpAux, | ||
EFTrackingTransient::Metadata * | metadata, | ||
const EventContext & | ctx | ||
) | const |
Call this function at the DataPreparationPipeline to run the pass-through kernels.
Definition at line 23 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 119 of file PassThroughTool.h.
|
private |
Use the cluster-only pass through tool
Definition at line 125 of file PassThroughTool.h.
|
private |
Temporary flag before spacepoints are ready.
Definition at line 124 of file PassThroughTool.h.
|
private |
Definition at line 127 of file PassThroughTool.h.
|
private |
Definition at line 129 of file PassThroughTool.h.
|
private |
Definition at line 136 of file PassThroughTool.h.
|
private |
Software mode, not running on the FPGA.
Definition at line 123 of file PassThroughTool.h.
|
private |
Definition at line 139 of file PassThroughTool.h.
|
private |
Definition at line 133 of file PassThroughTool.h.