ATLAS Offline Software
Loading...
Searching...
No Matches
LArRawDetSelector.cxx
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
3*/
4
6
8
9#include "GaudiKernel/Bootstrap.h"
10#include "GaudiKernel/ISvcLocator.h"
11#include "GaudiKernel/MsgStream.h"
12#include "GaudiKernel/IMessageSvc.h"
15
17 : m_onlineID(nullptr),
18 m_caloCellID(nullptr),
19 m_em(false),
20 m_hec(false),
21 m_fcal(false)
22{
23 SmartIF<StoreGateSvc> detStore{Gaudi::svcLocator()->service("DetectorStore")};
24
25 detStore->retrieve(m_onlineID).orThrow(
26 "Faild to get LArOnlineID helper");
27
28 detStore->retrieve(m_caloCellID).orThrow(
29 "Faild to get LArOnlineID helper");
30}
31
33
34 m_em = m_caloCellID->is_lar_em(id) ;
35 m_hec = m_caloCellID->is_lar_hec(id) ;
36 m_fcal = m_caloCellID->is_lar_fcal(id) ;
37
38}
39
41
42 m_em = m_onlineID->isEMBchannel(chid) || m_onlineID->isEMECchannel(chid);
43 m_hec = m_onlineID->isHECchannel(chid);
44 m_fcal = m_onlineID->isFCALchannel(chid);
45
46}
47
48
49
51
52 const HWIdentifier chid=rc->identify();
53
54 if(m_em && (m_onlineID->isEMBchannel(chid) || m_onlineID->isEMECchannel(chid))) return true;
55
56 if(m_hec && m_onlineID->isHECchannel(chid)) return true;
57
58 if(m_fcal && m_onlineID->isFCALchannel(chid)) return true;
59
60 return false;
61}
62
This class provides an interface to generate or decode an identifier for the upper levels of the dete...
Helpers for checking error return status codes and reporting errors.
static Double_t rc
Container for LArRawChannel (IDC using LArRawChannelCollection)
Liquid Argon ROD output object base class.
const CaloCell_ID * m_caloCellID
LArRawDetSelector(const LArRawChannelContainer *c=NULL)
void setDet(const Identifier &id)
const LArOnlineID * m_onlineID
virtual bool select(const LArRawChannel *rawchan)