|
ATLAS Offline Software
|
Go to the documentation of this file.
43 #ifndef TILEREC_TILEAANTUPLE_H
44 #define TILEREC_TILEAANTUPLE_H
65 #include "GaudiKernel/ToolHandle.h"
66 #include "GaudiKernel/ServiceHandle.h"
67 #include "GaudiKernel/IFileMgr.h"
81 #define N_TMDBCHANS 8 // 4 in EB and 8 in B
82 #define N_TMDBDECISIONS 4
179 for (
int i = 0;
i < 32; ++
i)
182 if ((parity % 2) == 1)
331 float m_HV[4][64][48] = {{{0}}};
399 "FileMgr",
"FileMgr",
"The File manager service" };
413 ToolHandle<ITileDCSTool>
m_tileDCS{
this,
"TileDCSTool",
"TileDCSTool",
"Tile DCS tool"};
436 "TileCablingSvc",
"TileCablingSvc",
"The Tile cabling service" };
439 "ROBDataProviderSvc",
"ROBDataProviderSvc",
"The ROB data provider service" };
442 "TileROD_Decoder",
"TileROD_Decoder",
"Tile ROD decoder"};
445 "TileDQstatus",
"TileDQstatus",
"TileDQstatus key" };
448 #endif // TILEREC_TILEAANTUPLE_H
Property holding a SG store/key/clid from which a ReadHandle is made.
void TMDB_clearBranch(void)
float m_eQIE[N_ROS2][N_MODULES][N_CHANS]
char m_dateTime[32]
event date and time
bool m_checkDCS
if false, do not use TileDCS at all
float m_pedOpt[N_ROS2][N_MODULES][N_CHANS]
float m_pedDsp[N_ROS2][N_MODULES][N_CHANS]
short m_CHSTATUS[4][64][48]
float m_sumE_yy[N_DRAWERS]
Sum E calcualted inside DSP.
TileRawChannelUnit::UNIT m_dspUnit
Unit for TileRawChannels in DSP.
StatusCode storeTMDBDigits(const EventContext &ctx)
float m_eWiener[N_ROS2][N_MODULES][N_CHANS]
#define N_ROS
Filename : TileAANtuple.h Author : Alexander Solodkov (based on TileTBAANtuple) Created : April,...
short m_HVSTATUS[4][64][48]
uint32_t m_DMUheader[N_ROS2][N_MODULES][N_DMUS]
float m_chi2Dsp[N_ROS2][N_MODULES][N_CHANS]
float m_las_D_AlphaPed_RMS[TileLaserObject::nbGains][TileLaserObject::nbDiodes]
short m_ROD_DMUDataparityErr[N_ROS][N_MODULES][N_DMUS]
int m_lumiBlock
lumiblock number in a run
ToolHandle< TileROD_Decoder > m_decoder
unsigned char m_bcidTMDB[N_ROS][N_MODULES][3]
void fillCellMap(TTree *ntuplePtr)
///////////////////////////////////////////////////////////////////////////
ToolHandle< TileL2Builder > m_l2Builder
short m_gain[N_ROS2][N_MODULES][N_CHANS]
int m_finalUnit
calibrate everything to this level
short m_ROD_DMUrodCRC[N_ROS][N_MODULES][N_DMUS]
int m_HHMMSS
event time in HH:MM:SS
ServiceHandle< ITHistSvc > m_thistSvc
int m_evBCID[N_RODS]
Event BCID from ROD header.
float m_tWiener[N_ROS2][N_MODULES][N_CHANS]
bool m_compareMode
If two sets of data should be compared (e.g.
ToolHandle< ITileBadChanTool > m_tileBadChanTool
Tile Bad Channel tool.
StatusCode initNTuple(const EventContext &ctx)
float m_pedMF[N_ROS2][N_MODULES][N_CHANS]
ServiceHandle< TileCablingSvc > m_cablingSvc
Name of Tile cabling service.
uint16_t m_ROD_DMUMask[N_ROS][N_MODULES][2]
short m_ROD_DMUBCIDErr[N_ROS][N_MODULES][N_DMUS]
float m_sumEz_xx[N_DRAWERS]
Sum Ez recalculated offline using DSP raw channels.
short m_fragSize[N_ROS][N_MODULES]
float m_tDsp[N_ROS2][N_MODULES][N_CHANS]
float m_las_D_Alpha[TileLaserObject::nbGains][TileLaserObject::nbDiodes]
bool m_pmtOrder
change channel ordering to pmt ordering in ntuple
SG::ReadHandleKey< TileLaserObject > m_laserObjectKey
short m_DMUmemoryErr[N_ROS2][N_MODULES][N_DMUS]
std::vector< uint32_t > m_ROBID
bool m_calibrateEnergy
convert energy to new units or use amplitude from RawChannel directly
float m_sumE_xx[N_DRAWERS]
Sum E recalculated offline using DSP raw channels.
short m_DMUformatErr[N_ROS2][N_MODULES][N_DMUS]
float m_sumEt_xx[N_DRAWERS]
Sum Et recalculated offline using DSP raw channels.
short m_ROD_DMUHeadformatErr[N_ROS][N_MODULES][N_DMUS]
float m_las_D_AlphaPed[TileLaserObject::nbGains][TileLaserObject::nbDiodes]
float m_sumEz_zz[N_DRAWERS]
Sum Ez recalculated offline using offline OF.
void LASER_clearBranch(void)
//////////////////////////////////////////////////////////////////////////// Clear Tree LASER variabl...
StatusCode storeTMDBDecision(const EventContext &ctx)
float m_chi2Opt[N_ROS2][N_MODULES][N_CHANS]
int m_evType[N_RODS]
Event Type from ROD header.
short m_ROD_BCID[N_ROS][N_MODULES]
float m_chi2OF1[N_ROS2][N_MODULES][N_CHANS]
SG::ReadHandleKey< TileRawChannelContainer > m_wienerRawChannelContainerKey
int m_DCSBranches
mask like 110101 - which DCS branches to fill
int m_las_D_ADC[TileLaserObject::nbGains][TileLaserObject::nbDiodes]
StatusCode storeBeamElements(const TileDQstatus &DQstatus)
StatusCode storeTMDBRawChannel(const EventContext &ctxx)
short m_rodCRC[N_ROS2][N_MODULES][N_DMUS]
float m_las_PMT_Ped[TileLaserObject::nbGains][TileLaserObject::nbPmts]
float m_pedWiener[N_ROS2][N_MODULES][N_CHANS]
StatusCode storeMFRawChannels(const EventContext &ctx, const SG::ReadHandleKey< TileRawChannelContainer > &containerKey, float *ene, float *time, float chi2[N_ROS2][N_MODULES][N_CHANS], float ped[N_ROS2][N_MODULES][N_CHANS], bool fillAll)
void LASER_addBranch(void)
//////////////////////////////////////////////////////////////////////////// /Add Tree LASER variable...
Helper class for TileCal online (hardware) identifiers.
float m_tOF1[N_ROS2][N_MODULES][N_CHANS]
Class that holds Data Quality fragment information and provides functions to extract the data quality...
unsigned char m_decisionTMDB[N_ROS][N_MODULES][N_TMDBDECISIONS]
const TileCablingService * m_cabling
cabling tool
float m_sumEt_zz[N_DRAWERS]
Sum Et recalculated offline using offline OF.
uint16_t m_dmuMask[N_ROS][N_MODULES][2]
SG::ReadHandleKey< TileRawChannelContainer > m_fitRawChannelContainerKey
uint16_t m_slinkCRC[N_ROS][N_MODULES][2]
float m_eOpt[N_ROS2][N_MODULES][N_CHANS]
short m_ROD_DMUDataformatErr[N_ROS][N_MODULES][N_DMUS]
SG::ReadHandleKey< TileRawChannelContainer > m_of1RawChannelContainerKey
float m_las_D_Ped_RMS[TileLaserObject::nbGains][TileLaserObject::nbDiodes]
StatusCode ntuple_initialize(const EventContext &ctx, const TileDQstatus &DQstatus)
short m_ROD_DMUfeCRC[N_ROS][N_MODULES][N_DMUS]
short m_ROD_DMUHeadparityErr[N_ROS][N_MODULES][N_DMUS]
TileAANtuple(const std::string &name, ISvcLocator *pSvcLocator)
Helper class for TileCal offline identifiers.
bool m_calibMode
If data should be put in calib mode.
short m_gainFlt[N_ROS2][N_MODULES][N_CHANS]
::StatusCode StatusCode
StatusCode definition for legacy code.
SG::ReadHandleKey< TileRawChannelContainer > m_dspRawChannelContainerKey
float m_chi2Fitc[N_ROS2][N_MODULES][N_CHANS]
void TRIGGER_clearBranch(void)
//////////////////////////////////////////////////////////////////////////// Clear Tree TRIGGER varia...
uint32_t m_cispar[N_CISPAR]
double chi2(TH1 *h0, TH1 *h1)
SG::ReadHandleKey< TileRawChannelContainer > m_rawChannelContainerKey
bool m_bsInput
true if bytestream file is used
float m_eFit[N_ROS2][N_MODULES][N_CHANS]
StatusCode initialize()
Alg standard interface function.
float m_chi2[N_ROS2][N_MODULES][N_CHANS]
void CISPAR_clearBranch(void)
//////////////////////////////////////////////////////////////////////////// Clear Tree CISPAR variab...
int m_las_PMT_TDC[TileLaserObject::nbGains][TileLaserObject::nbPmts]
float m_sumE_zz[N_DRAWERS]
Sum E recalculated offline using offline OF.
SG::ReadHandleKey< TileRawChannelContainer > m_optRawChannelContainerKey
StatusCode storeRawChannels(const EventContext &ctx, const SG::ReadHandleKey< TileRawChannelContainer > &containerKey, float ene[N_ROS2][N_MODULES][N_CHANS], float time[N_ROS2][N_MODULES][N_CHANS], float chi2[N_ROS2][N_MODULES][N_CHANS], float ped[N_ROS2][N_MODULES][N_CHANS], bool fillAll)
/ Fill ntuple with data from TRC.
ToolHandle< TileCondToolEmscale > m_tileToolEmscale
main Tile Calibration tool
short m_DMUSstrobeErr[N_ROS2][N_MODULES][N_DMUS]
Information produced by TileDQstatusAlg (used to be done by TileBeamInfoProvider).
This AthConstConverter class provides conversion from ByteStream to TileBeamElemContainer.
short m_ROD_DMUmemoryErr[N_ROS][N_MODULES][N_DMUS]
SG::ReadHandleKey< TileL2Container > m_l2CntKey
float m_eOF1[N_ROS2][N_MODULES][N_CHANS]
float m_eDsp[N_ROS2][N_MODULES][N_CHANS]
short m_ROD_DMUSstrobeErr[N_ROS][N_MODULES][N_DMUS]
SG::ReadHandleKey< TileRawChannelContainer > m_mfRawChannelContainerKey
ServiceHandle< IFileMgr > m_fileMgr
short m_DMUparityErr[N_ROS2][N_MODULES][N_DMUS]
float m_sumEt_yy[N_DRAWERS]
Sum Et calcualted inside DSP.
uint32_t m_dspFlags
DSP flags from BS.
float m_time[N_ROS2][N_MODULES][N_CHANS]
short m_ROD_DMUDstrobeErr[N_ROS][N_MODULES][N_DMUS]
void DIGI_addBranch(void)
//////////////////////////////////////////////////////////////////////////// /Add Tree DIGI variables...
bool m_bad[N_ROS][N_MODULES][N_CHANS]
float m_eFitc[N_ROS2][N_MODULES][N_CHANS]
SG::ReadHandleKey< TileMuonReceiverContainer > m_tileMuRcvContainerKey
SG::ReadHandleKey< TileBeamElemContainer > m_beamElemContainerKey
SG::ReadHandleKey< TileDigitsContainer > m_digitsContainerKey
SG::ReadHandleKey< TileRawChannelContainer > m_fitcRawChannelContainerKey
int m_las_PMT_ADC[TileLaserObject::nbGains][TileLaserObject::nbPmts]
float m_ene[N_ROS2][N_MODULES][N_CHANS]
unsigned char * m_sampleTMDB
float m_chi2MF[N_ROS2][N_MODULES][N_CHANS]
float m_chi2Wiener[N_ROS2][N_MODULES][N_CHANS]
float m_ped[N_ROS2][N_MODULES][N_CHANS]
void DIGI_clearBranch(void)
//////////////////////////////////////////////////////////////////////////// /Clear Tree DIGI variabl...
float m_chi2Fit[N_ROS2][N_MODULES][N_CHANS]
const TileDetDescrManager * m_tileMgr
Pointer to TileDetDescrManager.
short m_feCRC[N_ROS2][N_MODULES][N_DMUS]
class to produce TileCal commissioning ntuples
StatusCode ntuple_clear()
float m_pedFitc[N_ROS2][N_MODULES][N_CHANS]
SG::ReadHandleKey< TileRawChannelContainer > m_tileMuRcvRawChannelContainerKey
SG::ReadHandleKey< TileDigitsContainer > m_tileMuRcvDigitsContainerKey
def time(flags, cells_name, *args, **kw)
int m_trigType
trigger type (1=Phys, 2=Laser, 4=Ped, 8=CIS)
static int channel2hole(int ros, int channel)
StatusCode storeLaser(const EventContext &ctx)
float m_sumEz_yy[N_DRAWERS]
Sum Ez calcualted inside DSP.
defines and typedefs for IOVSvc
float m_tFitc[N_ROS2][N_MODULES][N_CHANS]
float m_las_D_Alpha_RMS[TileLaserObject::nbGains][TileLaserObject::nbDiodes]
short m_rodBCID[N_ROS][N_MODULES]
float m_las_D_Ped[TileLaserObject::nbGains][TileLaserObject::nbDiodes]
int digiChannel2PMT(int fragType, int chan)
int m_l1Type[N_RODS]
Level1 Type from ROD header.
short CheckDMUFormat(uint32_t header)
bit_31 of the DMU header must be 1 and bit_17 of the DMU header must be 0
void TRIGGER_addBranch(void)
//////////////////////////////////////////////////////////////////////////// /Add TRIGGER variables t...
int m_l1ID[N_RODS]
Level1 ID from ROD header.
SG::ReadHandleKey< TileRawChannelContainer > m_qieRawChannelContainerKey
float m_pedQIE[N_ROS2][N_MODULES][N_CHANS]
const TileHWID * m_tileHWID
SG::ReadHandleKey< TileDQstatus > m_DQstatusKey
short CheckDMUParity(uint32_t header)
Parity of the DMU header should be odd.
TileRawChannelUnit::UNIT m_rchUnit
Unit for TileRawChannels (ADC, pCb, MeV)
float m_tOpt[N_ROS2][N_MODULES][N_CHANS]
bool m_useDspUnits
true if energy should be converted to units used in DSP
float m_pedOF1[N_ROS2][N_MODULES][N_CHANS]
void TMDB_addBranch(void)
void CISPAR_addBranch(void)
//////////////////////////////////////////////////////////////////////////// /Add Tree CISPAR variabl...
ToolHandle< ITileDCSTool > m_tileDCS
float m_eTMDB[N_ROS][N_MODULES][N_TMDBCHANS]
int m_nSamples
number of samples
SG::ReadHandleKey< TileDigitsContainer > m_fltDigitsContainerKey
ServiceHandle< IROBDataProviderSvc > m_robSvc
float m_tQIE[N_ROS2][N_MODULES][N_CHANS]
short m_ROD_GlobalCRC[N_ROS][N_MODULES]
int m_evt
event number in a run
StatusCode storeDigits(const EventContext &ctx, const SG::ReadHandleKey< TileDigitsContainer > &containerKey, short *sample, short gain[N_ROS2][N_MODULES][N_CHANS], bool fillAll)
/ Fill Ntuple with info from TileDigits / Return true if the collection is empty
std::unique_ptr< Arrays > m_arrays
float m_las_PMT_Ped_RMS[TileLaserObject::nbGains][TileLaserObject::nbPmts]
short m_DMUDstrobeErr[N_ROS2][N_MODULES][N_DMUS]
float m_tFit[N_ROS2][N_MODULES][N_CHANS]
float m_chi2QIE[N_ROS2][N_MODULES][N_CHANS]
short m_DMUbcid[N_ROS2][N_MODULES][N_DMUS]
float m_pedFit[N_ROS2][N_MODULES][N_CHANS]