ATLAS Offline Software
Loading...
Searching...
No Matches
SCTSiLorentzAngleCondAlg.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration
3*/
4
9#ifndef SCTSiLorentzAngleCondAlg_h
10#define SCTSiLorentzAngleCondAlg_h
11
12// Athena includes
14
25
26// Gaudi includes
27#include "GaudiKernel/ServiceHandle.h"
28#include "GaudiKernel/SystemOfUnits.h"
29#include "GaudiKernel/ToolHandle.h"
30
35
37{
38 public:
39 SCTSiLorentzAngleCondAlg(const std::string& name, ISvcLocator* pSvcLocator);
40 virtual ~SCTSiLorentzAngleCondAlg() = default;
41 virtual StatusCode initialize() override final;
42 virtual StatusCode execute(const EventContext& ctx) const override final;
43 virtual StatusCode finalize() override final;
44
45 private:
46 SG::ReadCondHandleKey<SCT_DCSFloatCondData> m_readKeyTemp{this, "ReadKeyTemp", "SCT_SiliconTempCondData", "Key of input SCT temperature"};
47 SG::ReadCondHandleKey<SCT_DCSFloatCondData> m_readKeyHV{this, "ReadKeyHV", "SCT_SiliconBiasVoltCondData", "Key of input SCT HV"};
48 // The /GLOBAL/BField/Maps folder is run-lumi folder and has just one IOV. The folder is not used for IOV determination.
49 SG::ReadCondHandleKey<InDetDD::SiDetectorElementCollection> m_SCTDetEleCollKey{this, "SCTDetEleCollKey", "SCT_DetectorElementCollection", "Key of SiDetectorElementCollection for SCT"};
50 // Read handle for conditions object to get the field cache
51 SG::ReadCondHandleKey<AtlasFieldCacheCondObj> m_fieldCondObjInputKey {this, "AtlasFieldCacheCondObj", "fieldCondObj",
52 "Name of the Magnetic Field conditions object key"};
53 SG::WriteCondHandleKey<SiLorentzAngleCondData> m_writeKey{this, "WriteKey", "SCTSiLorentzAngleCondData", "Key of output SiLorentzAngleCondData"};
54
55 ToolHandle<ISiliconConditionsTool> m_siConditionsTool{this, "SiConditionsTool", "SCT_SiliconConditionsTool", "Tool to retrieve SCT silicon information"};
56
57 // Properties
58 // YOU NEED TO USE THE SAME PROPERTIES AS USED IN SCTLorentzAngleTool!!!
59 DoubleProperty m_temperature{this, "Temperature", -7., "Default temperature in Celcius."};
60 DoubleProperty m_temperatureMin{this, "TemperatureMin", -80., "Minimum temperature allowed in Celcius."};
61 DoubleProperty m_temperatureMax{this, "TemperatureMax", 100., "Maximum temperature allowed in Celcius."};
62 DoubleProperty m_deplVoltage{this, "DepletionVoltage", 70., "Default depletion voltage in Volt."};
63 DoubleProperty m_biasVoltage{this, "BiasVoltage", 150., "Default bias voltage in Volt."};
64 DoubleProperty m_nominalField{this, "NominalField", 2.0834*Gaudi::Units::tesla};
65 BooleanProperty m_useMagFieldCache{this, "UseMagFieldCache", true};
66 BooleanProperty m_useMagFieldDcs{this, "UseMagFieldDcs", true};
67 BooleanProperty m_sctDefaults{this, "useSctDefaults", false};
68 BooleanProperty m_useGeoModel{this, "UseGeoModel", false};
69 unsigned int m_maxHash;
70
72
73};
74
75#endif // SCTSiLorentzAngleCondAlg_h
Base class for conditions algorithms.
This file defines the class for a collection of AttributeLists where each one is associated with a ch...
header file for data object for SCT_DCSConditions{HV,Temp}CondAlg, SCT_DCSConditionsTool,...
Base class for conditions algorithms.
Class to hold geometrical description of a silicon detector element.
Local cache for magnetic field (based on MagFieldServices/AtlasFieldSvcTLS.h)
Amg::Vector3D getMagneticField(MagField::AtlasFieldCache &fieldCache, const InDetDD::SiDetectorElement *element) const
virtual ~SCTSiLorentzAngleCondAlg()=default
SG::ReadCondHandleKey< InDetDD::SiDetectorElementCollection > m_SCTDetEleCollKey
virtual StatusCode finalize() override final
SG::WriteCondHandleKey< SiLorentzAngleCondData > m_writeKey
SG::ReadCondHandleKey< SCT_DCSFloatCondData > m_readKeyHV
virtual StatusCode execute(const EventContext &ctx) const override final
SCTSiLorentzAngleCondAlg(const std::string &name, ISvcLocator *pSvcLocator)
SG::ReadCondHandleKey< AtlasFieldCacheCondObj > m_fieldCondObjInputKey
ToolHandle< ISiliconConditionsTool > m_siConditionsTool
SG::ReadCondHandleKey< SCT_DCSFloatCondData > m_readKeyTemp
virtual StatusCode initialize() override final
Class for data object used in SCT_DCSConditions{HV,Temp}CondAlg, SCT_DCSConditionsTool,...
Eigen::Matrix< double, 3, 1 > Vector3D
Forward declaration.
#define private