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
39 private:
41 enum {badLink=255, stripsPerChip=128, lastStrip=767};
42
43 StatusCode fillChannelData(SCT_ConfigurationCondData* writeCdo, SG::WriteCondHandle<SCT_ConfigurationCondData>& writeHandle, const EventContext& ctx) const;
44 StatusCode fillModuleData(SCT_ConfigurationCondData* writeCdo, SG::WriteCondHandle<SCT_ConfigurationCondData>& writeHandle, const EventContext& ctx) const;
45 StatusCode fillLinkStatus(SCT_ConfigurationCondData* writeCdo, SG::WriteCondHandle<SCT_ConfigurationCondData>& writeHandle, const EventContext& ctx) const;
46 Identifier getStripId(const unsigned int truncatedSerialNumber, const unsigned int chipNumber, const unsigned int stripNumber,
47 const InDetDD::SiDetectorElementCollection* elements, const EventContext& ctx) const;
48
49 static const std::string s_coolChannelFolderName;
50 static const std::string s_coolChannelFolderName2;
51 static const std::string s_coolChannelFolderName2Slim;
52 static const std::string s_coolModuleFolderName;
53 static const std::string s_coolModuleFolderName2;
54 static const std::string s_coolMurFolderName;
55 static const std::string s_coolMurFolderName2;
56
57 SG::ReadCondHandleKey<CondAttrListVec> m_readKeyChannel{this, "ReadKeyChannel", "/SCT/DAQ/Config/Chip", "Key of input (raw) conditions folder of chips"};
58 SG::ReadCondHandleKey<CondAttrListVec> m_readKeyModule{this, "ReadKeyModule", "/SCT/DAQ/Config/Module", "Key of input (raw) conditions folder of modules"};
59 SG::ReadCondHandleKey<CondAttrListVec> m_readKeyMur{this, "ReadKeyMur", "/SCT/DAQ/Config/MUR", "Key of input (raw) conditions folder of Murs"};
60 SG::ReadCondHandleKey<InDetDD::SiDetectorElementCollection> m_SCTDetEleCollKey{this, "SCTDetEleCollKey", "SCT_DetectorElementCollection", "Key of SiDetectorElementCollection for SCT"};
61 SG::WriteCondHandleKey<SCT_ConfigurationCondData> m_writeKey{this, "WriteKey", "SCT_ConfigurationCondData", "Key of output (derived) conditions data"};
62 ServiceHandle<ICondSvc> m_condSvc{this, "CondSvc", "CondSvc"};
63 ToolHandle<ISCT_CablingTool> m_cablingTool{this, "SCT_CablingTool", "SCT_CablingTool", "Tool to retrieve SCT Cabling"};
64 ToolHandle<ISCT_ReadoutTool> m_readoutTool{this, "SCT_ReadoutTool", "SCT_ReadoutTool", "Handle on readout tool"};
65 const SCT_ID* m_pHelper{nullptr};
66};
67
68#endif // SCT_CONFIGURATIONCONDALG
Base class for conditions algorithms.
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.
Base class for conditions algorithms.
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
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
#define private