ATLAS Offline Software
Loading...
Searching...
No Matches
IInDetConditionsTool.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
3*/
4
9#ifndef SIMULATIONBASE
10#ifndef IInDetConditionsTool_h
11#define IInDetConditionsTool_h
12//Gaudi Includes
13#include "GaudiKernel/IInterface.h"
14
15//Local includes
18
19//forward declarations
20class Identifier;
21class IdentifierHash;
26class IInDetConditionsTool: virtual public IInterface, virtual public IAlgTool{
27public:
28 virtual ~IInDetConditionsTool() = default;
31
33 EventContext::ContextEvt_t eventId = EventContext::INVALID_CONTEXT_EVT; // invalid event ID for the start
35
36 void reset( EventContext::ContextEvt_t evtId, const IDCInDetBSErrContainer_Cache* cache) {
37 eventId = evtId;
38 IDCCache = cache;
39 }
40
41 bool needsUpdate( const EventContext& ctx) const {
42 return eventId != ctx.evt() or eventId == EventContext::INVALID_CONTEXT_EVT;
43 }
44
45 };
46
47 virtual bool isActive(const Identifier& elementId, const InDetConditions::Hierarchy h, const EventContext& ctx) const =0;
48 virtual bool isActive(const IdentifierHash& elementHash, const EventContext& ctx) const =0;
49 virtual bool isActive(const IdentifierHash& elementHash, const Identifier& elementId, const EventContext& ctx) const =0;
50 virtual double activeFraction(const IdentifierHash& elementHash, const Identifier& idStart, const Identifier& idEnd, const EventContext& ctx) const =0;
51
52 virtual bool isGood(const Identifier& elementId, const InDetConditions::Hierarchy h, const EventContext& ctx) const =0;
53 virtual bool isGood(const IdentifierHash& elementHash, const EventContext& ctx) const =0;
54 virtual bool isGood(const IdentifierHash& elementHash, const Identifier& elementId, const EventContext& ctx, const IDCCacheEntry* cacheEntry=nullptr) const =0;
55 virtual double goodFraction(const IdentifierHash& elementHash, const Identifier& idStart, const Identifier& idEnd, const EventContext& ctx) const =0;
56
57 virtual bool hasBSError(const IdentifierHash& elementHash, const EventContext& ctx, const IDCCacheEntry* cacheEntry=nullptr) const =0;
58 virtual bool hasBSError(const IdentifierHash& elementHash, Identifier elementId, const EventContext& ctx, const IDCCacheEntry* cacheEntry=nullptr) const =0;
59 virtual uint64_t getBSErrorWord(const IdentifierHash& elementHash, const EventContext& ctx, const IDCCacheEntry* cacheEntry=nullptr) const =0;
60 virtual uint64_t getBSErrorWord(const IdentifierHash& elementHash, const int index, const EventContext& ctx, const IDCCacheEntry* cacheEntry=nullptr) const =0;
61
62 virtual IDCCacheEntry* getCacheEntryOut(const EventContext& ctx) const = 0;
63};
64
65#endif
66#endif
IdentifiableValueCache< IDCInDetBSErrContainer::ErrorCode > IDCInDetBSErrContainer_Cache
Header containing the InDetHierarchy enum, to avoid pulling in a class every time it is needed and na...
Header file for AthHistogramAlgorithm.
Interface class for service providing summary of status of a detector element.
virtual bool isActive(const IdentifierHash &elementHash, const Identifier &elementId, const EventContext &ctx) const =0
virtual bool isActive(const Identifier &elementId, const InDetConditions::Hierarchy h, const EventContext &ctx) const =0
virtual double activeFraction(const IdentifierHash &elementHash, const Identifier &idStart, const Identifier &idEnd, const EventContext &ctx) const =0
virtual uint64_t getBSErrorWord(const IdentifierHash &elementHash, const EventContext &ctx, const IDCCacheEntry *cacheEntry=nullptr) const =0
virtual bool isGood(const IdentifierHash &elementHash, const EventContext &ctx) const =0
virtual bool isGood(const IdentifierHash &elementHash, const Identifier &elementId, const EventContext &ctx, const IDCCacheEntry *cacheEntry=nullptr) const =0
virtual bool isActive(const IdentifierHash &elementHash, const EventContext &ctx) const =0
virtual bool isGood(const Identifier &elementId, const InDetConditions::Hierarchy h, const EventContext &ctx) const =0
virtual bool hasBSError(const IdentifierHash &elementHash, Identifier elementId, const EventContext &ctx, const IDCCacheEntry *cacheEntry=nullptr) const =0
virtual double goodFraction(const IdentifierHash &elementHash, const Identifier &idStart, const Identifier &idEnd, const EventContext &ctx) const =0
virtual ~IInDetConditionsTool()=default
virtual IDCCacheEntry * getCacheEntryOut(const EventContext &ctx) const =0
DeclareInterfaceID(IInDetConditionsTool, 1, 0)
Creates the InterfaceID and interfaceID() method.
virtual bool hasBSError(const IdentifierHash &elementHash, const EventContext &ctx, const IDCCacheEntry *cacheEntry=nullptr) const =0
virtual uint64_t getBSErrorWord(const IdentifierHash &elementHash, const int index, const EventContext &ctx, const IDCCacheEntry *cacheEntry=nullptr) const =0
This is a "hash" representation of an Identifier.
Definition index.py:1
bool needsUpdate(const EventContext &ctx) const
void reset(EventContext::ContextEvt_t evtId, const IDCInDetBSErrContainer_Cache *cache)
const IDCInDetBSErrContainer_Cache * IDCCache