ATLAS Offline Software
Loading...
Searching...
No Matches
ReadLArDigits.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration
3*/
4
11
12
13//Dear emacs, this is -*- c++ -*-
14
15#ifndef READLARDIGITS_H
16#define READLARDIGITS_H
18#include "GaudiKernel/ToolHandle.h"
19#include "GaudiKernel/MsgStream.h"
24#include "GaudiKernel/INTupleSvc.h"
25#include "GaudiKernel/NTuple.h"
26#include "GaudiKernel/SmartDataPtr.h"
30
31#include <fstream>
32
34{
35 public:
36 ReadLArDigits(const std::string & name, ISvcLocator * pSvcLocator);
37
39
40 //standart algorithm methods
41 StatusCode initialize();
42 StatusCode execute();
43 StatusCode finalize();
44
45 private:
46 SG::ReadCondHandleKey<LArOnOffIdMapping> m_cablingKey{this, "OnOffMap", "LArOnOffIdMap", "SG key for mapping object"};
50 std::ofstream m_outfile;
52 { this, "ContainerKey", "FREE", "" };
53 std::string m_dumpFile;
56 //std::string m_NTupleLoc;
57
58 NTuple::Tuple* m_ntuplePtr;
59 //NTuple::Item<long> m_cellIndex;
60 NTuple::Item<long> m_cellIndex;
61 NTuple::Array<long> m_layer, m_eta, m_phi, m_gain;
62 NTuple::Array<long> m_barrel_ec, m_pos_neg, m_FT, m_slot, m_channel;
63 NTuple::Matrix<long> m_samples;
64 NTuple::Item<long> m_Nsamples;
65 //NTuple::Array<long>* m_samples;
66 //int m_NSamples;
67
74
75
77 {
78 public:
79 SortDigits(const LArOnlineID* onlineHelper);
80 inline bool operator()(LArDigit* a, LArDigit* b);
81 private:
83 };
84};
85
86
88{const HWIdentifier chid_a=a->channelID();
89 const HWIdentifier chid_b=b->channelID();
90 if (m_onlineHelper->feb_Id(chid_a).get_compact() == m_onlineHelper->feb_Id(chid_b).get_compact())
91 return (m_onlineHelper->channel(chid_a) < m_onlineHelper->channel(chid_b));
92 else
93 return (m_onlineHelper->feb_Id(chid_a).get_compact() < m_onlineHelper->feb_Id(chid_b).get_compact());
94}
95
96
97#endif
static Double_t a
Property holding a SG store/key/clid from which a ReadHandle is made.
AthAlgorithm(const std::string &name, ISvcLocator *pSvcLocator)
Constructor with parameters:
Liquid Argon digit base class.
Definition LArDigit.h:25
Helper class for LArEM offline identifiers.
Definition LArEM_ID.h:111
SortDigits(const LArOnlineID *onlineHelper)
const LArOnlineID * m_onlineHelper
bool operator()(LArDigit *a, LArDigit *b)
NTuple::Array< long > m_channel
NTuple::Matrix< long > m_samples
StatusCode finalize()
NTuple::Array< long > m_phi
const LArEM_ID * m_emId
NTuple::Tuple * m_ntuplePtr
NTuple::Array< long > m_layer
NTuple::Array< long > m_barrel_ec
ReadLArDigits(const std::string &name, ISvcLocator *pSvcLocator)
SG::ReadCondHandleKey< LArOnOffIdMapping > m_cablingKey
StatusCode initialize()
NTuple::Array< long > m_gain
NTuple::Item< long > m_cellIndex
SG::ReadHandleKey< LArDigitContainer > m_containerKey
NTuple::Array< long > m_slot
StatusCode execute()
NTuple::Array< long > m_pos_neg
const LArOnlineID * m_onlineHelper
NTuple::Array< long > m_eta
std::ofstream m_outfile
NTuple::Array< long > m_FT
NTuple::Item< long > m_Nsamples
std::string m_dumpFile
Property holding a SG store/key/clid from which a ReadHandle is made.