ATLAS Offline Software
Loading...
Searching...
No Matches
IITkStripCablingTool.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 IITkCablingTool_h
6#define IITkCablingTool_h
15
16//InnerDetector
17//to ensure clients can actually use the conversion constructors, include these here (otherwise could be forward declared)
19
20//Gaudi includes
21#include "GaudiKernel/EventContext.h"
22#include "GaudiKernel/IAlgTool.h"
23
24//standard includes
25#include <cstdint> //C++11
26#include <vector>
27
28//fwd declarations
29class Identifier;
30class IdentifierHash;
31
36class IITkStripCablingTool: virtual public IAlgTool {
37 public:
39 virtual ~IITkStripCablingTool() = default;
40
43
45 virtual IdentifierHash getHashFromOnlineId(const ITkStripOnlineId& onlineId, const EventContext& ctx, const bool withWarnings = true) const = 0;
46
48 virtual ITkStripOnlineId getOnlineIdFromHash(const IdentifierHash& hash) const = 0;
49 virtual ITkStripOnlineId getOnlineIdFromHash(const IdentifierHash& hash, const EventContext& ctx) const = 0;
50
52 virtual std::uint32_t getRobIdFromHash(const IdentifierHash& hash) const = 0;
53 virtual std::uint32_t getRobIdFromHash(const IdentifierHash& hash, const EventContext& ctx) const = 0;
54
56 virtual void getAllRods(std::vector<std::uint32_t>& usersVector) const = 0;
57 virtual void getAllRods(std::vector<std::uint32_t>& usersVector, const EventContext& ctx) const = 0;
58};
59
60#endif // IITkStripCablingTool_h
Client interface to the cabling, providing conversions between online and offline identifiers.
virtual std::uint32_t getRobIdFromHash(const IdentifierHash &hash, const EventContext &ctx) const =0
DeclareInterfaceID(IITkStripCablingTool, 1, 0)
Creates the InterfaceID and interfaceID() method.
virtual ITkStripOnlineId getOnlineIdFromHash(const IdentifierHash &hash) const =0
return the online Id, given a hash (used by simulation encoders)
virtual ~IITkStripCablingTool()=default
no-op destructor
virtual ITkStripOnlineId getOnlineIdFromHash(const IdentifierHash &hash, const EventContext &ctx) const =0
virtual void getAllRods(std::vector< std::uint32_t > &usersVector) const =0
fill a users vector with all the RodIds
virtual IdentifierHash getHashFromOnlineId(const ITkStripOnlineId &onlineId, const EventContext &ctx, const bool withWarnings=true) const =0
return offline hash, given the online Id (used by decoders)
virtual std::uint32_t getRobIdFromHash(const IdentifierHash &hash) const =0
return the rob/rod Id, given a hash (used by simulation encoders)
virtual void getAllRods(std::vector< std::uint32_t > &usersVector, const EventContext &ctx) const =0
This is a "hash" representation of an Identifier.