|
ATLAS Offline Software
|
Go to the documentation of this file.
20 return StatusCode::SUCCESS;
24 const EventContext& ctx = Gaudi::Hive::currentContext();
25 std::unique_ptr<std::fstream> f_dump = !
m_dumpFile.value().empty() ?
32 for (
unsigned i = 0 ;
i < staggering.size(); ++
i){
33 staggering[
i] = (staggering.size() -1) -
i;
35 for (
unsigned i = 0 ;
i < staggering.size() ;
i+=2){
38 for (
unsigned nLay : {3,4}){
43 for (
unsigned ch = 0 ;
ch < staggering.size() ; ++
ch) {
47 return StatusCode::FAILURE;
49 unsigned back_ch = testCard.
tdcChannel(off.layer, off.tube +1 , msgStream());
52 <<
static_cast<int>(off.layer)<<
","
53 <<
static_cast<int>(off.tube +1)<<
" and then back to "
55 return StatusCode::FAILURE;
59 for (
unsigned lay = 1 ; lay <= nLay ; ++lay) {
66 <<
" leads to 2 different answers "<<ch1<<
" vs. "<<ch2);
67 return StatusCode::FAILURE;
75 if (!detectorMgr.isValid()){
77 return StatusCode::FAILURE;
83 return StatusCode::FAILURE;
89 if (!deadChanHandle.isValid()) {
91 return StatusCode::FAILURE;
93 deadChan = deadChanHandle.cptr();
98 unsigned int n_elements{0}, n_success{0};
108 if (deadChan && !deadChan->isGoodChamber(readEle->
identify())) {
115 bool is_valid{
false};
121 if (deadChan && !deadChan->isGood(
tube_id)) {
171 if (!
cabling->getOnlineId(mrod_module,msgStream())){
184 ATH_MSG_INFO( n_success<<
" out of "<<n_elements<<
" channels were successfully validated.");
185 return failure ? StatusCode::FAILURE: StatusCode::SUCCESS;
int getNLayers() const
Returns the number of tube layers inside the multilayer.
SG::ReadCondHandleKey< MuonGM::MuonDetectorManager > m_DetectorManagerKey
const_id_iterator detectorElement_begin() const
Iterators over full set of ids.
bool checkConsistency(MsgStream &msg) const
checks whether the tdc mapping is complete.
uint8_t numTubesPerLayer() const
returns the number of tubes per layer;
MdtCablingTestAlg(const std::string &name, ISvcLocator *pSvcLocator)
uint8_t tdcChannel(uint8_t tubeLay, uint8_t tube, MsgStream &msg) const
returns the tdc channel number
std::array< uint8_t, 24 > Mapping
OfflineCh offlineTube(uint8_t tdc, MsgStream &msg) const
const_id_iterator detectorElement_end() const
#define ATH_MSG_VERBOSE(x)
bool empty() const
Test if the key is blank.
ServiceHandle< Muon::IMuonIdHelperSvc > m_idHelperSvc
MdtMezzanineCard - Helper struct to represent the structure of a mezzanine card in a consistent way E...
SG::ReadCondHandleKey< MuonMDT_CablingMap > m_cablingKey
Split the offline part of the cabling apart to use it later for sorting.
Helper struct to pipe the result from the tdc -> offline channel translation.
::StatusCode StatusCode
StatusCode definition for legacy code.
#define ATH_MSG_ALWAYS(x)
int getMultilayer() const
Returns the multilayer represented by the readout element.
virtual StatusCode initialize() override
Identifier channelID(int stationName, int stationEta, int stationPhi, int multilayer, int tubeLayer, int tube) const
StatusCode initialize(bool used=true)
Identifier elementID(int stationName, int stationEta, int stationPhi) const
SG::ReadCondHandleKey< MdtCondDbData > m_deadChanKey
Identifier identify() const override final
Returns the ATLAS Identifier of the MuonReadOutElement.
virtual StatusCode execute() override
Gaudi::Property< std::string > m_dumpFile
int getNtubesperlayer() const
Returns the number of tubes in each tube layer.