|
ATLAS Offline Software
|
Go to the documentation of this file.
5 #ifndef TILERECUTILS_ITILERAWCHANNELBUILDER_H
6 #define TILERECUTILS_ITILERAWCHANNELBUILDER_H
42 #include "GaudiKernel/ToolHandle.h"
43 #include "GaudiKernel/ServiceHandle.h"
57 typedef std::vector<std::pair<TileRawChannel*, const TileDigits*> >
Overflows_t;
89 void initLog(
const EventContext& ctx);
105 const std::vector<float> & digits,
float &dmin,
float &dmax,
float ADCmaxMinusEps,
float ADCmaskValueMinusEps);
126 {
this,
"DSPContainer",
"",
"DSP Container key"};
130 "Output Tile raw channels container key"};
164 "NoiseFilterTools", {},
"Tile noise filter tools"};
167 "TileCondToolEmscale",
"TileCondToolEmscale",
"Tile EM scale calibration tool"};
170 "TileCondToolTiming",
"TileCondToolTiming",
"Tile timing tool"};
173 "TileCondIdTransforms",
"TileCondIdTransforms",
174 "Tile tool to tranlate hardware identifier to the drawerIdx, channel, and adc"};
180 "TileCablingSvc",
"TileCablingSvc",
"The Tile cabling service"};
185 "DemoFragIDs", {},
"List of Tile frag IDs with new electronics (demonstrator)"};
static int CorruptedData(int ros, int drawer, int channel, int gain, const std::vector< float > &digits, float &dmin, float &dmax, float ADCmaxMinusEps, float ADCmaskValueMinusEps)
TileRawChannelBuilder(const std::string &type, const std::string &name, const IInterface *parent)
Constructor.
ToolHandleArray< ITileRawChannelTool > m_noiseFilterTools
ToolHandle< TileCondToolEmscale > m_tileToolEmscale
float m_ampMinThresh
correct amplitude if it's above amplitude threshold (in ADC counts)
const TileCablingService * m_cabling
TileCabling instance.
virtual StatusCode finalize()
const TileHWID * m_tileHWID
std::unique_ptr< TileMutableRawChannelContainer > m_rawChannelCnt
virtual StatusCode initialize()
Initializer.
ServiceHandle< TileCablingSvc > m_cablingSvc
Name of Tile cabling service.
static const InterfaceID & interfaceID()
AlgTool InterfaceID.
Gaudi::Property< std::vector< int > > m_demoFragIDs
virtual ~TileRawChannelBuilder()
Destructor.
ToolHandle< TileCondToolTiming > m_tileToolTiming
float m_ADCmaskValueMinusEps
indicates channels which were masked in background dataset
SG::ReadHandleKey< TileRawChannelContainer > m_DSPContainerKey
std::vector< std::pair< TileRawChannel *, const TileDigits * > > Overflows_t
This class provides conversion between fragment ID and RESrcID.
Helper class for TileCal online (hardware) identifiers.
TileFragHash::TYPE m_rChType
The Athena Transient Store API.
Helper class for TileCal offline identifiers.
SG::WriteHandleKey< TileRawChannelContainer > m_rawChannelContainerKey
::StatusCode StatusCode
StatusCode definition for legacy code.
StatusCode build(const TileDigitsCollection *collection, const EventContext &ctx)
ToolHandle< TileCondIdTransforms > m_tileIdTransforms
TileRawChannelUnit::UNIT m_rChUnit
void fill_drawer_errors(const EventContext &ctx, const TileDigitsCollection *collection)
Information produced by TileDQstatusAlg (used to be done by TileBeamInfoProvider).
static const int MAX_CHANNELS
virtual StatusCode createContainer(const EventContext &ctx)
Create container in SG with name given by parameter (m_rawChannelContainerKey)
const TileInfo * m_tileInfo
void resetOverflows(void)
Property holding a SG store/key/clid from which a WriteHandle is made.
static double correctAmp(double phase, bool of2=true)
Amplitude correction factor according to the time when using weights for tau=0 without iterations.
float m_timeMaxThresh
correct amplitude is time is below time max threshold
static const char * BadPatternName(float ped)
virtual TileRawChannel * rawChannel(const TileDigits *digits, const EventContext &ctx)
Builder virtual method to be implemented by subclasses.
static double correctTime(double phase, bool of2=true)
Time correction factor.
Helper for holding non-const raw data prior to recording in SG.
std::string getTileRawChannelContainerID(void)
virtual StatusCode commitContainer(const EventContext &ctx)
Commit RawChannelContiner in SG and make const.
unsigned int m_evtCounter
SG::ReadHandleKey< TileDQstatus > m_DQstatusKey
void initLog(const EventContext &ctx)
static const int MAX_DMUS
Overflows_t & getOverflowedChannels(void)
float m_timeMinThresh
correct amplitude is time is above time min threshold
int m_error[MAX_CHANNELS]