ATLAS Offline Software
Loading...
Searching...
No Matches
SCT_ConfigurationCondAlg.h
Go to the documentation of this file.
1// -*- C++ -*-
2
3/*
4 Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration
5*/
6
7#ifndef SCT_CONFIGURATIONCONDALG
8#define SCT_CONFIGURATIONCONDALG
9
11
13#include "Identifier/Identifier.h"
21
22// Gaudi includes
23#include "GaudiKernel/ICondSvc.h"
24#include "GaudiKernel/ServiceHandle.h"
25#include "GaudiKernel/ToolHandle.h"
26
27// Forward declarations
28class SCT_ID;
29
31{
32 public:
33 SCT_ConfigurationCondAlg(const std::string& name, ISvcLocator* pSvcLocator);
34 virtual ~SCT_ConfigurationCondAlg() = default;
35 virtual StatusCode initialize() override final;
36 virtual StatusCode execute(const EventContext& ctx) const override final;
37 virtual StatusCode finalize() override final;
38 virtual bool isReEntrant() const override final { return false; }
39
40 private:
42 enum {badLink=255, stripsPerChip=128, lastStrip=767};
43
44 StatusCode fillChannelData(SCT_ConfigurationCondData* writeCdo, SG::WriteCondHandle<SCT_ConfigurationCondData>& writeHandle, const EventContext& ctx) const;
45 StatusCode fillModuleData(SCT_ConfigurationCondData* writeCdo, SG::WriteCondHandle<SCT_ConfigurationCondData>& writeHandle, const EventContext& ctx) const;
46 StatusCode fillLinkStatus(SCT_ConfigurationCondData* writeCdo, SG::WriteCondHandle<SCT_ConfigurationCondData>& writeHandle, const EventContext& ctx) const;
47 Identifier getStripId(const unsigned int truncatedSerialNumber, const unsigned int chipNumber, const unsigned int stripNumber,
48 const InDetDD::SiDetectorElementCollection* elements, const EventContext& ctx) const;
49
50 static const std::string s_coolChannelFolderName;
51 static const std::string s_coolChannelFolderName2;
52 static const std::string s_coolChannelFolderName2Slim;
53 static const std::string s_coolModuleFolderName;
54 static const std::string s_coolModuleFolderName2;
55 static const std::string s_coolMurFolderName;
56 static const std::string s_coolMurFolderName2;
57
58 SG::ReadCondHandleKey<CondAttrListVec> m_readKeyChannel{this, "ReadKeyChannel", "/SCT/DAQ/Config/Chip", "Key of input (raw) conditions folder of chips"};
59 SG::ReadCondHandleKey<CondAttrListVec> m_readKeyModule{this, "ReadKeyModule", "/SCT/DAQ/Config/Module", "Key of input (raw) conditions folder of modules"};
60 SG::ReadCondHandleKey<CondAttrListVec> m_readKeyMur{this, "ReadKeyMur", "/SCT/DAQ/Config/MUR", "Key of input (raw) conditions folder of Murs"};
61 SG::ReadCondHandleKey<InDetDD::SiDetectorElementCollection> m_SCTDetEleCollKey{this, "SCTDetEleCollKey", "SCT_DetectorElementCollection", "Key of SiDetectorElementCollection for SCT"};
62 SG::WriteCondHandleKey<SCT_ConfigurationCondData> m_writeKey{this, "WriteKey", "SCT_ConfigurationCondData", "Key of output (derived) conditions data"};
63 ServiceHandle<ICondSvc> m_condSvc{this, "CondSvc", "CondSvc"};
64 ToolHandle<ISCT_CablingTool> m_cablingTool{this, "SCT_CablingTool", "SCT_CablingTool", "Tool to retrieve SCT Cabling"};
65 ToolHandle<ISCT_ReadoutTool> m_readoutTool{this, "SCT_ReadoutTool", "SCT_ReadoutTool", "Handle on readout tool"};
66 const SCT_ID* m_pHelper{nullptr};
67};
68
69#endif // SCT_CONFIGURATIONCONDALG
A CondAttrListVec is an Athena DataObject holding a vector of CORAL AttributeLists,...
Header file for abstract interface to SCT cabling tool.
Interface file for the SCT_ReadoutTool class.
header file for data object for SCT_ConfigurationCondAlg and SCT_ConfigurationConditionsTool.
An algorithm that can be simultaneously executed in multiple threads.
Class to hold the SiDetectorElement objects to be put in the detector store.
virtual StatusCode execute(const EventContext &ctx) const override final
virtual StatusCode finalize() override final
static const std::string s_coolChannelFolderName
virtual StatusCode initialize() override final
StatusCode fillChannelData(SCT_ConfigurationCondData *writeCdo, SG::WriteCondHandle< SCT_ConfigurationCondData > &writeHandle, const EventContext &ctx) const
virtual ~SCT_ConfigurationCondAlg()=default
virtual bool isReEntrant() const override final
SG::WriteCondHandleKey< SCT_ConfigurationCondData > m_writeKey
SCT_ConfigurationCondAlg(const std::string &name, ISvcLocator *pSvcLocator)
Identifier getStripId(const unsigned int truncatedSerialNumber, const unsigned int chipNumber, const unsigned int stripNumber, const InDetDD::SiDetectorElementCollection *elements, const EventContext &ctx) const
static const std::string s_coolMurFolderName
static const std::string s_coolModuleFolderName
ToolHandle< ISCT_ReadoutTool > m_readoutTool
Handle on readout tool.
ToolHandle< ISCT_CablingTool > m_cablingTool
Handle on SCT cabling service.
const SCT_ID * m_pHelper
ID helper for SCT.
static const std::string s_coolModuleFolderName2
static const std::string s_coolMurFolderName2
SG::ReadCondHandleKey< InDetDD::SiDetectorElementCollection > m_SCTDetEleCollKey
static const std::string s_coolChannelFolderName2
SG::ReadCondHandleKey< CondAttrListVec > m_readKeyModule
SG::ReadCondHandleKey< CondAttrListVec > m_readKeyChannel
StatusCode fillLinkStatus(SCT_ConfigurationCondData *writeCdo, SG::WriteCondHandle< SCT_ConfigurationCondData > &writeHandle, const EventContext &ctx) const
ServiceHandle< ICondSvc > m_condSvc
SG::ReadCondHandleKey< CondAttrListVec > m_readKeyMur
static const std::string s_coolChannelFolderName2Slim
StatusCode fillModuleData(SCT_ConfigurationCondData *writeCdo, SG::WriteCondHandle< SCT_ConfigurationCondData > &writeHandle, const EventContext &ctx) const
Class for data object used in SCT_ConfigurationCondAlg and SCT_ConfigurationConditionsTool.
This is an Identifier helper class for the SCT subdetector.
Definition SCT_ID.h:68