5#ifndef TILECONDITIONS_TILEINFO_H
6#define TILECONDITIONS_TILEINFO_H
26#include "Identifier/Identifier.h"
31#include "GaudiKernel/ToolHandle.h"
32#include "GaudiKernel/ServiceHandle.h"
68 {
return m_tileID->is_tile_gapscin(cell_id) ? 1:2; }
94 const TMatrixD *
DecoCovariance(
int ros,
int drawer,
int hilo)
const;
239 void ttl1Shape(
const int nsamp,
const int itrig,
const double phase,
240 std::vector<double> &ttl1shape)
const;
242 void muRcvShape(
const int nsamp,
const int itrig,
const double phase,
243 std::vector<double> &murcvshape)
const;
275 double ttl1Phase(
const int ,
const int ,
const int )
const {
return 0.;}
289 IMessageSvc*
msgSvc()
const;
macros to associate a CLID to a type
#define CLASS_DEF(NAME, CID, VERSION)
associate a clid and a version to a type eg
This class saves the "context" of an expanded identifier (ExpandedIdentifier) for compact or hash ver...
Generic class for storing a number of floats (Flt) for each channel or ADC.
Helper class for TileCal online (hardware) identifiers.
Helper class for TileCal offline identifiers.
int digitsTime0BinHi() const
Return index of in-time bin in high gain DigitShape.
double MuL1Calib(const Identifier &) const
Returns the factor which converts amplitude in pCb to mV in muon L1 output.
int ttl1NBins() const
Return number of bins in TTL1Shape.
double MuL1Thresh(const Identifier &) const
Returns the threshold (in mV) for muon L1 output.
int ItrigSample() const
The sample at which the pulse should ideally peak.
StatusCode initialize()
Initialization of the TileInfo object.
const std::vector< double > & digitsShapeLo() const
Return low gain shape vector to multiply the amplitude of a TileHit to produce TileDigit.
const TileTBID * m_tileTBID
double TTL1CosmicsPed(const Identifier &) const
Returns the pedestal of the Cosmics Trigger signal.
ServiceHandle< TileCablingSvc > m_tileCablingSvc
std::vector< double > m_MuRcvFullShape
bool TileCoherNoise() const
Coherent noise switched on/off?
int NchannelsPerCell(const Identifier &cell_id) const
Returns the number of readout channels connected to a given cell.
const TileWienerFilterWeightsStruct * getWienerFilterWeights() const
Return pointer to TileWienerFilterWeights.
double MuL1Max(const Identifier &) const
Returns max possible value (in mV) for muon L1 output.
std::vector< double > m_digitsDerivativeLo
std::vector< std::vector< std::vector< TMatrixD * > > > m_decoCovaria
std::vector< const TileCalibDrawerFlt * > DrawerVecFlt
double TTL1Calib(const Identifier &) const
Returns the factor which converts amplitude in pCb to mV in TTL1.
double MBTSL1Calib(const Identifier &) const
Returns the factor which converts amplitude in pCb to mV in TTL1 for MBTS.
std::vector< double > m_digitsFullShapeHi
int ADCmaskValue() const
Returns the overlay magic number that indicates channels which were masked in background dataset.
IMessageSvc * msgSvc() const
Returns a handle to the MessageSvc.
double MuRcvPed(const Identifier &) const
Returns the pedestal (in ADC counts) for Muon Receiver adcs.
const std::vector< double > & ttl1FullShape() const
Return full TTL1 shape vector.
bool TileNoise() const
Noise switched on/off?
std::vector< double > m_TTL1Shape
double TTL1CosmicsThresh(const Identifier &) const
Returns the threshold of the Cosmics Trigger Board.
double TTL1Max(const Identifier &) const
Returns max possible value (in mV) for TTL1 adcs.
std::vector< double > m_digitsShapeLo
const std::vector< double > & MuRcvFullShape() const
Return full Muon Receiver shape vector.
int MuL1BinsPerX() const
Return number of TTL1 bins per bunch-crossing for MBTS.
double MBTSL1NoiseSigma(const Identifier &) const
Returns the sigma (in mV) of Noise in TTL1 adcs for MBTS.
int ttl1BinsPerX() const
Return number of TTL1 bins per bunch-crossing.
TileWienerFilterWeights * m_WienerFilterWeights
std::vector< double > m_TTL1FullShape
double TTL1CosmicsGain(const Identifier &) const
Returns the gain of the Cosmics Trigger Board.
int ttl1Time0Bin() const
Return index of in-time bin in TTL1Shape.
friend class TileInfoLoader
int digitsNBinsLo() const
Return number of bins in low gain DigitShape.
double TTL1CosmicsNoiseSigma(const Identifier &) const
Returns the sigma (in mV) of Noise in TTL1 Cosmics.
const TMatrixD * DecoCovariance(int ros, int drawer, int hilo) const
Returns the decomposed covariance matrix.
int digitsBinsPerXLo() const
Return number of bins per bunch-crossing.
double MuL1NoiseSigma(const Identifier &) const
Returns the sigma (in mV) of Noise in muon L1 output.
double TTL1NoiseSigma(const Identifier &) const
Returns the sigma (in mV) of Noise in TTL1 adcs.
double m_mbtsL1NoiseSigma
const IdContext * m_channel_context
int ADCmax() const
Returns the maximum ADC output (10 bits --> 1023)
const TilePulseShapesStruct * getPulseShapes() const
Return pointer to TilePulseShapes.
const std::vector< double > & MuL1FullShape() const
Return full TTL1 shape vector for MBTS.
std::vector< double > m_digitsDerivativeHi
double MBTSL1Ped(const Identifier &) const
Returns the pedestal (in mV) for TTL1 adcs for MBTS.
int digitsBinsPerXHi() const
Return number of bins per bunch-crossing NGO high/lo makes no sense, right?
const std::vector< double > & MuRcvShape() const
Return bunch-X Muon Receiver shape vector.
double MuRcvNoiseSigma(const Identifier &) const
Returns the sigma (in ADC counts) of Noise in Muon Receiver adcs.
void muRcvShape(const int nsamp, const int itrig, const double phase, std::vector< double > &murcvshape) const
std::vector< double > m_digitsShapeHi
float getNoiseScaleFactor(void) const
Conversion from ADC sigma noise to OF sigma noise.
double BeamElemChannelCalib(const HWIdentifier &) const
Method returns and returned always 1.
int MuRcvTime0Bin() const
Return index of in-time bin in Muon Receiver shape.
int MuL1NBins() const
Return number of bins in TTL1Shape for MBTS.
const std::vector< double > & MuL1Shape() const
Return bunch-X shape vector for MBTS.
int MuRcvBinsPerX() const
Return number of Muon Receiver bins per bunch-crossing.
double m_thresholdRawChannel
const TileCablingService * m_cabling
std::vector< double > m_digitsFullShapeLo
double ttl1Phase(const int, const int, const int) const
NGO Need description.
double TTL1CosmicsCalib(const Identifier &) const
Returns the factor which converts e_dep (HitAmp) to mV in Cosmics board.
double MuRcvMax(const Identifier &) const
Returns max possible value (in ADC counts) for Muon Receiver adcs.
const std::vector< double > & digitsFullShapeHi() const
Return shape vector with full binning to produce the TileDigits from sub-hits.
const std::vector< double > & digitsDerivativeHi() const
Return derivative of bins in high gain DigitShape.
const IdContext * m_drawer_context
double ThresholdRawChannel(int) const
Return the threshold value for good (filtered) TileRawChannels.
std::vector< double > m_MuRcvShape
double ThresholdDigits(int) const
Return the threshold value for good TileDigits (cut applied to in-time digit only)
const std::vector< double > & digitsDerivativeLo() const
Return derivative of bins in log gain DigitShape.
double MuRcvCalib(const Identifier &) const
Returns the factor which converts amplitude in pCb to ADC counts in Muon Receiver.
double m_ttL1CosmicsThresh
int NdigitSamples() const
Returns the number of sammples (digits) per event.
double MuL1Ped(const Identifier &) const
Returns the pedestal (in mV) for muon L1 output.
int digitsNBinsHi() const
Return number of bins in high gain DigitShape.
double m_noiseScaleFactor[4]
scale factor from digital noise to Opt Filter noise for various opt filter algoritms 0 - reserved 1 -...
int MuL1Time0Bin() const
Return index of in-time bin in TTL1Shape for MBTS.
double BeamElemHitCalib(const Identifier &) const
TileHit to TileCell energy conversion for ancillary testbeam detectors.
const std::vector< double > & digitsShapeHi() const
Return high gain shape vector to multiply the amplitude of a TileHit to produce TileDigit.
double MuRcvThresh(const Identifier &) const
Returns the threshold (in ADC counts) for Muon Receiver adcs.
TilePulseShapes * m_pulseShapes
int digitsTime0BinLo() const
Return index of in-time bin in low gain DigitShape.
double MBTSL1Max(const Identifier &) const
Returns max possible value (in mV) for TTL1 adcs for MBTS.
int MuRcvNBins() const
Return number of bins in Muon Receiver shape.
const TileHWID * m_tileHWID
std::vector< double > m_MuL1FullShape
std::vector< double > m_MuL1Shape
double MBTSL1Thresh(const Identifier &) const
Returns the threshold (in mV) for TTL1 adcs for MBTS.
double TTL1Ped(const Identifier &) const
Returns the pedestal (in mV) for TTL1 adcs.
const std::vector< double > & digitsFullShapeLo() const
Return shape vector with full binning to produce the TileDigits from sub-hits.
double TTL1Thresh(const Identifier &) const
Returns the threshold (in mV) for TTL1 adcs.
bool TileZeroSuppress() const
Zero suppression switched on/off?
const std::vector< double > & ttl1Shape() const
Return bunch-X TTL1 shape vector.
Helper class for TileCal offline identifiers of ancillary testbeam detectors and MBTS.