49 ATH_CHECK(clusterContainer.
record(std::make_unique<xAOD::HGTDClusterContainer>(),
50 std::make_unique<xAOD::HGTDClusterAuxContainer>()));
53 unsigned int nClusters=0;
54 std::vector<IHGTDClusteringTool::ClusterCollection> clusterCollection;
58 ATH_MSG_ERROR(
"Failed to retrieve HGTD ALTIROC RDO container");
59 return StatusCode::FAILURE;
62 clusterCollection.reserve(rdoContainer->size());
63 for (
const auto rdoCollection : *rdoContainer) {
64 if (rdoCollection->empty()) {
67 nRDOs+=rdoCollection->size();
69 nClusters += clusterCollection.back().size();
76 return StatusCode::FAILURE;
79 clusterCollection.reserve(rdoContainer->size());
80 for (
const auto rdoCollection : *rdoContainer) {
81 if (rdoCollection->empty()) {
84 nRDOs+=rdoCollection->size();
86 nClusters += clusterCollection.back().size();
91 std::any cache =
m_clusteringTool->createEventDataCache(*clusterContainer,nRDOs);
93 std::size_t icluster=0;
94 for (std::size_t icollection=0u; icollection<clusterCollection.size(); ++icollection) {
96 clusterCollection[icollection],
100 icluster += clusterCollection[icollection].size();
102 assert( clusterContainer->size() == icluster);
104 m_stat[
kNRdo] += nRDOs;
105 m_stat[
kNClusters] += clusterContainer->size();
106 ATH_MSG_DEBUG(
"Clusters produced size: "<<clusterContainer->size());
107 return StatusCode::SUCCESS;