ATLAS Offline Software
Loading...
Searching...
No Matches
IStripClusteringTool.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
3*/
4
5#ifndef ACTSTOOLINTERFACES_ISTRIPSTRIPCLUSTERINGTOOL_H
6#define ACTSTOOLINTERFACES_ISTRIPSTRIPCLUSTERINGTOOL_H
7
8#include <GaudiKernel/IAlgTool.h>
17#include <Acts/Clusterization/Clusterization.hpp>
18
19namespace ActsTrk {
20
21class IStripClusteringTool : virtual public IAlgTool {
22public:
24
30
31 struct Cell {
32 size_t index;
34 std::bitset<3> timeBits;
35
36 Cell(size_t i, Identifier id, const std::bitset<3>& timeBits)
37 : index(i), id(id), timeBits(timeBits) {}
38 };
39 using CellCollection = std::vector<Cell>;
40
41 struct Cluster {
42 std::vector<Identifier::value_type> ids;
43 uint16_t hitsInThirdTimeBin{0};
44 };
45 using ClusterCollection = std::vector<Cluster>;
46
47 virtual StatusCode
48 clusterize(const EventContext& ctx,
49 const RawDataCollection& RDOs,
50 const InDet::SiDetectorElementStatus& stripDetElStatus,
51 const InDetDD::SiDetectorElement& element,
52 Acts::Ccl::ClusteringData& data,
53 std::vector<ClusterCollection>& collection) const = 0;
54
55 virtual StatusCode
56 makeClusters(const EventContext& ctx,
57 ClusterCollection& cluster,
58 const InDetDD::SiDetectorElement& element,
59 typename ClusterContainer::iterator itrContainer) const = 0;
60};
61
62} // namespace
63
64#endif
char data[hepevt_bytes_allocation_ATLAS]
Definition HepEvt.cxx:11
This is an Identifier helper class for the SCT subdetector.
InDetRawDataContainer< InDetRawDataCollection< SCT_RDORawData > > SCT_RDO_Container
xAOD::StripClusterContainer ClusterContainer
virtual StatusCode clusterize(const EventContext &ctx, const RawDataCollection &RDOs, const InDet::SiDetectorElementStatus &stripDetElStatus, const InDetDD::SiDetectorElement &element, Acts::Ccl::ClusteringData &data, std::vector< ClusterCollection > &collection) const =0
xAOD::StripClusterAuxContainer ClusterAuxContainer
std::vector< Cluster > ClusterCollection
RDOContainer::base_value_type RawDataCollection
DeclareInterfaceID(IStripClusteringTool, 1, 0)
virtual StatusCode makeClusters(const EventContext &ctx, ClusterCollection &cluster, const InDetDD::SiDetectorElement &element, typename ClusterContainer::iterator itrContainer) const =0
DataModel_detail::iterator< DataVector > iterator
Definition DataVector.h:842
Class to hold geometrical description of a silicon detector element.
This is an Identifier helper class for the SCT subdetector.
Definition SCT_ID.h:68
The AlignStoreProviderAlg loads the rigid alignment corrections and pipes them through the readout ge...
Definition index.py:1
StripClusterContainer_v1 StripClusterContainer
Define the version of the strip cluster container.
StripClusterAuxContainer_v1 StripClusterAuxContainer
Definition of the current strip cluster auxiliary container.
Cell(size_t i, Identifier id, const std::bitset< 3 > &timeBits)
std::vector< Identifier::value_type > ids