ATLAS Offline Software
Loading...
Searching...
No Matches
IFPGAClusterConverter.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
3*/
4
5#ifndef IFPGAHITCONVERTER_H
6#define IFPGAHITCONVERTER_H
7
8// Include Files
9#include <string>
10#include "GaudiKernel/IInterface.h"
23
24namespace InDet {
25 class PixelCluster;
26 class SCT_Cluster;
27}
28
29class IdentifierHash;
30
31class IFPGAClusterConverter : public virtual IAlgTool {
32
33public:
34
35 virtual StatusCode convertHits(const std::vector<FPGATrackSimHit>& ,
36 InDet::PixelClusterCollection &,
37 InDet::SCT_ClusterCollection &) const = 0;
38 virtual StatusCode convertHits(const std::vector<const FPGATrackSimHit*>& ,
39 InDet::PixelClusterCollection &,
40 InDet::SCT_ClusterCollection &) const = 0;
41 virtual StatusCode convertHits(const std::vector<FPGATrackSimHit>& hits,
43 xAOD::StripClusterContainer& SCTCont) const = 0;
44
45 virtual StatusCode convertClusters(const std::vector<FPGATrackSimCluster>&,
46 InDet::PixelClusterCollection &,
47 InDet::SCT_ClusterCollection &) const = 0;
48 virtual StatusCode convertClusters(const std::vector<FPGATrackSimCluster>& cl,
50 xAOD::StripClusterContainer& SCTCont) const = 0;
51
52 virtual StatusCode convertSpacePoints(const std::vector<FPGATrackSimCluster>& fpgaSPs,
53 xAOD::SpacePointContainer& SPStripCont,
54 xAOD::SpacePointContainer& SPPixelCont,
55 xAOD::StripClusterContainer& stripClusterCont,
56 xAOD::PixelClusterContainer& pixelClusterCont) const = 0;
57
58 virtual StatusCode createPixelCluster(const FPGATrackSimHit& h, const std::vector<Identifier>& rdoList, std::unique_ptr<InDet::PixelCluster>&) const = 0;
59 virtual StatusCode createPixelCluster(const FPGATrackSimHit& h, const std::vector<Identifier>& rdoList, xAOD::PixelCluster&) const = 0;
60 virtual StatusCode createSCTCluster(const FPGATrackSimHit& h, const std::vector<Identifier>& rdoList, std::unique_ptr<InDet::SCT_Cluster>&) const = 0;
61 virtual StatusCode createSCTCluster(const FPGATrackSimHit& h, const std::vector<Identifier>& rdoList, xAOD::StripCluster&) const = 0;
62 virtual StatusCode createPixelCluster(const FPGATrackSimCluster&, std::unique_ptr<InDet::PixelCluster>&) const = 0;
63 virtual StatusCode createPixelCluster(const FPGATrackSimCluster&, xAOD::PixelCluster& ) const = 0;
64 virtual StatusCode createSCTCluster(const FPGATrackSimCluster&, std::unique_ptr<InDet::SCT_Cluster>&) const = 0;
65 virtual StatusCode createSCTCluster(const FPGATrackSimCluster&, xAOD::StripCluster& ) const = 0;
66 virtual StatusCode createSP(const FPGATrackSimCluster& cl, xAOD::SpacePoint& sp, xAOD::StripClusterContainer& clustersCont ) const = 0;
67 virtual StatusCode createPixelSPs(xAOD::SpacePointContainer& pixelSPs, xAOD::PixelClusterContainer& clustersCont ) const = 0;
68
69 virtual StatusCode getRdoList(std::vector<Identifier> &rdoList, const FPGATrackSimCluster& cluster) const = 0;
70 virtual StatusCode getStripsInfo(const xAOD::StripCluster& cl, float& halfStripLength, Amg::Vector3D& stripDirection, Amg::Vector3D& stripCenter) const = 0;
71
72
73};
74
75#endif
76
77
: FPGATrackSim-specific class to represent an hit in the detector.
defines and typedefs for IOVSvc
static Double_t sp
Header file for AthHistogramAlgorithm.
virtual StatusCode convertClusters(const std::vector< FPGATrackSimCluster > &, InDet::PixelClusterCollection &, InDet::SCT_ClusterCollection &) const =0
virtual StatusCode convertHits(const std::vector< FPGATrackSimHit > &hits, xAOD::PixelClusterContainer &pixelCont, xAOD::StripClusterContainer &SCTCont) const =0
virtual StatusCode createSCTCluster(const FPGATrackSimHit &h, const std::vector< Identifier > &rdoList, xAOD::StripCluster &) const =0
virtual StatusCode getRdoList(std::vector< Identifier > &rdoList, const FPGATrackSimCluster &cluster) const =0
virtual StatusCode createPixelCluster(const FPGATrackSimHit &h, const std::vector< Identifier > &rdoList, std::unique_ptr< InDet::PixelCluster > &) const =0
virtual StatusCode createSCTCluster(const FPGATrackSimHit &h, const std::vector< Identifier > &rdoList, std::unique_ptr< InDet::SCT_Cluster > &) const =0
virtual StatusCode createPixelCluster(const FPGATrackSimCluster &, std::unique_ptr< InDet::PixelCluster > &) const =0
virtual StatusCode createSCTCluster(const FPGATrackSimCluster &, xAOD::StripCluster &) const =0
virtual StatusCode convertSpacePoints(const std::vector< FPGATrackSimCluster > &fpgaSPs, xAOD::SpacePointContainer &SPStripCont, xAOD::SpacePointContainer &SPPixelCont, xAOD::StripClusterContainer &stripClusterCont, xAOD::PixelClusterContainer &pixelClusterCont) const =0
virtual StatusCode createSCTCluster(const FPGATrackSimCluster &, std::unique_ptr< InDet::SCT_Cluster > &) const =0
virtual StatusCode createPixelSPs(xAOD::SpacePointContainer &pixelSPs, xAOD::PixelClusterContainer &clustersCont) const =0
virtual StatusCode convertHits(const std::vector< const FPGATrackSimHit * > &, InDet::PixelClusterCollection &, InDet::SCT_ClusterCollection &) const =0
virtual StatusCode createSP(const FPGATrackSimCluster &cl, xAOD::SpacePoint &sp, xAOD::StripClusterContainer &clustersCont) const =0
virtual StatusCode getStripsInfo(const xAOD::StripCluster &cl, float &halfStripLength, Amg::Vector3D &stripDirection, Amg::Vector3D &stripCenter) const =0
virtual StatusCode convertHits(const std::vector< FPGATrackSimHit > &, InDet::PixelClusterCollection &, InDet::SCT_ClusterCollection &) const =0
virtual StatusCode createPixelCluster(const FPGATrackSimHit &h, const std::vector< Identifier > &rdoList, xAOD::PixelCluster &) const =0
virtual StatusCode convertClusters(const std::vector< FPGATrackSimCluster > &cl, xAOD::PixelClusterContainer &pixelCont, xAOD::StripClusterContainer &SCTCont) const =0
virtual StatusCode createPixelCluster(const FPGATrackSimCluster &, xAOD::PixelCluster &) const =0
This is a "hash" representation of an Identifier.
Eigen::Matrix< double, 3, 1 > Vector3D
Primary Vertex Finder.
PixelClusterContainer_v1 PixelClusterContainer
Define the version of the pixel cluster container.
StripCluster_v1 StripCluster
Define the version of the strip cluster class.
SpacePointContainer_v1 SpacePointContainer
Define the version of the space point container.
StripClusterContainer_v1 StripClusterContainer
Define the version of the strip cluster container.
PixelCluster_v1 PixelCluster
Define the version of the pixel cluster class.