diff --git a/Event/xAOD/xAODTracking/Root/SCTRawHitValidationAuxContainer_v1.cxx b/Event/xAOD/xAODTracking/Root/SCTRawHitValidationAuxContainer_v1.cxx index 0cd4a40a3806d7904e3fd898d99512ee282fb551..bbae7be5766700a298975790508efa99adf46263 100644 --- a/Event/xAOD/xAODTracking/Root/SCTRawHitValidationAuxContainer_v1.cxx +++ b/Event/xAOD/xAODTracking/Root/SCTRawHitValidationAuxContainer_v1.cxx @@ -1,5 +1,5 @@ /* - Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration + Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration */ #include "xAODTracking/versions/SCTRawHitValidationAuxContainer_v1.h" diff --git a/Event/xAOD/xAODTracking/Root/SCTRawHitValidation_v1.cxx b/Event/xAOD/xAODTracking/Root/SCTRawHitValidation_v1.cxx index b77313167b24d5d599f387b3977cb8f2ef83a0f8..bad5f35683eb8cd3dd7c9939f49dfc2620ac8ce2 100644 --- a/Event/xAOD/xAODTracking/Root/SCTRawHitValidation_v1.cxx +++ b/Event/xAOD/xAODTracking/Root/SCTRawHitValidation_v1.cxx @@ -1,5 +1,5 @@ /* - Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration + Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration */ #include "xAODTracking/versions/SCTRawHitValidation_v1.h" @@ -11,6 +11,11 @@ namespace xAOD { SCTRawHitValidation_v1::SCTRawHitValidation_v1() { } AUXSTORE_PRIMITIVE_SETTER_AND_GETTER(SCTRawHitValidation_v1, uint64_t, identifier, setIdentifier) + AUXSTORE_PRIMITIVE_SETTER_AND_GETTER(SCTRawHitValidation_v1, int, bec, setBec) + AUXSTORE_PRIMITIVE_SETTER_AND_GETTER(SCTRawHitValidation_v1, int, layer, setLayer) + AUXSTORE_PRIMITIVE_SETTER_AND_GETTER(SCTRawHitValidation_v1, int, eta_module, setEta_module) + AUXSTORE_PRIMITIVE_SETTER_AND_GETTER(SCTRawHitValidation_v1, int, phi_module, setPhi_module) + AUXSTORE_PRIMITIVE_SETTER_AND_GETTER(SCTRawHitValidation_v1, int, side, setSide) static const SG::AuxElement::Accessor<uint32_t> word_acc("dataword"); void SCTRawHitValidation_v1::setWord(uint32_t new_word) { diff --git a/Event/xAOD/xAODTracking/xAODTracking/versions/SCTRawHitValidationAuxContainer_v1.h b/Event/xAOD/xAODTracking/xAODTracking/versions/SCTRawHitValidationAuxContainer_v1.h index 67157be1e9c71c8251fcb2c90cce052f77522cc6..0627f07f8386ec789d32f12ada299923a03111f5 100644 --- a/Event/xAOD/xAODTracking/xAODTracking/versions/SCTRawHitValidationAuxContainer_v1.h +++ b/Event/xAOD/xAODTracking/xAODTracking/versions/SCTRawHitValidationAuxContainer_v1.h @@ -21,6 +21,11 @@ namespace xAOD { private: std::vector<uint64_t> identifier; std::vector<uint32_t> dataword; + std::vector<int> bec; + std::vector<int> layer; + std::vector<int> phi_module; + std::vector<int> eta_module; + std::vector<int> side; }; } diff --git a/Event/xAOD/xAODTracking/xAODTracking/versions/SCTRawHitValidation_v1.h b/Event/xAOD/xAODTracking/xAODTracking/versions/SCTRawHitValidation_v1.h index 559f906c79aa3136c8fc9d659b6e176783716227..640ca40a54cec6224f1c6bd58ce2daa07a442961 100644 --- a/Event/xAOD/xAODTracking/xAODTracking/versions/SCTRawHitValidation_v1.h +++ b/Event/xAOD/xAODTracking/xAODTracking/versions/SCTRawHitValidation_v1.h @@ -1,7 +1,7 @@ // -*- C++ -*- /* - Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration + Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration */ #ifndef XAODTRACKING_VERSIONS_SCTRAWHITVALIDATION_V1_H @@ -63,6 +63,37 @@ namespace xAOD { /// check if there is an error in the second hit's data bool SecondHitError() const; /// @} + + /// set bec of this RDO + void setBec(int new_bec); + + /// get bec of this RDO + int bec() const; + + /// set layer of this RDO + void setLayer(int new_layer); + + /// get layer of this RDO + int layer() const; + + /// set eta_module of this RDO + void setEta_module(int new_eta_module); + + /// get eta_module of this RDO + int eta_module() const; + + /// set phi_module of this RDO + void setPhi_module(int new_phi_module); + + /// get phi_module of this RDO + int phi_module() const; + + /// set side of this RDO + void setSide(int new_side); + + /// get side of this RDO + int side() const; + }; // end of the SCTRawHitValidation_v1 class definition } // end of the xAOD namespace diff --git a/InnerDetector/InDetEventCnv/InDetPrepRawDataToxAOD/ATLAS_CHECK_THREAD_SAFETY b/InnerDetector/InDetEventCnv/InDetPrepRawDataToxAOD/ATLAS_CHECK_THREAD_SAFETY new file mode 100644 index 0000000000000000000000000000000000000000..1f133e2fc831055f0f64826654a4d559a048ba6b --- /dev/null +++ b/InnerDetector/InDetEventCnv/InDetPrepRawDataToxAOD/ATLAS_CHECK_THREAD_SAFETY @@ -0,0 +1 @@ +InnerDetector/InDetEventCnv/InDetPrepRawDataToxAOD diff --git a/InnerDetector/InDetEventCnv/InDetPrepRawDataToxAOD/src/SCT_RawDataToxAOD.cxx b/InnerDetector/InDetEventCnv/InDetPrepRawDataToxAOD/src/SCT_RawDataToxAOD.cxx index 25ab40b25deb6c25ddae7bc3beee066bed3b2865..345d2abbc209349563b700d7bb3b488a00806f6b 100644 --- a/InnerDetector/InDetEventCnv/InDetPrepRawDataToxAOD/src/SCT_RawDataToxAOD.cxx +++ b/InnerDetector/InDetEventCnv/InDetPrepRawDataToxAOD/src/SCT_RawDataToxAOD.cxx @@ -29,14 +29,6 @@ StatusCode SCT_RawDataToxAOD::initialize() { return StatusCode::SUCCESS; } -// define accessors used by execute method; defining them once means fewer -// string comparisons. -static SG::AuxElement::Accessor<int> bec_acc("bec"); -static SG::AuxElement::Accessor<int> layer_acc("layer"); -static SG::AuxElement::Accessor<int> phi_module_acc("phi_module"); -static SG::AuxElement::Accessor<int> eta_module_acc("eta_module"); -static SG::AuxElement::Accessor<int> side_acc("side"); - StatusCode SCT_RawDataToxAOD::execute(const EventContext& ctx) const { SG::ReadHandle<SCT_RDO_Container> rdoContainer(m_rdoContainerName, ctx); @@ -56,11 +48,11 @@ StatusCode SCT_RawDataToxAOD::execute(const EventContext& ctx) const { xrdo->setIdentifier(id.get_compact()); xrdo->setWord(rdo->getWord()); // setting additional decorations based on identifier - bec_acc(*xrdo) = m_SCTHelper->barrel_ec(id); - layer_acc(*xrdo) = m_SCTHelper->layer_disk(id); - phi_module_acc(*xrdo) = m_SCTHelper->phi_module(id); - eta_module_acc(*xrdo) = m_SCTHelper->eta_module(id); - side_acc(*xrdo) = m_SCTHelper->side(id); + xrdo->setBec(m_SCTHelper->barrel_ec(id)); + xrdo->setLayer(m_SCTHelper->layer_disk(id)); + xrdo->setPhi_module(m_SCTHelper->phi_module(id)); + xrdo->setEta_module(m_SCTHelper->eta_module(id)); + xrdo->setSide(m_SCTHelper->side(id)); } } ATH_MSG_DEBUG(" recorded SCT_RawData objects: size " << xaod->size());