|
ATLAS Offline Software
|
Go to the documentation of this file.
18 ISvcLocator* pSvcLocator) :
21 , m_caloCellId(nullptr) {
43 int defaultCuts_barrel[] = { 1000, 1000, 1000, 1000 };
44 int defaultCuts_endcap[] = { 2000, 2000, 2000, 2000 };
48 <<
" energy cut values provided for the endcap : reverting to default" <<
endmsg;
54 <<
" energy cut values provided for the endcap : reverting to default" <<
endmsg;
58 msg(MSG::INFO) <<
"Energy cuts (Barrel) : ";
62 msg() << MSG::INFO <<
"Energy cuts (Endcap) : ";
66 return StatusCode::SUCCESS;
70 const std::vector<int>&
79 std::vector<int> energyCuts;
91 if (sampling < 0)
continue;
124 return StatusCode::SUCCESS;
142 std::bitset<200000> keepSet;
146 if (abs(
chan.energy())>=energyCuts[onlHash]) {
147 keepSet.set(onlHash);
153 for (
const LArDigit* dig : *inputContainer) {
155 if (keepSet.test(onlHash)) {
156 outputContainer->push_back(dig);
161 << inputContainer->size() <<
" digits.");
163 return StatusCode::SUCCESS;
def retrieve(aClass, aKey=None)
IdentifierHash channel_Hash(HWIdentifier channelId) const
Create channel_hash from channel_Id.
const CaloCell_ID * m_caloCellId
const T * ptr() const
Return a pointer to the cached value.
@ VIEW_ELEMENTS
this data object is a view, it does not own its elmts
CxxUtils::CachedValue< std::vector< int > > m_energyCuts
DataVector adapter that acts like it holds const pointers.
Gaudi::Details::PropertyBase & declareProperty(Gaudi::Property< T > &t)
bool isValid() const
Test to see if the value is valid.
std::vector< int > m_energyCuts_barrel
LArDigitThinner(const std::string &name, ISvcLocator *pSvcLocator)
SG::ReadHandleKey< LArRawChannelContainer > m_rawChannelKey
const ServiceHandle< StoreGateSvc > & detStore() const
The standard StoreGateSvc/DetectorStore Returns (kind of) a pointer to the StoreGateSvc.
An algorithm that can be simultaneously executed in multiple threads.
StatusCode initialize() override
Liquid Argon digit base class.
Liquid Argon ROD output object base class.
int sampling(const Identifier id) const
LAr field values (NOT_VALID == invalid request)
::StatusCode StatusCode
StatusCode definition for legacy code.
SG::ReadHandleKey< LArDigitContainer > m_inputKey
StatusCode execute(const EventContext &ctx) const override
StatusCode initialize(bool used=true)
If this object is used as a property, then this should be called during the initialize phase.
const std::vector< int > & initCutValues(const EventContext &ctx) const
id_range cell_range(void) const
Range over full set of Identifiers (LAr + Tiles)
bool is_em_barrel(const Identifier id) const
test if the id belongs to the EM barrel
size_type channelHashMax(void) const
Define channel hash tables max size.
StatusCode initialize(bool used=true)
void set(const T &val) const
Set the value, assuming it is currently invalid.
StatusCode finalize() override
StatusCode record(std::unique_ptr< T > data)
Record a const object to the store.
SG::ReadCondHandleKey< LArOnOffIdMapping > m_cablingKey
const LArOnlineID * m_onlineID
This is a "hash" representation of an Identifier. This encodes a 32 bit index which can be used to lo...
std::vector< int > m_energyCuts_endcap
SG::WriteHandleKey< ConstDigitCont_t > m_outputKey