43#ifndef TileTBAANtuple_H
44#define TileTBAANtuple_H
47#include "GaudiKernel/ToolHandle.h"
48#include "GaudiKernel/ServiceHandle.h"
49#include "GaudiKernel/ITHistSvc.h"
101 virtual StatusCode
execute()
override;
112 "TileSamplingFraction",
"TileSamplingFraction",
"Input Tile sampling fraction"};
115 "TileDigitsContainer",
"TileDigitsCnt",
"Input Tile digits container"};
118 "TileDigitsContainerFlx",
"",
"Input Tile FELIX digits container"};
121 "TileBeamElemContainer",
"TileBeamElemCnt",
"Input Tile beam elements container"};
124 "TileRawChannelContainerFlat",
"",
"Input Tile raw channel container reconstructed with Flat method"};
127 "TileRawChannelContainerFit",
"",
"Input Tile raw channel container reconstructed with Fit method"};
130 "TileRawChannelContainerOpt",
"TileRawChannelOpt2",
"Input Tile raw channel container reconstructed with Opt2 method"};
133 "TileRawChannelContainerDsp",
"",
"Input Tile DSP raw channel container"};
136 "TileRawChannelContainerFitCool",
"",
"Input Tile raw channel container reconstructed with Fit COOL method"};
139 "TileRawChannelContainerFitFlx",
"",
"Input Tile FELIX raw channel container reconstructed with Fit method"};
142 "TileRawChannelContainerOptFlx",
"",
"Input Tile FELIX raw channel container reconstructed with Opt2 method"};
145 "TileLaserObj",
"",
"Input Tile laser object"};
148 "TileHitContainer",
"TileHitCnt",
"Input Tile hit container"};
151 "TileHitVector",
"TileHitVec",
"Input Tile hit vector"};
154 "CaloCellContainer",
"AllCalo",
"Input Calo cell container"};
157 "TileCondToolEmscale",
"TileCondToolEmscale",
"Tile EMS conditions tool"};
160 "TileRawChannelBuilderFlatFilter",
"TileRawChannelBuilderFlatFilter",
"Tile raw channel builder tool"};
163 "TileDQstatus",
"TileDQstatus",
"TileDQstatus key" };
166 Gaudi::Property<bool>
m_useDspUnits{
this,
"UseDspUnits",
false,
"Use DSP untis"};
168 Gaudi::Property<bool>
m_calibMode{
this,
"CalibMode",
false,
"If data should be put in calib mode"};
169 Gaudi::Property<bool>
m_unpackAdder{
this,
"UnpackAdder",
false,
"Unpack adder"};
170 Gaudi::Property<bool>
m_completeNtuple{
this,
"CompleteNtuple",
true,
"Complete the ntuple"};
171 Gaudi::Property<bool>
m_bsInput{
this,
"BSInput",
true,
"Bytestream input"};
172 Gaudi::Property<bool>
m_pmtOrder{
this,
"PMTOrder",
true,
"Change channel ordering to pmt ordering in the ntuple"};
175 Gaudi::Property<unsigned int>
m_nDrawers{
this,
"NDrawers", 6,
"Number of drawers"};
176 Gaudi::Property<unsigned int>
m_nDrawersFlx{
this,
"NDrawersFelix", 0,
"Number of drawers for FELIX"};
177 Gaudi::Property<int>
m_TBperiod{
this,
"TBperiod", 2016,
"Tuned for 2016 testbeam by default"};
178 Gaudi::Property<int>
m_eventsPerFile{
this,
"EventsPerFile", 200000,
"Number of events per file"};
179 Gaudi::Property<Long64_t>
m_treeSize{
this,
"TreeSize", 16000000000LL,
"Size of tree"};
180 Gaudi::Property<std::string>
m_streamName{
this,
"StreamName",
"AANT",
"Name of the output stream"};
181 Gaudi::Property<std::string>
m_ntupleID{
this,
"NTupleID",
"h1000",
"Name of the ntuple ID"};
183 Gaudi::Property<std::vector<std::string>>
m_rosName{
this,
"rosName", {
"B",
"A",
"C",
"D",
"E"},
"Name of arrays in ntuple for different ROSes"};
184 Gaudi::Property<std::vector<std::string>>
m_drawerList{
this,
"drawerList", {
"-1"},
"List of frag IDs in correct order; Setup drawer list from data"};
185 Gaudi::Property<std::vector<int>>
m_drawerType{
this,
"drawerType", {},
"Type of every drawer 1-4: B+, B-, EB+, EB-; Take drawer type from Frag ID (doesn't work for 2003)"};
186 Gaudi::Property<std::vector<std::string>>
m_beamFragList{
this,
"beamFragList", {},
"List of beam frag IDs to store in the ntuple"};
188 Gaudi::Property<float>
m_beamBN2X1{
this,
"BN2X1", 0.0,
"Params for Beam TDC: Beam chamber: -2"};
189 Gaudi::Property<float>
m_beamBN2X2{
this,
"BN2X2", 0.2,
"Params for Beam TDC: Beam chamber: -2"};
190 Gaudi::Property<float>
m_beamBN2Y1{
this,
"BN2Y1", 0.0,
"Params for Beam TDC: Beam chamber: -2"};
191 Gaudi::Property<float>
m_beamBN2Y2{
this,
"BN2Y2", 0.2,
"Params for Beam TDC: Beam chamber: -2"};
193 Gaudi::Property<float>
m_beamBN1X1{
this,
"BN1X1", 0.0,
"Params for Beam TDC: Beam chamber: -1"};
194 Gaudi::Property<float>
m_beamBN1X2{
this,
"BN1X2", 0.2,
"Params for Beam TDC: Beam chamber: -1"};
195 Gaudi::Property<float>
m_beamBN1Y1{
this,
"BN1Y1", 0.0,
"Params for Beam TDC: Beam chamber: -1"};
196 Gaudi::Property<float>
m_beamBN1Y2{
this,
"BN1Y2", 0.2,
"Params for Beam TDC: Beam chamber: -1"};
198 Gaudi::Property<float>
m_beamBC0X1{
this,
"BC0X1", 0.0,
"Params for Beam TDC: Beam chamber: 0"};
199 Gaudi::Property<float>
m_beamBC0X2{
this,
"BC0X2", 0.2,
"Params for Beam TDC: Beam chamber: 0"};
200 Gaudi::Property<float>
m_beamBC0Y1{
this,
"BC0Y1", 0.0,
"Params for Beam TDC: Beam chamber: 0"};
201 Gaudi::Property<float>
m_beamBC0Y2{
this,
"BC0Y2", 0.2,
"Params for Beam TDC: Beam chamber: 0"};
202 Gaudi::Property<float>
m_beamBC0Z{
this,
"BC0Z", 17138.0,
"Params for Beam TDC: Beam chamber: 0"};
222 Gaudi::Property<float>
m_radius{
this,
"Radius", 2280.0,
"Inner radius of calo, for CTB 2004 only"};
223 Gaudi::Property<std::string>
m_etaFileName{
this,
"EtaFileName",
"TileEtaCTB.txt",
"File name with ETA, for CTB 2004 only"};
228 , std::vector<std::array<float, MAX_CHAN>>* eneVec
229 , std::vector<std::array<float, MAX_CHAN>>* timeVec
230 , std::vector<std::array<float, MAX_CHAN>>* chi2Vec
231 , std::vector<std::array<float, MAX_CHAN>>* pedVec
232 ,
bool saveDQstatus =
false);
237 StatusCode
storeCells(
const EventContext& ctx);
238 StatusCode
storeLaser(
const EventContext& ctx);
242 std::array<float, MAX_CHAN>& ehitVec,
243 std::array<float, MAX_CHAN>& thitVec,
246 StatusCode
initList(
const EventContext& ctx);
288 template<
typename T,
size_t N>
291 template<
typename T,
size_t N>
294 void clear_samples(std::vector<std::unique_ptr<
int []>>&
vec,
const std::vector<int>& nsamples,
int nchan=
MAX_CHAN);
297 return (abs(
m_cabling->channel2hole(fragType, chan)) - 1);
303 if (((
header >> 31 & 0x1) == 1) && ((
header >> 17 & 0x1) == 0))
313 for (
int i = 0; i < 32; ++i)
314 parity +=
header >> i & 0x1;
316 if ((parity % 2) == 1)
324 ATH_MSG_ERROR(
"The following property should be set up via JO: " << name);
330 property = defaultValue;
331 ATH_MSG_INFO(
"The following property is not set up via JO, using default value: " << name <<
"=" << defaultValue);
473 std::vector<std::vector<int> > *
m_btdc{};
603 std::map<unsigned int, unsigned int, std::less<unsigned int> >
m_drawerMap;
std::vector< size_t > vec
Property holding a SG store/key/clid from which a ReadHandle is made.
Information produced by TileDQstatusAlg (used to be done by TileBeamInfoProvider).
AthAlgorithm(const std::string &name, ISvcLocator *pSvcLocator)
Constructor with parameters:
Property holding a SG store/key/clid from which a ReadHandle is made.
This AthConstConverter class provides conversion from ByteStream to TileBeamElemContainer.
Class that holds Data Quality fragment information and provides functions to extract the data quality...
Helper class for TileCal online (hardware) identifiers.
Helper class for TileCal offline identifiers.
Condition object to keep and provide Tile Calorimeter sampling fraction and number of photoelectrons.
std::vector< std::array< float, MAX_CHAN > > m_pedflxfitVec
std::vector< std::array< int, MAX_CHAN > > m_gainVec
std::vector< std::array< float, MAX_CHAN > > m_tfitcVec
SG::ReadHandleKey< TileHitVector > m_hitVectorKey
void ENETOTAL_clearBranch(void)
//////////////////////////////////////////////////////////////////////////// Clear Tree ENETOTAL vari...
StatusCode ntuple_initialize(const EventContext &ctx)
Alg standard interface function LF TODO: We could have a problem with the new feature introduced by S...
std::vector< std::array< float, MAX_CHAN > > m_chi2DspVec
Gaudi::Property< float > m_beamBN1Y1
Gaudi::Property< float > m_beamBC1Y2
StatusCode storeRawChannels(const EventContext &ctx, const SG::ReadHandleKey< TileRawChannelContainer > &containerKey, bool calibMode, std::vector< std::array< float, MAX_CHAN > > *eneVec, std::vector< std::array< float, MAX_CHAN > > *timeVec, std::vector< std::array< float, MAX_CHAN > > *chi2Vec, std::vector< std::array< float, MAX_CHAN > > *pedVec, bool saveDQstatus=false)
/ Fill ntuple with data from TRC.
Gaudi::Property< float > m_beamBC2Z_90
StatusCode initList(const EventContext &ctx)
Gaudi::Property< float > m_beamBC0Z
std::array< float, 4 > m_LarEne
std::array< unsigned int, 96 > m_coincTrig2
Gaudi::Property< float > m_beamBN2Y1
StatusCode storeBeamElements(const EventContext &ctx)
Gaudi::Property< int > m_nSamplesFlx
void DIGI_addBranch(void)
//////////////////////////////////////////////////////////////////////////// /Add Tree DIGI variables...
const TileHWID * m_tileHWID
std::vector< std::vector< int > > * m_btdc
std::array< unsigned int, 96 > m_coincTrig6
std::array< int, 16 > m_btdc1
std::vector< short > m_sizeVec
void FELIX_addBranch(void)
std::array< float, 8 > m_ecal
short CheckDMUParity(uint32_t header)
Parity of the DMU header should be odd.
void ADDER_addBranch(void)
//////////////////////////////////////////////////////////////////////////// /Add Tree ADDER variable...
std::array< float, 3 > m_ExtEne
std::vector< int > m_l1Type
Gaudi::Property< std::vector< std::string > > m_beamFragList
SG::ReadHandleKey< TileDQstatus > m_dqStatusKey
std::vector< int > m_nSamplesFlxInDrawer
void MUON_clearBranch(void)
//////////////////////////////////////////////////////////////////////////// Clear Tree MUON variable...
StatusCode initListFlx(const EventContext &ctx)
Gaudi::Property< Long64_t > m_treeSize
std::vector< std::array< uint32_t, MAX_DMU > > m_DMUheaderVec
std::vector< std::array< int, MAX_MINIDRAWER > > m_mdBcidflxVec
Gaudi::Property< float > m_beamBC1X2
std::vector< std::array< float, MAX_CHAN > > m_tDspVec
std::vector< int > m_frBCID
void ADDER_clearBranch(void)
//////////////////////////////////////////////////////////////////////////// Clear Tree ADDER variabl...
Gaudi::Property< std::string > m_ntupleID
void LASEROBJ_addBranch(void)
std::vector< int * > m_adder
SG::ReadHandleKey< TileRawChannelContainer > m_fitRawChannelContainerKey
std::vector< std::array< short, MAX_DMU > > m_ROD_DMUDstrobeErrVec
const TileCablingService * m_cabling
StatusCode storeLaser(const EventContext &ctx)
Gaudi::Property< float > m_beamBC1Z
SG::ReadHandleKey< TileRawChannelContainer > m_flxOptRawChannelContainerKey
std::vector< std::array< int, MAX_MINIDRAWER > > m_mdChargeflxVec
std::array< float, 3 > m_GapEne
void ENETOTAL_addBranch(void)
//////////////////////////////////////////////////////////////////////////// /Add Tree ENETOTAL varia...
std::vector< std::array< int, MAX_MINIDRAWER > > m_mdChargeTimeflxVec
Gaudi::Property< float > m_beamBC1Z_min90
std::vector< std::array< float, MAX_CHAN > > m_tflxoptVec
double m_las_D2_AlphaPed_RMS
Gaudi::Property< std::vector< std::string > > m_drawerList
Gaudi::Property< float > m_beamBC2X2
SG::ReadHandleKey< TileRawChannelContainer > m_fitcRawChannelContainerKey
Gaudi::Property< std::string > m_etaFileName
TileRawChannelUnit::UNIT m_rchUnit
Unit for TileRawChannels (ADC, pCb, MeV)
void QDC_addBranch(void)
//////////////////////////////////////////////////////////////////////////// /Add QDC variables to th...
std::vector< std::array< int, MAX_MINIDRAWER > > m_mdCapacitorflxVec
Gaudi::Property< unsigned int > m_nDrawersFlx
std::vector< std::array< float, MAX_CHAN > > m_chi2OptVec
void setupBeamChambersTB2016_2020(void)
double m_las_PMT1_Ped_RMS
Gaudi::Property< int > m_finalUnit
std::vector< std::array< float, MAX_CHAN > > m_thitCnt
std::vector< std::array< float, MAX_CHAN > > m_chi2cVec
SG::ReadHandleKey< TileRawChannelContainer > m_flxFitRawChannelContainerKey
Gaudi::Property< float > m_beamBN2Y2
std::vector< std::array< float, MAX_CHAN > > m_chi2flxfitVec
std::vector< std::array< int, MAX_MINIDRAWER > > m_mdPedLoflxVec
bool m_calibrateEnergyThisEvent
StatusCode storeHitContainer(const EventContext &ctx)
/ Fill Ntuple with MC truth info from simulation / Namely, hit energies corrected by photoelectron st...
ServiceHandle< ITHistSvc > m_thistSvc
Gaudi::Property< float > m_beamBC2Z_0
Gaudi::Property< bool > m_completeNtuple
Gaudi::Property< bool > m_calibrateEnergy
Gaudi::Property< float > m_beamBC2X1
std::vector< std::array< float, MAX_CHAN > > m_ehitVec
std::array< unsigned int, 96 > m_coincTrig7
std::vector< std::array< int, MAX_MINIDRAWER > > m_mdRunTypeflxVec
std::vector< short > m_sizeflxVec
void MUON_addBranch(void)
//////////////////////////////////////////////////////////////////////////// /Add MUON variables to t...
void setupBeamChambersBeforeTB2015(void)
short CheckDMUFormat(uint32_t header)
bit_31 of the DMU header must be 1 and bit_17 of the DMU header must be 0
Gaudi::Property< float > m_beamBC2Z
std::vector< std::array< float, MAX_CHAN > > m_pedflxoptVec
StatusCode storeCells(const EventContext &ctx)
std::vector< std::array< float, MAX_CHAN > > m_eflxoptVec
Gaudi::Property< float > m_beamBC1Y1
void setupPropertyDefaultValue(float property, float defaultValue, const std::string &name)
Gaudi::Property< float > m_radius
SG::ReadHandleKey< TileRawChannelContainer > m_dspRawChannelContainerKey
void setupBeamChambersTB2015(void)
std::array< int, 16 > m_btdc2
Gaudi::Property< std::vector< int > > m_drawerType
SG::ReadHandleKey< TileLaserObject > m_laserObjectKey
std::vector< int > m_nSamplesInDrawer
std::vector< std::array< int, MAX_MINIDRAWER > > m_mdRunflxVec
SG::ReadCondHandleKey< TileSamplingFraction > m_samplingFractionKey
Name of TileSamplingFraction in condition store.
std::vector< std::array< float, MAX_CHAN > > m_pedfitVec
TileTBAANtuple(const std::string &name, ISvcLocator *pSvcLocator)
void LASER_addBranch(void)
//////////////////////////////////////////////////////////////////////////// /Add Tree LASER variable...
std::vector< std::array< float, MAX_CHAN > > m_eOptVec
std::vector< std::array< int, MAX_DMU > > m_bcidVec
SG::ReadHandleKey< TileDigitsContainer > m_digitsContainerKey
std::vector< std::array< int, MAX_MINIDRAWER > > m_mdPedHiflxVec
std::vector< std::array< short, 2 > > m_ROD_DMUMaskVec
std::vector< std::array< int, MAX_DMU > > m_feCRCVec
std::vector< std::unique_ptr< int[]> > m_sampleVec
StatusCode initNTuple(void)
std::map< unsigned int, unsigned int, std::less< unsigned int > > m_drawerMap
double m_las_D3_AlphaPed_RMS
std::array< float, 14 > m_muBack
std::vector< int > m_l1ID
std::vector< std::array< float, MAX_CHAN > > m_tfitVec
SG::ReadHandleKey< TileHitContainer > m_hitContainerKey
std::vector< std::array< int, MAX_MINIDRAWER > > m_mdModuleflxVec
Gaudi::Property< float > m_beamBC0X1
std::vector< int > m_adderPayload
std::vector< std::array< float, MAX_CHAN > > m_chi2flxoptVec
std::vector< std::array< float, MAX_CHAN > > m_pedFlatVec
std::vector< std::array< short, MAX_DMU > > m_ROD_DMUSstrobeErrVec
int digiChannel2PMT(int fragType, int chan)
void HIT_clearBranch(void)
//////////////////////////////////////////////////////////////////////////// /Clear Tree HIT variable...
void TRIGGER_clearBranch(void)
//////////////////////////////////////////////////////////////////////////// Clear Tree TRIGGER varia...
void LASER_clearBranch(void)
//////////////////////////////////////////////////////////////////////////// Clear Tree LASER variabl...
Gaudi::Property< float > m_beamBN1X1
std::vector< std::array< short, MAX_DMU > > m_DMUformatErrVec
void CISPAR_addBranch(void)
//////////////////////////////////////////////////////////////////////////// /Add Tree CISPAR variabl...
void CISPAR_clearBranch(void)
//////////////////////////////////////////////////////////////////////////// Clear Tree CISPAR variab...
std::array< float, 16 > m_timeAdd
std::vector< std::array< short, MAX_DMU > > m_DMUDataparityErrVec
std::array< unsigned int, 96 > m_coincTrig1
std::map< int, int > m_nSamplesFlxInDrawerMap
std::vector< std::array< short, MAX_DMU > > m_DMUHeadparityErrVec
void clear_init_minus1(std::vector< T > &vec)
TileRawChannelUnit::UNIT m_dspUnit
Unit for TileRawChannels in DSP.
std::vector< std::array< float, MAX_CHAN > > m_efitcVec
std::array< uint32_t, 33 > m_qdc
Gaudi::Property< float > m_beamBN1X2
StatusCode storeDigitsFlx(const EventContext &ctx, const SG::ReadHandleKey< TileDigitsContainer > &containerKey)
std::vector< std::array< float, MAX_CHAN > > m_chi2FlatVec
Gaudi::Property< int > m_nSamples
std::vector< std::array< short, MAX_DMU > > m_DMUmemoryErrVec
std::vector< std::array< float, MAX_CHAN > > m_thitVec
void HIT_addBranch(void)
//////////////////////////////////////////////////////////////////////////// /Add Tree HIT variables ...
double m_las_D4_AlphaPed_RMS
Gaudi::Property< float > m_beamBC1X1
std::vector< int > m_evType
Gaudi::Property< float > m_beamBC1Z_90
Gaudi::Property< int > m_eventsPerFile
std::vector< std::array< float, MAX_CHAN > > m_pedfitcVec
std::vector< std::array< float, MAX_CHAN > > m_eflxfitVec
std::vector< std::array< short, MAX_DMU > > m_ROD_DMUmemoryErrVec
std::vector< short > m_ROD_GlobalCRCVec
std::vector< std::array< short, MAX_DMU > > m_ROD_DMUHeadformatErrVec
std::vector< std::array< int, 2 > > m_slinkCRCVec
std::array< int, 16 > m_tof
double m_las_D1_AlphaPed_RMS
Gaudi::Property< float > m_beamBN2X2
std::vector< std::array< float, MAX_CHAN > > m_eDspVec
std::array< float, 3 > m_BarEne
Gaudi::Property< unsigned int > m_nDrawers
Gaudi::Property< std::string > m_streamName
SG::ReadHandleKey< TileRawChannelContainer > m_flatRawChannelContainerKey
ToolHandle< TileRawChannelBuilderFlatFilter > m_adderFilterAlgTool
double m_las_PMT2_Ped_RMS
std::vector< std::array< float, MAX_CHAN > > m_efitVec
std::vector< std::array< float, MAX_CHAN > > m_ehitCnt
double m_las_D4_Alpha_RMS
Gaudi::Property< float > m_beamBC1Z_0
std::vector< std::array< float, MAX_CHAN > > m_eneVec
void FELIX_clearBranch(void)
std::array< float, 2 > m_muCalib
std::vector< std::array< int, MAX_DMU > > m_rodCRCVec
SG::ReadHandleKey< CaloCellContainer > m_cellContainerKey
virtual ~TileTBAANtuple()=default
void TRIGGER_addBranch(void)
///////////////////////////////////////////////////////////////////////////
std::vector< std::array< short, MAX_DMU > > m_ROD_DMUDataformatErrVec
Gaudi::Property< int > m_TBperiod
double m_las_D2_Alpha_RMS
std::array< unsigned int, 96 > m_coincTrig8
virtual StatusCode initialize() override
std::array< unsigned int, 96 > m_coincTrig4
std::array< float, 16 > m_eneAdd
StatusCode storeDigits(const EventContext &ctx, const SG::ReadHandleKey< TileDigitsContainer > &containerKey, const TileDQstatus *dqStatus=nullptr)
/ Fill Ntuple with info from TileDigits / Return true if the collection is empty, / which means that ...
std::array< int, 16 > m_scaler
void clear_init_zero(std::vector< std::array< T, N > > &vec)
Gaudi::Property< bool > m_bsInput
void ECAL_clearBranch(void)
//////////////////////////////////////////////////////////////////////////// Clear Tree ECAL variable...
void LASEROBJ_clearBranch(void)
std::array< float, 4 > m_lasExtra
void BEAM_clearBranch(void)
//////////////////////////////////////////////////////////////////////////// Clear Tree BEAM variable...
std::array< unsigned int, 96 > m_coincTrig3
double m_las_D1_Alpha_RMS
std::vector< std::array< float, MAX_CHAN > > m_tflxfitVec
void QDC_clearBranch(void)
//////////////////////////////////////////////////////////////////////////// Clear Tree QDC variables
std::vector< std::array< int, MAX_MINIDRAWER > > m_mdL1idflxVec
std::map< unsigned int, unsigned int, std::less< unsigned int > > m_drawerFlxMap
Gaudi::Property< float > m_beamBC0Y1
Gaudi::Property< float > m_beamBN1Y2
std::vector< std::array< short, MAX_DMU > > m_ROD_DMUBCIDVec
Gaudi::Property< float > m_beamBC2Z_min90
void ECAL_addBranch(void)
//////////////////////////////////////////////////////////////////////////// /Add ECAL variables to t...
std::vector< std::unique_ptr< int[]> > m_sampleflxVec
std::vector< int > m_evtflxVec
std::vector< std::array< short, MAX_DMU > > m_DMUparityErrVec
std::vector< std::array< short, MAX_DMU > > m_DMUDstrobeErrVec
Gaudi::Property< float > m_beamBC0Y2
void DIGI_clearBranch(void)
//////////////////////////////////////////////////////////////////////////// /Clear Tree DIGI variabl...
std::vector< std::array< int, MAX_CHAN > > m_gainflxVec
std::vector< std::array< short, MAX_DMU > > m_DMUSstrobeErrVec
void storeHit(const TileHit *hit, int fragType, int fragId, std::array< float, MAX_CHAN > &ehitVec, std::array< float, MAX_CHAN > &thitVec, const TileSamplingFraction *samplingFraction)
Gaudi::Property< float > m_beamBC0X2
std::array< unsigned int, 96 > m_coincTrig5
Gaudi::Property< float > m_beamBN2X1
StatusCode ntuple_clear()
Gaudi::Property< bool > m_calibMode
SG::ReadHandleKey< TileDigitsContainer > m_digitsContainerFlxKey
void COINCBOARD_clearBranch(void)
//////////////////////////////////////////////////////////////////////////// Clear Tree COINCBOARD va...
std::vector< short > m_rodBCIDflxVec
void BEAM_addBranch(void)
//////////////////////////////////////////////////////////////////////////// /Add Tree BEAM variables...
Gaudi::Property< float > m_beamBC2Y2
double m_las_D3_Alpha_RMS
std::map< int, int > m_nSamplesInDrawerMap
std::map< unsignedint, unsignedint, std::less< unsignedint > >::iterator drawerMap_iterator
std::vector< std::array< float, MAX_CHAN > > m_timeVec
Gaudi::Property< bool > m_pmtOrder
SG::ReadHandleKey< TileRawChannelContainer > m_optRawChannelContainerKey
std::vector< std::array< float, MAX_CHAN > > m_chi2Vec
SG::ReadHandleKey< TileBeamElemContainer > m_beamElemContainerKey
Gaudi::Property< float > m_beamBC2Y1
Gaudi::Property< std::vector< std::string > > m_rosName
std::vector< short > m_rodBCIDVec
std::vector< std::array< float, MAX_CHAN > > m_tOptVec
ToolHandle< TileCondToolEmscale > m_tileToolEmscale
std::vector< int > m_evBCID
std::vector< std::array< int, 2 > > m_dmuMaskVec
Gaudi::Property< bool > m_unpackAdder
void COINCBOARD_addBranch(void)
//////////////////////////////////////////////////////////////////////////// /Add Tree COINCBOARD var...
std::vector< std::array< float, MAX_CHAN > > m_pedOptVec
void clear_samples(std::vector< std::unique_ptr< int[]> > &vec, const std::vector< int > &nsamples, int nchan=MAX_CHAN)
Gaudi::Property< bool > m_useDspUnits
std::vector< int > m_evtVec
void checkIsPropertySetup(float property, const std::string &name)
StatusCode storeHitVector(const EventContext &ctx)
virtual StatusCode execute() override