ATLAS Offline Software
Loading...
Searching...
No Matches
SCT_SensorsTool.cxx
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
3*/
4
10
11#include "SCT_SensorsTool.h"
12
13SCT_SensorsTool::SCT_SensorsTool(const std::string& type, const std::string& name, const IInterface* parent) :
14 base_class(type, name, parent) {
15}
16// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
18 // Read Cond Handle Key
19 ATH_CHECK(m_condKey.initialize());
20
21 return StatusCode::SUCCESS;
22}
23// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
25 return StatusCode::SUCCESS;
26}
27
28// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
29
30const SCT_SensorCondData* SCT_SensorsTool::getSensorsData(const unsigned int truncatedSerialNumber, const EventContext& ctx) const {
31 const SCT_SensorsCondData* condData{getCondData(ctx)};
32 if (condData==nullptr) return nullptr;
33
34 SCT_SensorsCondData::const_iterator it{condData->find(truncatedSerialNumber)};
35 if (it!=condData->end()) return &((*it).second);
36 return nullptr;
37}
38
39const SCT_SensorCondData* SCT_SensorsTool::getSensorsData(const unsigned int truncatedSerialNumber) const {
40 const EventContext& ctx{Gaudi::Hive::currentContext()};
41 return getSensorsData(truncatedSerialNumber, ctx);
42}
43
44void SCT_SensorsTool::getSensorsData(std::vector<std::string>& /*userVector*/, const EventContext& /*ctx*/) const {
45 ATH_MSG_WARNING("This void SCT_SensorsTool::getSensorsData(std::vector<std::string>& userVector) method is not implemented.");
46}
47
48void SCT_SensorsTool::getSensorsData(std::vector<std::string>& userVector) const {
49 const EventContext& ctx{Gaudi::Hive::currentContext()};
50 getSensorsData(userVector, ctx);
51}
52
53std::string SCT_SensorsTool::getManufacturer(unsigned int truncatedSerialNumber, const EventContext& ctx) const {
54 std::string manufacturer{""};
55
56 const SCT_SensorsCondData* condData{getCondData(ctx)};
57 if (condData==nullptr) return manufacturer;
58
59 SCT_SensorsCondData::const_iterator it{condData->find(truncatedSerialNumber)};
60 if (it!=condData->end()) {
61 manufacturer = (*it).second.getManufacturer();
62 }
63 return manufacturer;
64}
65
66std::string SCT_SensorsTool::getManufacturer(unsigned int truncatedSerialNumber) const {
67 const EventContext& ctx{Gaudi::Hive::currentContext()};
68 return getManufacturer(truncatedSerialNumber, ctx);
69}
70
71void SCT_SensorsTool::printManufacturers(const EventContext& ctx) const {
72 const SCT_SensorsCondData* condData{getCondData(ctx)};
73 if (condData==nullptr) return;
74
75 for (const std::pair<const CondAttrListCollection::ChanNum, SCT_SensorCondData>& it: *condData) {
76 ATH_MSG_ALWAYS("channel " << it.first << " manufacturer " << (it.second).getManufacturer());
77 }
78}
79
81 const EventContext& ctx{Gaudi::Hive::currentContext()};
82 return printManufacturers(ctx);
83}
84
86SCT_SensorsTool::getCondData(const EventContext& ctx) const {
88 return condData.retrieve();
89}
#define ATH_CHECK
Evaluate an expression and check for errors.
#define ATH_MSG_ALWAYS(x)
#define ATH_MSG_WARNING(x)
std::map< CondAttrListCollection::ChanNum, SCT_SensorCondData > SCT_SensorsCondData
Class for data object for SCT_SensorsCondAlg and SCT_SensorsTool.
header file for tool allowing one to get Vdep, crystal orientation and Mfr for sensors from a modules
Class for data object used in SCT_SensorsCondAlg and SCT_SensorsTool.
virtual void getSensorsData(std::vector< std::string > &userVector, const EventContext &ctx) const override
SCT_SensorsTool(const std::string &type, const std::string &name, const IInterface *parent)
const SCT_SensorsCondData * getCondData(const EventContext &ctx) const
virtual StatusCode finalize() override
SG::ReadCondHandleKey< SCT_SensorsCondData > m_condKey
virtual const SCT_SensorCondData * getSensorsData(const unsigned int truncatedSerialNumber) const override
virtual void printManufacturers() const override
virtual std::string getManufacturer(unsigned int truncatedSerialNumber, const EventContext &ctx) const override
virtual StatusCode initialize() override
const_pointer_type retrieve()