|
ATLAS Offline Software
|
Go to the documentation of this file.
33 m_ampGroups = buildToolMap<std::vector<std::vector<int>>>(
m_tools,
"TileRawChannelNoise",
34 Tile::MAX_ROS - 1, Tile::MAX_DRAWER, Tile::MAX_CHAN);
36 return StatusCode::SUCCESS;
52 <<
" BCID = " << eventInfo->
bcid()
55 const std::vector<xAOD::EventInfo::StreamTag>& evtStreamTags = eventInfo->
streamTags();
56 if (!evtStreamTags.empty()) {
58 for (
const auto& evtStreamTag : evtStreamTags) {
59 msg(
MSG::DEBUG) <<
" " << evtStreamTag.name() <<
"/" << evtStreamTag.type();
85 bool recalibrate(
false);
87 ATH_MSG_VERBOSE(
" RawChannel Units is = " << rawChannelUnit <<
" => recalibrating in ADC counts" );
92 if (rawChannelCollection->empty() )
continue;
94 if (rawChannelCollection->getLvl1Type() != lvl1TriggerType) {
95 ATH_MSG_DEBUG(
"Level1 Trigger Type in Tile raw channels [0x" << std::hex
96 << rawChannelCollection->getLvl1Type() <<
"] != [0x"
97 << lvl1TriggerType << std::dec <<
"] from the event info");
101 HWIdentifier adc_id = rawChannelCollection->front()->adc_HWID();
107 unsigned int nBadOrDisconnectedChannels = 0;
110 ++nBadOrDisconnectedChannels;
115 if (rawChannelCollection->size() < nRequiredChannels) {
116 ATH_MSG_DEBUG(
"Number of Tile channels with digits [" << rawChannelCollection->size()
117 <<
"] less than expected [" << nRequiredChannels <<
"]");
123 int fragId = rawChannelCollection->identify();
130 adc_id = rawChannel->adc_HWID();
156 float amplitude = rawChannel->amplitude();
170 fill(
"TileRawChanNoiseMonExecuteTime",
timer);
172 return StatusCode::SUCCESS;
def retrieve(aClass, aKey=None)
std::string find(const std::string &s)
return a remapped string
uint64_t eventNumber() const
The current event's event number.
bool msgLvl(const MSG::Level lvl) const
const TileHWID * m_tileHWID
SG::ReadCondHandleKey< TileEMScale > m_emScaleKey
Name of TileEMScale in condition store.
#define ATH_MSG_VERBOSE(x)
bool isStatusBad(unsigned int ros, unsigned int drawer) const
Return true if given Tile drawer considered as bad by summary drawer states per LVPS otherwise return...
ServiceHandle< TileCablingSvc > m_cablingSvc
Name of Tile cabling service.
uint32_t runNumber() const
The current event's run number.
SG::ReadHandleKey< TileDQstatus > m_DQstatusKey
int channel(const HWIdentifier &id) const
extract channel field from HW identifier
def timer(name, disabled=False)
Gaudi::Property< bool > m_ignoreDisconnectedChannels
const ServiceHandle< StoreGateSvc > & detStore() const
The standard StoreGateSvc/DetectorStore Returns (kind of) a pointer to the StoreGateSvc.
int ros(const HWIdentifier &id) const
extract ros field from HW identifier
SG::ReadCondHandle< T > makeHandle(const SG::ReadCondHandleKey< T > &key, const EventContext &ctx=Gaudi::Hive::currentContext())
float calibrateChannel(unsigned int drawerIdx, unsigned int channel, unsigned int adc, float amplitude, TileRawChannelUnit::UNIT rawDataUnitIn, TileRawChannelUnit::UNIT rawDataUnitOut) const
Calibrate a Tile channel.
Class that holds Data Quality fragment information and provides functions to extract the data quality...
int adc(const HWIdentifier &id) const
extract adc field from HW identifier
const TileCablingService * m_cabling
Gaudi::Property< std::vector< unsigned int > > m_triggerTypes
Generic monitoring tool for athena components.
virtual StatusCode fillHistograms(const EventContext &ctx) const override
adds event to the monitoring histograms
::StatusCode StatusCode
StatusCode definition for legacy code.
SG::ReadHandleKey< TileRawChannelContainer > m_rawChannelContainerKey
std::vector< std::vector< std::vector< int > > > m_ampGroups
void fill(const ToolHandle< GenericMonitoringTool > &groupHandle, std::vector< std::reference_wrapper< Monitored::IMonitoredVariable >> &&variables) const
Fills a vector of variables to a group by reference.
StatusCode initialize(bool used=true)
If this object is used as a property, then this should be called during the initialize phase.
SG::ReadCondHandleKey< TileBadChannels > m_badChannelsKey
Name of TileBadChannels in condition store.
SG::ReadHandle< xAOD::EventInfo > GetEventInfo(const EventContext &) const
Return a ReadHandle for an EventInfo object (get run/event numbers, etc.)
uint32_t lumiBlock() const
The current event's luminosity block number.
bool isAdcDQgood(int partition, int drawer, int ch, int gain) const
returns status of single ADC returns False if there are any errors
ToolHandleArray< GenericMonitoringTool > m_tools
Array of Generic Monitoring Tools.
StatusCode initialize(bool used=true)
SG::ReadCondHandleKey< TileDCSState > m_DCSStateKey
Name of TileDCSState object in condition store.
Class describing the basic event information.
const TileBchStatus & getAdcStatus(const HWIdentifier adc_id) const
Return Tile ADC status.
const std::vector< StreamTag > & streamTags() const
Get the streams that the event was put in.
virtual StatusCode initialize() override
initialize
bool isDisconnected(int ros, int drawer, int channel) const
int drawer(const HWIdentifier &id) const
extract drawer field from HW identifier
Gaudi::Property< bool > m_checkDCS
uint16_t level1TriggerType() const
The Level-1 trigger type.
Condition object to keep Tile DCS status from DB.
Gaudi::Property< std::vector< int > > m_fragIDsToIgnoreDMUerrors
static unsigned int getDrawerIdx(unsigned int ros, unsigned int drawer)
Returns a drawer hash.
Declare a monitored scalar variable.
std::string to_string(const HWIdentifier &id, int level=0) const
extract all fields from HW identifier HWIdentifier get_all_fields ( const HWIdentifier & id,...
Handle class for reading from StoreGate.
static const unsigned int MAX_CHAN
Number of channels in drawer.
uint32_t bcid() const
The bunch crossing ID of the event.
virtual StatusCode initialize() override
initialize
Gaudi::Property< int > m_gain
const_pointer_type cptr()