![Logo](../../ATLAS-Logo-Square-Blue-RGB.png) |
ATLAS Offline Software
|
#include <MdtRawDataValAlg.h>
|
enum | Interval_t {
file = 0,
eventsBlock,
lumiBlock,
lowStat,
medStat,
higStat,
run,
fill,
all
} |
| An enumeration describing how detailed a particular monitoring object is. More...
|
|
enum | MgmtAttr_t { ATTRIB_MANAGED = 0,
ATTRIB_UNMANAGED = 1,
ATTRIB_X_VS_LB = 2
} |
| An enumeration describing how the class handles the histogram. More...
|
|
|
| MdtRawDataValAlg (const std::string &type, const std::string &name, const IInterface *parent) |
|
virtual | ~MdtRawDataValAlg () |
|
StatusCode | initialize () |
|
virtual StatusCode | bookHistogramsRecurrent () |
| An inheriting class should either override this function, bookHists() or bookHistograms(). More...
|
|
virtual StatusCode | fillHistograms () |
| An inheriting class should either override this function or fillHists(). More...
|
|
virtual StatusCode | procHistograms () |
| An inheriting class should either override this function or finalHists(). More...
|
|
virtual StreamNameFcn * | streamNameFunction () |
| Returns the function object that converts logical paramters into a physical stream name. More...
|
|
virtual StatusCode | bookHists () |
| Calls bookHists( true, true, true ) and initializes lumiBlock and run numbers. More...
|
|
virtual StatusCode | fillHists () |
| Calls fillHists( bool, bool, bool ); if an eventBlock,lumiBlock, or run has turned over, calls procHists( bool, bool, bool ) and bookHists( bool, bool, bool ). More...
|
|
virtual StatusCode | finalHists () |
| Calls procHists( true, true, true ). More...
|
|
virtual StatusCode | convertLWHists () |
| Deal with the LW histograms. More...
|
|
virtual StatusCode | bookHistograms () |
| An inheriting class should either override this function or bookHists(). More...
|
|
virtual void | setMonManager (AthenaMonManager *manager) |
| Takes a pointer to a managing object to get information from it when needed. More...
|
|
virtual StatusCode | regHist (TH1 *h, const std::string &system, Interval_t interval, MgmtAttr_t histo_mgmt=ATTRIB_MANAGED, const std::string &chain="", const std::string &merge="") |
| Registers a TH1 (including TH2, TH3, and TProfile) to be included in the output stream using logical parameters that describe the histogram. More...
|
|
virtual StatusCode | regHist (TH1 *h, const MonGroup &group) |
| Registers a TH1 (including TH2, TH3, and TProfile) to be included in the output stream using logical parameters that describe the histogram. More...
|
|
virtual StatusCode | regHist (LWHist *h, const std::string &system, Interval_t interval, MgmtAttr_t histo_mgmt=ATTRIB_MANAGED, const std::string &chain="", const std::string &merge="") |
| Support for lightweight histograms: More...
|
|
virtual StatusCode | regHist (LWHist *h, const MonGroup &group) |
|
virtual StatusCode | getHist (TH1 *&h, const std::string &hName, const std::string &system, Interval_t interval) |
| Returns a TH1 via the pointer passed as the first argument. More...
|
|
virtual StatusCode | getHist (TH1 *&h, const std::string &hName, const MonGroup &group) |
| Returns a TH1 via the pointer passed as the first argument. More...
|
|
virtual StatusCode | getHist (TH2 *&h, const std::string &hName, const std::string &system, Interval_t interval) |
| Returns a TH2 via the pointer passed as the first argument. More...
|
|
virtual StatusCode | getHist (TH2 *&h, const std::string &hName, const MonGroup &group) |
| Returns a TH2 via the pointer passed as the first argument. More...
|
|
virtual StatusCode | getHist (LWHist *&h, const std::string &hName, const std::string &system, Interval_t interval) |
|
virtual StatusCode | getHist (LWHist *&h, const std::string &hName, const MonGroup &group) |
|
virtual StatusCode | regEfficiency (TEfficiency *e, const MonGroup &group) |
| Registers a TEfficiency to be included in the output stream using logical parameters that describe the plot. More...
|
|
virtual StatusCode | regGraph (TGraph *g, const std::string &system, Interval_t interval, MgmtAttr_t histo_mgmt=ATTRIB_MANAGED, const std::string &chain="", const std::string &merge="") |
| Registers a TGraph to be included in the output stream using logical parameters that describe the graph. More...
|
|
virtual StatusCode | regGraph (TGraph *g, const MonGroup &group) |
| Registers a TGraph to be included in the output stream using logical parameters that describe the graph. More...
|
|
virtual StatusCode | regTree (TTree *t, const std::string &system, Interval_t interval, MgmtAttr_t histo_mgmt=ATTRIB_MANAGED, const std::string &chain="", const std::string &merge="") |
| Registers a TTree to be included in the output stream using logical parameters that describe it. More...
|
|
virtual StatusCode | regTree (TTree *t, const MonGroup &group) |
| Registers a TTree to be included in the output stream using logical parameters that describe it. More...
|
|
virtual StatusCode | deregHist (LWHist *h) |
|
virtual StatusCode | deregHist (TH1 *h) |
| De-registers a TH1 from the THistSvc, but does NOT delete the object. More...
|
|
virtual StatusCode | writeAndDelete (TH1 *h, const MonGroup &group) |
| Write out histogram and delete it. More...
|
|
virtual StatusCode | deregGraph (TGraph *g) |
| De-registers a TGraph from the THistSvc, but does NOT delete the object. More...
|
|
virtual StatusCode | deregObject (const std::string &objName, const std::string &system, Interval_t interval) |
| De-registers a TObject from the THistSvc, but does NOT delete the object. More...
|
|
virtual StatusCode | deregObject (const std::string &objName, const MonGroup &group) |
| De-registers a TObject from the THistSvc, but does NOT delete the object. More...
|
|
virtual StatusCode | setupOutputStreams (std::vector< std::string > Mapping=std::vector< std::string >()) |
| This implementation does nothing—streams in this class should be managed by the AthenaMonManager. More...
|
|
virtual StatusCode | runStat () |
| This implementation does nothing; equivalent functionality may be provided by procHists( true, true, true ). More...
|
|
virtual StatusCode | checkHists (bool calledFromFinalize) |
| This implementation does nothing; equivalent functionality may be provided by procHists(...) with appropriate arguments. More...
|
|
virtual bool | preSelector () |
|
virtual float | lbAverageInteractionsPerCrossing (const EventContext &ctx=Gaudi::Hive::currentContext()) const |
| Average mu, i.e. More...
|
|
virtual float | lbInteractionsPerCrossing (const EventContext &ctx=Gaudi::Hive::currentContext()) const |
| Instantaneous number of interactions, i.e. More...
|
|
virtual float | lbAverageLuminosity (const EventContext &ctx=Gaudi::Hive::currentContext()) const |
| Average luminosity (in ub-1 s-1 => 10^30 cm-2 s-1) More...
|
|
virtual float | lbLuminosityPerBCID (const EventContext &ctx=Gaudi::Hive::currentContext()) const |
| Instantaneous luminosity. More...
|
|
virtual double | lbDuration (const EventContext &ctx=Gaudi::Hive::currentContext()) const |
| Luminosity block time (in seconds) More...
|
|
virtual float | lbAverageLivefraction (const EventContext &ctx=Gaudi::Hive::currentContext()) const |
| Average luminosity livefraction. More...
|
|
virtual float | livefractionPerBCID (const EventContext &ctx=Gaudi::Hive::currentContext()) const |
| Livefraction per bunch crossing ID. More...
|
|
virtual double | lbLumiWeight (const EventContext &ctx=Gaudi::Hive::currentContext()) const |
| Average Integrated Luminosity Live Fraction. More...
|
|
| MMTB_DEPRECATED (newLowStatInterval) |
|
| MMTB_DEPRECATED (newMedStatInterval) |
|
| MMTB_DEPRECATED (newHigStatInterval) |
|
| MMTB_DEPRECATED (newLowStat) |
|
| MMTB_DEPRECATED (newLumiBlock) |
|
| MMTB_DEPRECATED (newRun) |
|
| MMTB_DEPRECATED (newEventsBlock) |
|
| MMTB_DEPRECATED (endOfEventsBlock) |
|
| MMTB_DEPRECATED (endOfLowStat) |
|
| MMTB_DEPRECATED (endOfLumiBlock) |
|
| MMTB_DEPRECATED (endOfRun) |
|
ServiceHandle< StoreGateSvc > & | evtStore () |
| The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc . More...
|
|
const ServiceHandle< StoreGateSvc > & | evtStore () const |
| The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc . More...
|
|
const ServiceHandle< StoreGateSvc > & | detStore () const |
| The standard StoreGateSvc/DetectorStore Returns (kind of) a pointer to the StoreGateSvc . More...
|
|
virtual StatusCode | sysInitialize () override |
| Perform system initialization for an algorithm. More...
|
|
virtual StatusCode | sysStart () override |
| Handle START transition. More...
|
|
virtual std::vector< Gaudi::DataHandle * > | inputHandles () const override |
| Return this algorithm's input handles. More...
|
|
virtual std::vector< Gaudi::DataHandle * > | outputHandles () const override |
| Return this algorithm's output handles. More...
|
|
Gaudi::Details::PropertyBase & | declareProperty (Gaudi::Property< T > &t) |
|
Gaudi::Details::PropertyBase * | declareProperty (const std::string &name, SG::VarHandleKey &hndl, const std::string &doc, const SG::VarHandleKeyType &) |
| Declare a new Gaudi property. More...
|
|
Gaudi::Details::PropertyBase * | declareProperty (const std::string &name, SG::VarHandleBase &hndl, const std::string &doc, const SG::VarHandleType &) |
| Declare a new Gaudi property. More...
|
|
Gaudi::Details::PropertyBase * | declareProperty (const std::string &name, SG::VarHandleKeyArray &hndArr, const std::string &doc, const SG::VarHandleKeyArrayType &) |
|
Gaudi::Details::PropertyBase * | declareProperty (const std::string &name, T &property, const std::string &doc, const SG::NotHandleType &) |
| Declare a new Gaudi property. More...
|
|
Gaudi::Details::PropertyBase * | declareProperty (const std::string &name, T &property, const std::string &doc="none") |
| Declare a new Gaudi property. More...
|
|
void | updateVHKA (Gaudi::Details::PropertyBase &) |
|
MsgStream & | msg () const |
|
MsgStream & | msg (const MSG::Level lvl) const |
|
bool | msgLvl (const MSG::Level lvl) const |
|
|
StatusCode | regManagedHistograms (std::vector< MgmtParams< TH1 > > &templateHistograms) |
|
StatusCode | regManagedGraphs (std::vector< MgmtParams< TGraph > > &templateGraphs) |
|
StatusCode | regManagedTrees (std::vector< MgmtParams< TTree > > &templateTrees) |
|
StatusCode | regManagedLWHistograms (std::vector< MgmtParams< LWHist > > &templateLWHistograms) |
|
StatusCode | regManagedEfficiencies (std::vector< MgmtParams< TEfficiency > > &templateEfficiencies) |
|
StatusCode | parseList (const std::string &, std::vector< std::string > &) |
|
void | updateTriggersForGroups (std::vector< std::string > &) |
|
StatusCode | registerMetadata (const std::string &streamName, const std::string &hName, const MonGroup &group) |
|
StatusCode | THistSvc_deReg_fixTGraph (TFile *file, TGraph *theGraph, std::string &directoryName) |
| Fixes THistSvc->deReg(obj) when obj is TGraph instance. More...
|
|
unsigned int | get_nEvents () const |
|
long | get_procNEventsProp () const |
|
virtual bool | trigChainsArePassed (std::vector< std::string > &) |
|
virtual StreamNameFcn * | getNewStreamNameFcn () const |
|
bool | newLowStatIntervalFlag () const |
| Flag functions allowing clients to determine when to book new and process old histograms; values are updated by fillHists() based on counting lumiBlocks, and are correctly set when fillHistograms(), bookHistograms() and procHistograms() are called. More...
|
|
bool | newMedStatIntervalFlag () const |
|
bool | newHigStatIntervalFlag () const |
|
bool | newLowStatFlag () const |
|
bool | newLumiBlockFlag () const |
|
bool | newRunFlag () const |
|
bool | newEventsBlockFlag () const |
|
bool | endOfEventsBlockFlag () const |
|
bool | endOfLowStatFlag () const |
|
bool | endOfLumiBlockFlag () const |
|
bool | endOfRunFlag () const |
|
void | renounceArray (SG::VarHandleKeyArray &handlesArray) |
| remove all handles from I/O resolution More...
|
|
std::enable_if_t< std::is_void_v< std::result_of_t< decltype(&T::renounce)(T)> > &&!std::is_base_of_v< SG::VarHandleKeyArray, T > &&std::is_base_of_v< Gaudi::DataHandle, T >, void > | renounce (T &h) |
|
void | extraDeps_update_handler (Gaudi::Details::PropertyBase &ExtraDeps) |
| Add StoreName to extra input/output deps as needed. More...
|
|
|
std::map< Interval_t, std::vector< MgmtParams< TH1 > > > | m_templateHistograms |
|
std::map< Interval_t, std::vector< MgmtParams< TGraph > > > | m_templateGraphs |
|
std::map< Interval_t, std::vector< MgmtParams< TTree > > > | m_templateTrees |
|
std::map< Interval_t, std::vector< MgmtParams< LWHist > > > | m_templateLWHistograms |
|
std::map< Interval_t, std::vector< MgmtParams< TEfficiency > > > | m_templateEfficiencies |
|
std::vector< std::string > | m_vTrigChainNames |
|
std::vector< std::string > | m_vTrigGroupNames |
|
MDMap_t | m_metadataMap |
|
std::set< LWHist * > | m_lwhists |
|
AthenaMonManager * | m_manager |
|
std::string | m_managerNameProp |
|
std::string | m_fileKey |
|
std::string | m_dataTypeStr |
|
std::string | m_environmentStr |
|
unsigned int | m_detailLevel |
|
AthenaMonManager::DataType_t | m_dataType |
|
AthenaMonManager::Environment_t | m_environment |
|
StreamNameFcn * | m_streamNameFcn |
|
ServiceHandle< ITHistSvc > | m_THistSvc |
|
PublicToolHandle< Trig::ITrigDecisionTool > | m_trigDecTool {this, "TrigDecisionTool",""} |
|
PublicToolHandle< ITriggerTranslatorTool > | m_trigTranslator {this,"TriggerTranslatorTool",""} |
|
ToolHandleArray< IDQFilterTool > | m_DQFilterTools {this,"FilterTools",{}} |
|
long | m_procNEventsProp |
|
std::string | m_path |
|
long | m_preScaleProp |
|
std::string | m_triggerChainProp |
|
std::string | m_triggerGroupProp |
|
bool | m_useTrigger |
|
unsigned int | m_lastLumiBlock |
|
unsigned int | m_lastRun |
|
int | m_lastLowStatInterval |
|
int | m_lastMedStatInterval |
|
int | m_lastHigStatInterval |
|
unsigned int | m_nEvents |
|
unsigned int | m_nEventsIgnoreTrigger |
|
unsigned int | m_nLumiBlocks |
|
bool | m_haveClearedLastEventBlock |
|
|
bool | isATLASReady () const |
|
void | setIsATLASReady () |
|
virtual StatusCode | bookMDTHistograms (MDTChamber *chamber, Identifier digcoll_id) |
|
virtual StatusCode | fillMDTHistograms (const Muon::MdtPrepData *) |
|
virtual StatusCode | bookMDTSummaryHistograms (bool newLumiBlock, bool newRun) |
|
virtual StatusCode | fillMDTSummaryHistograms (const Muon::MdtPrepData *, std::set< std::string >, bool &isNoiseBurstCandidate) |
|
virtual StatusCode | bookMDTOverviewHistograms (bool newLumiBlock, bool newRun) |
|
virtual StatusCode | fillMDTOverviewHistograms (const Muon::MdtPrepData *, bool &isNoiseBurstCandidate) |
|
StatusCode | handleEvent_effCalc (const Trk::SegmentCollection *segms) |
|
virtual StatusCode | binMdtGlobal (TH2 *, char ecap) |
|
virtual StatusCode | binMdtRegional (TH2 *, std::string_view xAxis) |
|
virtual StatusCode | binMdtGlobal_byLayer (TH2 *, TH2 *, TH2 *) |
|
virtual StatusCode | binMdtOccVsLB (TH2 *&h, int region, int layer) |
|
virtual StatusCode | binMdtOccVsLB_Crate (TH2 *&h, int region, int crate) |
|
virtual StatusCode | bookMDTHisto_overview (TH1 *&, TString, TString, TString, int, float, float, MonGroup &) |
|
virtual StatusCode | bookMDTHisto_chambers (TH1F_LW *&, TString, TString, TString, int, float, float, MonGroup &) |
|
virtual StatusCode | bookMDTHisto_overview_2D (TH2 *&h, TString, TString, TString, int, float, float, int, float, float, MonGroup &) |
|
virtual StatusCode | bookMDTHisto_chambers_2D (TH2F_LW *&h, TString, TString, TString, int, float, float, int, float, float, MonGroup &) |
|
virtual StatusCode | bookMDTHisto_OccVsLB (TH2 *&h, TString, TString, TString, int, float, float, int, float, float, MonGroup &) |
|
virtual StatusCode | fillMDTMaskedTubes (IdentifierHash, const std::string &, TH1F_LW *&h) |
|
int | get_bin_for_LB_crate_hist (int region, int layer, int phi, int eta, std::string_view chamber) |
|
void | mdtchamberId () |
|
int | mezzmdt (Identifier) |
|
int | GetTubeMax (const Identifier &digcoll_id, std::string_view hardware_name) |
|
StatusCode | StoreTriggerType () |
|
void | StoreTriggerType (int type) |
|
int | GetTriggerType () |
|
bool | HasTrigBARREL () |
|
bool | HasTrigENDCAP () |
|
StatusCode | fillLumiBlock () |
|
StatusCode | GetTimingInfo () |
|
StatusCode | GetEventNum () |
|
void | initDeadChannels (const MuonGM::MdtReadoutElement *mydetEl) |
|
std::string | getChamberName (const Muon::MdtPrepData *) |
|
std::string | getChamberName (const Identifier &id) |
|
StatusCode | getChamber (IdentifierHash id, MDTChamber *&chamber) |
|
int | cachedTubeMax (const Identifier &id) const |
|
int | cachedTubeLayerMax (const Identifier &id) const |
|
Gaudi::Details::PropertyBase & | declareGaudiProperty (Gaudi::Property< T > &hndl, const SG::VarHandleKeyType &) |
| specialization for handling Gaudi::Property<SG::VarHandleKey> More...
|
|
Gaudi::Details::PropertyBase & | declareGaudiProperty (Gaudi::Property< T > &hndl, const SG::VarHandleKeyArrayType &) |
| specialization for handling Gaudi::Property<SG::VarHandleKeyArray> More...
|
|
Gaudi::Details::PropertyBase & | declareGaudiProperty (Gaudi::Property< T > &hndl, const SG::VarHandleType &) |
| specialization for handling Gaudi::Property<SG::VarHandleBase> More...
|
|
Gaudi::Details::PropertyBase & | declareGaudiProperty (Gaudi::Property< T > &t, const SG::NotHandleType &) |
| specialization for handling everything that's not a Gaudi::Property<SG::VarHandleKey> or a <SG::VarHandleKeyArray> More...
|
|
|
static bool | AinB (int A, std::vector< int > &B) |
|
static void | TubeID_to_ID_L_ML (int &tubeID, std::string_view hardware_name, int &tube, int &layer, int &ML, int max) |
|
static void | ChamberTubeNumberCorrection (int &tubeNum, std::string_view hardware_name, int tubePos, int numLayers) |
|
static void | CorrectTubeMax (const std::string &hardware_name, int &numTubes) |
|
static void | CorrectLayerMax (const std::string &hardware_name, int &numLayers) |
|
static void | putBox (TH2 *h, float x1, float y1, float x2, float y2) |
|
static void | putLine (TH2 *h, float x1, float y1, float x2, float y2, Color_t c=kBlack) |
|
static int | get_bin_for_LB_hist (int region, int layer, int phi, int eta, bool isBIM) |
|
static int | returnInt (const std::string &s) |
|
|
std::string | m_title |
|
bool | m_atlas_ready {false} |
|
std::unique_ptr< MDTMonGroupStruct > | m_mg |
|
std::unique_ptr< MDTNoisyTubes > | m_masked_tubes |
|
ServiceHandle< Muon::IMuonIdHelperSvc > | m_idHelperSvc {this, "MuonIdHelperSvc", "Muon::MuonIdHelperSvc/MuonIdHelperSvc"} |
|
ToolHandle< CP::IMuonSelectionTool > | m_muonSelectionTool |
|
SG::ReadCondHandleKey< MuonGM::MuonDetectorManager > | m_DetectorManagerKey |
|
ToolHandleArray< IDQFilterTool > | m_MdtDQFilterTools |
|
int | m_lumiblock {0} |
|
int | m_eventNum {0} |
|
int | m_firstEvent {0} |
|
uint32_t | m_time {0U} |
|
uint32_t | m_firstTime {0U} |
|
int | m_numberOfEvents {0} |
|
SG::ReadHandleKey< Trk::SegmentCollection > | m_segm_type {this, "Eff_segm_type", "TrackMuonSegments", "muon segments"} |
|
std::vector< Identifier > | m_chambersId |
|
std::vector< IdentifierHash > | m_chambersIdHash |
|
std::set< std::string > | m_hardware_name_list |
|
std::set< int > | m_hashId_list |
|
std::map< std::string, float > | m_hitsperchamber_map |
|
std::map< std::string, float > | m_tubesperchamber_map |
|
bool | m_doMdtESD |
|
bool | m_doChamberHists |
|
bool | m_isOnline |
|
bool | m_maskNoisyTubes |
|
bool | m_chamber_2D |
|
std::string | m_chamberName |
|
std::string | m_StationSize |
|
SG::ReadHandleKey< Muon::MdtPrepDataContainer > | m_key_mdt {this, "MdtPrepDataContainer", "MDT_DriftCircles", "MDT PRDs"} |
|
SG::ReadHandleKey< Muon::RpcPrepDataContainer > | m_key_rpc {this, "RpcPrepDataContainer", "RPC_Measurements", "RPC PRDs"} |
|
SG::ReadHandleKey< xAOD::MuonRoIContainer > | m_l1RoiKey {this, "L1RoiKey", "LVL1MuonRoIs", "L1 muon ROIs"} |
|
SG::ReadHandleKey< xAOD::MuonContainer > | m_muonKey {this, "MuonKey", "Muons", "muons"} |
|
SG::ReadHandleKey< xAOD::EventInfo > | m_eventInfo {this, "EventInfo", "EventInfo", "event info"} |
|
int | m_StationEta |
|
int | m_StationPhi |
|
int | m_trigtype = 0 |
|
bool | m_trig_BARREL {false} |
|
bool | m_trig_ENDCAP {false} |
|
float | m_ADCCut |
|
float | m_ADCCut_Bkgrd |
|
float | m_curTime = 0.0F |
|
TH2 * | m_overalltdcadcLumi {} |
|
TH2 * | m_overalltdcadcPRLumi [4] {} |
|
TH1 * | m_overalltdccutLumi {} |
|
TH1 * | m_overalltdccut_segm_Lumi {} |
|
TH1 * | m_overalladc_segm_Lumi {} |
|
TH1 * | m_overalladc_Lumi {} |
|
TH1 * | m_overalltdccut_segm_PR_Lumi [4] {} |
|
TH1 * | m_overalltdccutPRLumi [4] {} |
|
TH1 * | m_overalladc_segm_PR_Lumi [4] {} |
|
TH1 * | m_overalladcPRLumi [4] {} |
|
TH1 * | m_overalladccutPRLumi [4] {} |
|
TH1 * | m_overalltdccutPRLumi_RPCtrig [4] {} |
|
TH1 * | m_overalltdccutPRLumi_TGCtrig [4] {} |
|
TH2 * | m_overalltdcadcHighOcc {} |
|
TH1 * | m_overalltdcHighOcc {} |
|
TH1 * | m_overalltdcHighOcc_ADCCut {} |
|
TH1 * | m_overalladc_HighOcc {} |
|
TH2 * | m_overalltdcadcPR_HighOcc [4] {} |
|
TH1 * | m_overalltdcPR_HighOcc [4] {} |
|
TH1 * | m_overalltdcPR_HighOcc_ADCCut [4] {} |
|
TH1 * | m_overalladcPR_HighOcc [4] {} |
|
TH2 * | m_overall_mdt_DRvsDT {} |
|
TH2 * | m_overall_mdt_DRvsSegD {} |
|
TH2 * | m_overallPR_mdt_DRvsDT [4] {} |
|
TH2 * | m_overallPR_mdt_DRvsSegD [4] {} |
|
TH2 * | m_MdtNHitsvsRpcNHits {} |
|
TH1 * | m_mdteventscutLumi {} |
|
TH1 * | m_mdteventscutLumi_big {} |
|
TH1 * | m_mdteventsLumi {} |
|
TH1 * | m_mdteventsLumi_big {} |
|
TH1 * | m_mdtglobalhitstime {} |
|
TH1 * | m_nummdtchamberswithhits {} |
|
TH1 * | m_nummdtchamberswithhits_ADCCut {} |
|
TH1 * | m_nummdtchamberswithHighOcc {} |
|
TH1 * | m_mdtchamberstat {} |
|
TH1 * | m_mdtchamberstatphislice [16] {} |
|
TH1 * | m_mdtChamberHits [4][4][16] {} |
|
TH2 * | m_mdtxydet [3] {} |
|
TH2 * | m_mdtrzdet [3] {} |
|
TH2 * | m_mdthitspermultilayerLumi [4][4] {} |
|
TH2 * | m_mdteffpermultilayer [4][4] {} |
|
TH2 * | m_mdthitsperchamber_InnerMiddleOuterLumi [2] {} |
|
TH2 * | m_mdthitsperchamber_InnerMiddleOuter_HighOcc [2] {} |
|
TH2 * | m_mdthitsperchamber_onSegm_InnerMiddleOuterLumi [2] {} |
|
TH2 * | m_mdteffperchamber_InnerMiddleOuter [4] {} |
|
TH2 * | m_mdthitsperML_byLayer [3] {} |
|
TH2 * | m_mdtoccvslb [4][3] {} |
|
TH2 * | m_mdtoccvslb_by_crate [4][4] {} |
|
TH2 * | m_mdtoccvslb_ontrack_by_crate [4][4] {} |
|
TH2 * | m_mdtoccvslb_summaryPerSector {} |
|
TH1 * | m_mdttdccut_sector [4][4][16] {} |
|
std::vector< std::unique_ptr< MDTChamber > > | m_hist_hash_list {} |
|
bool | m_do_mdtchamberstatphislice |
|
bool | m_do_mdtChamberHits |
|
bool | m_do_mdttdccut_sector |
|
bool | m_do_mdttdc |
|
bool | m_do_mdttdccut_ML1 |
|
bool | m_do_mdttdccut_ML2 |
|
bool | m_do_mdtadc_onSegm_ML1 |
|
bool | m_do_mdtadc_onSegm_ML2 |
|
bool | m_do_mdttdccut_RPCtrig_ML1 |
|
bool | m_do_mdttdccut_TGCtrig_ML1 |
|
bool | m_do_mdttdccut_RPCtrig_ML2 |
|
bool | m_do_mdttdccut_TGCtrig_ML2 |
|
bool | m_do_mdtadc |
|
bool | m_do_mdttdcadc |
|
bool | m_do_mdtmultil |
|
bool | m_do_mdtlayer |
|
bool | m_do_mdttube |
|
bool | m_do_mdttube_bkgrd |
|
bool | m_do_mdttube_fornoise |
|
bool | m_do_mdttube_masked |
|
bool | m_do_mdtmezz |
|
bool | m_do_mdt_effEntries |
|
bool | m_do_mdt_effCounts |
|
bool | m_do_mdt_effPerTube |
|
bool | m_do_mdt_DRvsDT |
|
bool | m_do_mdt_DRvsDRerr |
|
bool | m_do_mdt_DRvsSegD |
|
bool | m_do_mdttubenoise |
|
bool | m_do_mdttdctube |
|
float | m_nb_hits |
|
float | m_road_width |
|
float | m_chi2_cut |
|
float | m_HighOccThreshold |
|
bool | m_BMGpresent {false} |
|
int | m_BMGid {-1} |
|
std::map< Identifier, std::vector< Identifier > > | m_DeadChannels |
|
const MuonGM::MuonDetectorManager * | m_detMgr {nullptr} |
|
bool | m_newLowStatInterval |
|
bool | m_newMedStatInterval |
|
bool | m_newHigStatInterval |
|
bool | m_newLowStat |
|
bool | m_newLumiBlock |
|
bool | m_newRun |
|
bool | m_newEventsBlock |
|
bool | m_endOfEventsBlock |
|
bool | m_endOfLowStat |
|
bool | m_endOfLumiBlock |
|
bool | m_endOfRun |
|
SG::ReadCondHandleKey< LuminosityCondData > | m_lumiDataKey {this,"LuminosityCondDataKey","LuminosityCondData","SG Key of LuminosityCondData object"} |
|
SG::ReadCondHandleKey< LBDurationCondData > | m_lbDurationDataKey {this,"LBDurationCondDataKey","LBDurationCondData","SG Key of LBDurationCondData object"} |
|
SG::ReadCondHandleKey< TrigLiveFractionCondData > | m_trigLiveFractionDataKey {this,"TrigLiveFractionCondDataKey","TrigLiveFractionCondData","SG Key of TrigLiveFractionCondData object"} |
|
bool | m_bookHistogramsInitial |
|
bool | m_useLumi |
|
float | m_defaultLBDuration |
|
std::set< Interval_t > | m_supportedIntervalsForRebooking |
|
Imp * | m_d |
|
StoreGateSvc_t | m_evtStore |
| Pointer to StoreGate (event store by default) More...
|
|
StoreGateSvc_t | m_detStore |
| Pointer to StoreGate (detector store by default) More...
|
|
std::vector< SG::VarHandleKeyArray * > | m_vhka |
|
bool | m_varHandleArraysDeclared |
|
Definition at line 98 of file MdtRawDataValAlg.h.
◆ MDMap_t
◆ StoreGateSvc_t
◆ Interval_t
An enumeration describing how detailed a particular monitoring object is.
summary: used to summarize the state of the system
runstat: same as summary
shift: used to flag potential problems
expert: essential for diagnosing problems identified by shift-level objects
debug: useful for standalone debugging, but not for routine monitoring; not essential for diagnosing problems during normal running
transient: too detailed to ever be written; always summarized by the user by means of another object An enumeration describing the interval over which a particular monitoring object is filled (i.e., interval over which the method Fill(...) is called). This information may be stored with the monitoring object if an application is only able to partially fill the object (i.e., a job sees only part of a run or fill). This information may be ignored in some running Environments. The 'fill' interval corresponds to a fill of the LHC. The 'all' interval corresponds to all available data. The 'lumiBlock' and 'fill' intervals are only valid for the 'collisions' DataType_t.
Enumerator |
---|
file | |
eventsBlock | |
lumiBlock | |
lowStat | |
medStat | |
higStat | |
run | |
fill | |
all | |
Definition at line 114 of file ManagedMonitorToolBase.h.
◆ MgmtAttr_t
An enumeration describing how the class handles the histogram.
attrib_unmanaged: histograms with this attribute will not be rebooked automatically and must be managed by the user code.
attrib_x_is_lb: indicates that the x-axis of the histogram is the luminosity block number and that the histogram should be rebooked as necessary if the current LB exceeds the range.
Enumerator |
---|
ATTRIB_MANAGED | |
ATTRIB_UNMANAGED | |
ATTRIB_X_VS_LB | |
Definition at line 131 of file ManagedMonitorToolBase.h.
◆ MdtRawDataValAlg()
MdtRawDataValAlg::MdtRawDataValAlg |
( |
const std::string & |
type, |
|
|
const std::string & |
name, |
|
|
const IInterface * |
parent |
|
) |
| |
◆ ~MdtRawDataValAlg()
MdtRawDataValAlg::~MdtRawDataValAlg |
( |
| ) |
|
|
virtualdefault |
◆ AinB()
bool MdtRawDataValAlg::AinB |
( |
int |
A, |
|
|
std::vector< int > & |
B |
|
) |
| |
|
staticprivate |
◆ binMdtGlobal()
StatusCode MdtRawDataValAlg::binMdtGlobal |
( |
TH2 * |
h, |
|
|
char |
ecap |
|
) |
| |
|
privatevirtual |
Definition at line 29 of file MDTRawDataUtils.cxx.
41 for (
int ieta = LowerEta; ieta != UpperEta + 1; ++ieta) {
42 if (ieta == 0 && ecap ==
'E')
continue;
44 (ieta < 0) ? eta_s +=
"C" : ((ieta > 0) ? eta_s +=
"A" : eta_s +=
"B");
51 for (
int iphi = 1; iphi <= 16; iphi++) {
56 if (ecap ==
'B' && (iphi == 11 || iphi == 15)) {
57 h->Fill(eta_s,
"I," + phi_s +
",R", 0);
58 h->Fill(eta_s,
"I," + phi_s +
",M", 0);
59 h->Fill(eta_s,
"M," + phi_s, 0);
60 h->Fill(eta_s,
"O," + phi_s, 0);
62 h->Fill(eta_s,
"I," + phi_s, 0);
63 h->Fill(eta_s,
"M," + phi_s, 0);
64 h->Fill(eta_s,
"O," + phi_s, 0);
65 if (iphi % 2 == 0 && ecap ==
'B')
66 h->Fill(eta_s,
"E," + phi_s, 0);
68 h->Fill(eta_s,
"E," + phi_s, 0);
72 h->LabelsDeflate(
"X");
73 h->LabelsDeflate(
"Y");
74 h->LabelsOption(
"a",
"Y");
75 h->GetYaxis()->SetLabelSize(0.025);
204 for (
int i = 0;
i < 59;
i += 1) {
205 TLine*
l =
new TLine(0,
i, 0.55,
i);
207 h->GetListOfFunctions()->Add(
l);
209 for (
int i = 0;
i != 18; ++
i) {
210 TLine*
l =
new TLine(
i, 0,
i, 0.55 / 17 * 58);
212 h->GetListOfFunctions()->Add(
l);
214 TLine* lx =
new TLine(0, 0, 0, 58);
215 TLine* ly =
new TLine(0, 0, 17, 0);
216 lx->SetLineColor(kBlack);
217 ly->SetLineColor(kBlack);
218 h->GetListOfFunctions()->Add(lx);
219 h->GetListOfFunctions()->Add(ly);
361 for (
int i = 0;
i < 65;
i++) {
362 TLine*
l =
new TLine(0,
i, 0.55 * 12 / 17,
i);
364 h->GetListOfFunctions()->Add(
l);
366 for (
int i = 0;
i != 13; ++
i) {
367 TLine*
l =
new TLine(
i, 0,
i, 0.55 / 17 * 64);
369 h->GetListOfFunctions()->Add(
l);
376 return StatusCode::SUCCESS;
◆ binMdtGlobal_byLayer()
StatusCode MdtRawDataValAlg::binMdtGlobal_byLayer |
( |
TH2 * |
nHits_In, |
|
|
TH2 * |
nHits_Mid, |
|
|
TH2 * |
nHits_Out |
|
) |
| |
|
privatevirtual |
Definition at line 756 of file MDTRawDataUtils.cxx.
758 TString phiString =
"";
763 TString phiString_ml1 = phiString +
",1";
764 TString phiString_ml2 = phiString +
",2";
766 TString phiString_ml1_BIR = phiString +
",1,R";
767 TString phiString_ml2_BIR = phiString +
",2,R";
768 nHits_In->
Fill(
"EIC5", phiString_ml1_BIR, 0.);
769 nHits_In->
Fill(
"EIC5", phiString_ml2_BIR, 0.);
770 TString phiString_ml1_BIM = phiString +
",1,M";
771 TString phiString_ml2_BIM = phiString +
",2,M";
772 nHits_In->
Fill(
"EIC5", phiString_ml1_BIM, 0.);
773 nHits_In->
Fill(
"EIC5", phiString_ml2_BIM, 0.);
775 nHits_In->
Fill(
"EIC5", phiString_ml1, 0.);
776 nHits_In->
Fill(
"EIC5", phiString_ml2, 0.);
778 nHits_Mid->
Fill(
"EMC5", phiString_ml1, 0.);
779 nHits_Mid->
Fill(
"EMC5", phiString_ml2, 0.);
780 nHits_Out->
Fill(
"EOC6", phiString_ml1, 0.);
781 nHits_Out->
Fill(
"EOC6", phiString_ml2, 0.);
789 nHits_In->
Fill(etaIn,
"01,1", 0);
790 nHits_Mid->
Fill(etaMid,
"01,1", 0);
792 nHits_Out->
Fill(etaOut,
"01,1", 0);
794 nHits_In->
Fill(
"",
"01,1", 0);
795 nHits_Mid->
Fill(
"",
"01,1", 0);
796 nHits_Out->
Fill(
"",
"01,1", 0);
806 nHits_In->
Fill(etaIn,
"01,1", 0);
807 }
else if (
iEta < 0) {
809 nHits_In->
Fill(etaIn,
"01,1", 0);
811 nHits_In->
Fill(
" ",
"01,1", 0);
822 }
else if (
iEta == 0) {
824 }
else if (
iEta < 9) {
830 nHits_In->
Fill(etaIn,
"01,1", 0);
831 nHits_Mid->
Fill(etaMid,
"01,1", 0);
832 nHits_Out->
Fill(etaOut,
"01,1", 0);
834 nHits_In->
Fill(
" ",
"01,1", 0);
835 nHits_Mid->
Fill(
" ",
"01,1", 0);
836 nHits_Out->
Fill(
" ",
"01,1", 0);
845 nHits_In->
Fill(etaIn,
"01,1", 0);
846 }
else if (
iEta < 5) {
848 nHits_In->
Fill(etaIn,
"01,1", 0);
850 nHits_In->
Fill(
" ",
"01,1", 0);
858 nHits_In->
Fill(etaIn,
"01,1", 0);
859 nHits_Mid->
Fill(etaMid,
"01,1", 0);
861 nHits_Out->
Fill(etaOut,
"01,1", 0);
864 nHits_In->LabelsDeflate(
"X");
865 nHits_In->LabelsDeflate(
"Y");
866 nHits_In->LabelsOption(
"v",
"x");
868 nHits_Mid->LabelsDeflate(
"X");
869 nHits_Mid->LabelsDeflate(
"Y");
870 nHits_Mid->LabelsOption(
"v",
"x");
872 nHits_Out->LabelsDeflate(
"X");
873 nHits_Out->LabelsDeflate(
"Y");
874 nHits_Out->LabelsOption(
"v",
"x");
877 return StatusCode::SUCCESS;
◆ binMdtOccVsLB()
StatusCode MdtRawDataValAlg::binMdtOccVsLB |
( |
TH2 *& |
h, |
|
|
int |
region, |
|
|
int |
layer |
|
) |
| |
|
privatevirtual |
Definition at line 1324 of file MDTRawDataUtils.cxx.
1325 if (region == 0 || region == 1) {
1328 h->SetBins(834, 1, 2502, 122, 0, 122);
1329 h->GetYaxis()->SetBinLabel(1,
"BI1");
1330 h->GetYaxis()->SetBinLabel(19,
"BI2");
1331 h->GetYaxis()->SetBinLabel(37,
"BI3");
1332 h->GetYaxis()->SetBinLabel(55,
"BI4");
1333 h->GetYaxis()->SetBinLabel(73,
"BI5");
1334 h->GetYaxis()->SetBinLabel(91,
"BI6");
1335 h->GetYaxis()->SetBinLabel(107,
"BI7");
1336 h->GetYaxis()->SetBinLabel(115,
"BI8");
1338 h->GetYaxis()->SetTickLength(0);
1339 for (
int i = 0;
i < 6;
i++) {
1340 TLine*
l =
new TLine(1, 18 *
i, 50, 18 *
i);
1341 h->GetListOfFunctions()->Add(
l);
1343 TLine*
l2 =
new TLine(1, 106, 50, 106);
1344 h->GetListOfFunctions()->Add(
l2);
1345 TLine* l3 =
new TLine(1, 114, 50, 114);
1346 h->GetListOfFunctions()->Add(l3);
1347 for (
int i = 1;
i < 122;
i++) {
1348 if (
i < 90 && (
i % 18 == 11 ||
i % 18 == 16)) {
1349 TLine*
l =
new TLine(1,
i, 10,
i);
1350 h->GetListOfFunctions()->Add(
l);
1352 TLine*
l =
new TLine(1,
i, 20,
i);
1353 h->GetListOfFunctions()->Add(
l);
1358 else if (
layer == 1) {
1359 h->SetBins(834, 1, 2502, 95, 0, 95);
1363 h->GetYaxis()->SetBinLabel(1,
"BM1");
1364 h->GetYaxis()->SetBinLabel(17,
"BM2");
1365 h->GetYaxis()->SetBinLabel(33,
"BM3");
1366 h->GetYaxis()->SetBinLabel(49,
"BM4");
1367 h->GetYaxis()->SetBinLabel(65,
"BM5");
1368 h->GetYaxis()->SetBinLabel(81,
"BM6");
1370 h->GetYaxis()->SetTickLength(0);
1371 for (
int i = 1;
i < 95;
i++) {
1372 TLine*
l =
new TLine(1,
i, 20,
i);
1373 h->GetListOfFunctions()->Add(
l);
1375 TLine*
l1 =
new TLine(1, 16, 50, 16);
1376 h->GetListOfFunctions()->Add(
l1);
1377 TLine*
l2 =
new TLine(1, 32, 50, 32);
1378 h->GetListOfFunctions()->Add(
l2);
1379 TLine* l3 =
new TLine(1, 48, 50, 48);
1380 h->GetListOfFunctions()->Add(l3);
1381 TLine* l4 =
new TLine(1, 64, 50, 64);
1382 h->GetListOfFunctions()->Add(l4);
1383 TLine* l5 =
new TLine(1, 80, 50, 80);
1384 h->GetListOfFunctions()->Add(l5);
1387 else if (
layer == 2 && region == 0) {
1388 h->SetBins(834, 1, 2502, 118, 0, 118);
1390 h->GetYaxis()->SetBinLabel(1,
"BO0");
1391 h->GetYaxis()->SetBinLabel(4,
"BO1");
1392 h->GetYaxis()->SetBinLabel(19,
"BO2");
1393 h->GetYaxis()->SetBinLabel(35,
"BO3");
1394 h->GetYaxis()->SetBinLabel(51,
"BO4");
1395 h->GetYaxis()->SetBinLabel(67,
"BO5");
1396 h->GetYaxis()->SetBinLabel(83,
"BO6");
1397 h->GetYaxis()->SetBinLabel(99,
"BO7,8");
1399 h->GetYaxis()->SetBinLabel(103,
"BE1");
1400 h->GetYaxis()->SetBinLabel(111,
"BE2");
1402 h->GetYaxis()->SetTickLength(0);
1403 for (
int i = 1;
i < 118;
i++) {
1404 TLine*
l =
new TLine(1,
i, 20,
i);
1405 h->GetListOfFunctions()->Add(
l);
1407 TLine*
l1 =
new TLine(1, 2, 50, 2);
1408 h->GetListOfFunctions()->Add(
l1);
1409 TLine*
l2 =
new TLine(1, 18, 50, 18);
1410 h->GetListOfFunctions()->Add(
l2);
1411 TLine* l3 =
new TLine(1, 34, 50, 34);
1412 h->GetListOfFunctions()->Add(l3);
1413 TLine* l4 =
new TLine(1, 50, 50, 50);
1414 h->GetListOfFunctions()->Add(l4);
1415 TLine* l5 =
new TLine(1, 66, 50, 66);
1416 h->GetListOfFunctions()->Add(l5);
1417 TLine* l6 =
new TLine(1, 82, 50, 82);
1418 h->GetListOfFunctions()->Add(l6);
1419 TLine* l7 =
new TLine(1, 98, 50, 98);
1420 h->GetListOfFunctions()->Add(l7);
1421 TLine* l8 =
new TLine(1, 100, 50, 100);
1422 h->GetListOfFunctions()->Add(l8);
1423 TLine* l9 =
new TLine(1, 102, 50, 102);
1424 h->GetListOfFunctions()->Add(l9);
1425 TLine* l10 =
new TLine(1, 110, 50, 110);
1426 h->GetListOfFunctions()->Add(l10);
1429 else if (
layer == 2 && region == 1) {
1430 h->SetBins(834, 1, 2502, 116, 0, 116);
1432 h->GetYaxis()->SetBinLabel(1,
"BO1");
1433 h->GetYaxis()->SetBinLabel(17,
"BO2");
1434 h->GetYaxis()->SetBinLabel(33,
"BO3");
1435 h->GetYaxis()->SetBinLabel(49,
"BO4");
1436 h->GetYaxis()->SetBinLabel(65,
"BO5");
1437 h->GetYaxis()->SetBinLabel(81,
"BO6");
1438 h->GetYaxis()->SetBinLabel(97,
"BO7,8");
1440 h->GetYaxis()->SetBinLabel(101,
"BE1");
1441 h->GetYaxis()->SetBinLabel(109,
"BE2");
1443 h->GetYaxis()->SetTickLength(0);
1444 for (
int i = 1;
i < 116;
i++) {
1445 TLine*
l =
new TLine(1,
i, 20,
i);
1446 h->GetListOfFunctions()->Add(
l);
1448 TLine*
l1 =
new TLine(1, 16, 50, 16);
1449 h->GetListOfFunctions()->Add(
l1);
1450 TLine*
l2 =
new TLine(1, 32, 50, 32);
1451 h->GetListOfFunctions()->Add(
l2);
1452 TLine* l3 =
new TLine(1, 48, 50, 48);
1453 h->GetListOfFunctions()->Add(l3);
1454 TLine* l4 =
new TLine(1, 64, 50, 64);
1455 h->GetListOfFunctions()->Add(l4);
1456 TLine* l5 =
new TLine(1, 80, 50, 80);
1457 h->GetListOfFunctions()->Add(l5);
1458 TLine* l6 =
new TLine(1, 96, 50, 96);
1459 h->GetListOfFunctions()->Add(l6);
1460 TLine* l7 =
new TLine(1, 98, 50, 98);
1461 h->GetListOfFunctions()->Add(l7);
1462 TLine* l8 =
new TLine(1, 100, 50, 100);
1463 h->GetListOfFunctions()->Add(l8);
1464 TLine* l9 =
new TLine(1, 108, 50, 108);
1465 h->GetListOfFunctions()->Add(l9);
1471 h->SetBins(834, 1, 2502, 50, 0, 50);
1473 h->GetYaxis()->SetBinLabel(1,
"EI1");
1474 h->GetYaxis()->SetBinLabel(17,
"EI2");
1475 h->GetYaxis()->SetBinLabel(33,
"EI3");
1476 h->GetYaxis()->SetBinLabel(41,
"EI4");
1477 h->GetYaxis()->SetBinLabel(49,
"EI5");
1479 h->GetYaxis()->SetTickLength(0);
1480 for (
int i = 1;
i < 50;
i++) {
1481 TLine*
l =
new TLine(1,
i, 20,
i);
1482 h->GetListOfFunctions()->Add(
l);
1484 TLine*
l1 =
new TLine(1, 16, 50, 16);
1485 h->GetListOfFunctions()->Add(
l1);
1486 TLine*
l2 =
new TLine(1, 32, 50, 32);
1487 h->GetListOfFunctions()->Add(
l2);
1488 TLine* l3 =
new TLine(1, 40, 50, 40);
1489 h->GetListOfFunctions()->Add(l3);
1490 TLine* l4 =
new TLine(1, 48, 50, 48);
1491 h->GetListOfFunctions()->Add(l4);
1494 else if (
layer == 1) {
1495 h->SetBins(834, 1, 2502, 80, 0, 80);
1497 h->GetYaxis()->SetBinLabel(1,
"EM1");
1498 h->GetYaxis()->SetBinLabel(17,
"EM2");
1499 h->GetYaxis()->SetBinLabel(33,
"EM3");
1500 h->GetYaxis()->SetBinLabel(49,
"EM4");
1501 h->GetYaxis()->SetBinLabel(65,
"EM5");
1503 h->GetYaxis()->SetTickLength(0);
1504 for (
int i = 1;
i < 80;
i++) {
1505 TLine*
l =
new TLine(1,
i, 20,
i);
1506 h->GetListOfFunctions()->Add(
l);
1508 TLine*
l1 =
new TLine(1, 16, 50, 16);
1509 h->GetListOfFunctions()->Add(
l1);
1510 TLine*
l2 =
new TLine(1, 32, 50, 32);
1511 h->GetListOfFunctions()->Add(
l2);
1512 TLine* l3 =
new TLine(1, 48, 50, 48);
1513 h->GetListOfFunctions()->Add(l3);
1514 TLine* l4 =
new TLine(1, 64, 50, 64);
1515 h->GetListOfFunctions()->Add(l4);
1518 else if (
layer == 2) {
1521 h->SetBins(834, 1, 2502, 103, 0, 103);
1523 h->GetYaxis()->SetBinLabel(1,
"EO1");
1524 h->GetYaxis()->SetBinLabel(17,
"EO2");
1525 h->GetYaxis()->SetBinLabel(33,
"EO3");
1526 h->GetYaxis()->SetBinLabel(49,
"EO4");
1527 h->GetYaxis()->SetBinLabel(65,
"EO5");
1528 h->GetYaxis()->SetBinLabel(81,
"EO6");
1529 h->GetYaxis()->SetBinLabel(97,
"EE1,2");
1531 h->GetYaxis()->SetTickLength(0);
1532 for (
int i = 1;
i < 103;
i++) {
1533 TLine*
l =
new TLine(1,
i, 20,
i);
1534 h->GetListOfFunctions()->Add(
l);
1536 TLine*
l1 =
new TLine(1, 16, 50, 16);
1537 h->GetListOfFunctions()->Add(
l1);
1538 TLine*
l2 =
new TLine(1, 32, 50, 32);
1539 h->GetListOfFunctions()->Add(
l2);
1540 TLine* l3 =
new TLine(1, 48, 50, 48);
1541 h->GetListOfFunctions()->Add(l3);
1542 TLine* l4 =
new TLine(1, 64, 50, 64);
1543 h->GetListOfFunctions()->Add(l4);
1544 TLine* l5 =
new TLine(1, 80, 50, 80);
1545 h->GetListOfFunctions()->Add(l5);
1546 TLine* l6 =
new TLine(1, 96, 50, 96);
1547 h->GetListOfFunctions()->Add(l6);
1548 TLine* l7 =
new TLine(1, 100, 50, 100);
1549 h->GetListOfFunctions()->Add(l7);
1550 }
else if (region == 3) {
1551 h->SetBins(834, 1, 2502, 127, 0, 127);
1553 h->GetYaxis()->SetBinLabel(1,
"EO1");
1554 h->GetYaxis()->SetBinLabel(17,
"EO2");
1555 h->GetYaxis()->SetBinLabel(33,
"EO3");
1556 h->GetYaxis()->SetBinLabel(49,
"EO4");
1557 h->GetYaxis()->SetBinLabel(65,
"EO5");
1558 h->GetYaxis()->SetBinLabel(81,
"EO6");
1559 h->GetYaxis()->SetBinLabel(97,
"EE1");
1560 h->GetYaxis()->SetBinLabel(113,
"EE2");
1562 h->GetYaxis()->SetTickLength(0);
1563 for (
int i = 1;
i < 127;
i++) {
1564 TLine*
l =
new TLine(1,
i, 20,
i);
1565 h->GetListOfFunctions()->Add(
l);
1567 TLine*
l1 =
new TLine(1, 16, 50, 16);
1568 h->GetListOfFunctions()->Add(
l1);
1569 TLine*
l2 =
new TLine(1, 32, 50, 32);
1570 h->GetListOfFunctions()->Add(
l2);
1571 TLine* l3 =
new TLine(1, 48, 50, 48);
1572 h->GetListOfFunctions()->Add(l3);
1573 TLine* l4 =
new TLine(1, 64, 50, 64);
1574 h->GetListOfFunctions()->Add(l4);
1575 TLine* l5 =
new TLine(1, 80, 50, 80);
1576 h->GetListOfFunctions()->Add(l5);
1577 TLine* l6 =
new TLine(1, 96, 50, 96);
1578 h->GetListOfFunctions()->Add(l6);
1579 TLine* l7 =
new TLine(1, 112, 50, 112);
1580 h->GetListOfFunctions()->Add(l7);
1585 return StatusCode::SUCCESS;
◆ binMdtOccVsLB_Crate()
StatusCode MdtRawDataValAlg::binMdtOccVsLB_Crate |
( |
TH2 *& |
h, |
|
|
int |
region, |
|
|
int |
crate |
|
) |
| |
|
privatevirtual |
Definition at line 1588 of file MDTRawDataUtils.cxx.
1589 if (region == 0 || region == 1) {
1592 h->SetBins(834, 1, 2502, 73, 0, 73);
1593 h->GetYaxis()->SetBinLabel(1,
"BIL");
1594 h->GetYaxis()->SetBinLabel(13,
"BIS");
1595 h->GetYaxis()->SetBinLabel(25,
"BME");
1596 h->GetYaxis()->SetBinLabel(26,
"BML");
1597 h->GetYaxis()->SetBinLabel(38,
"BMS");
1598 h->GetYaxis()->SetBinLabel(50,
"BOL");
1599 h->GetYaxis()->SetBinLabel(62,
"BOS");
1601 h->GetYaxis()->SetTickLength(0);
1602 for (
int i = 0;
i < 73;
i++) {
1603 TLine*
l =
new TLine(1,
i, 20,
i);
1604 h->GetListOfFunctions()->Add(
l);
1606 TLine*
l2 =
new TLine(1, 0, 50, 0);
1607 h->GetListOfFunctions()->Add(
l2);
1608 TLine* l3 =
new TLine(1, 12, 50, 12);
1609 h->GetListOfFunctions()->Add(l3);
1610 TLine* l4 =
new TLine(1, 24, 50, 24);
1611 h->GetListOfFunctions()->Add(l4);
1612 TLine* l5 =
new TLine(1, 25, 50, 25);
1613 h->GetListOfFunctions()->Add(l5);
1614 TLine* l6 =
new TLine(1, 37, 50, 37);
1615 h->GetListOfFunctions()->Add(l6);
1616 TLine* l8 =
new TLine(1, 49, 50, 49);
1617 h->GetListOfFunctions()->Add(l8);
1618 TLine* l9 =
new TLine(1, 61, 50, 61);
1619 h->GetListOfFunctions()->Add(l9);
1622 else if (crate == 1) {
1623 h->SetBins(834, 1, 2502, 73, 0, 73);
1625 h->GetYaxis()->SetBinLabel(1,
"BIL");
1626 h->GetYaxis()->SetBinLabel(13,
"BIS");
1627 h->GetYaxis()->SetBinLabel(25,
"BME");
1628 h->GetYaxis()->SetBinLabel(37,
"BMS");
1629 h->GetYaxis()->SetBinLabel(49,
"BOL");
1630 h->GetYaxis()->SetBinLabel(61,
"BOS");
1632 h->GetYaxis()->SetTickLength(0);
1633 for (
int i = 1;
i < 73;
i++) {
1634 TLine*
l =
new TLine(1,
i, 20,
i);
1635 h->GetListOfFunctions()->Add(
l);
1637 TLine*
l1 =
new TLine(1, 12, 50, 12);
1638 h->GetListOfFunctions()->Add(
l1);
1639 TLine*
l2 =
new TLine(1, 24, 50, 24);
1640 h->GetListOfFunctions()->Add(
l2);
1641 TLine* l3 =
new TLine(1, 36, 50, 36);
1642 h->GetListOfFunctions()->Add(l3);
1643 TLine* l4 =
new TLine(1, 48, 50, 48);
1644 h->GetListOfFunctions()->Add(l4);
1645 TLine* l6 =
new TLine(1, 60, 50, 60);
1646 h->GetListOfFunctions()->Add(l6);
1648 }
else if (crate == 2) {
1650 h->SetBins(834, 1, 2502, 80, 0, 80);
1651 h->GetYaxis()->SetBinLabel(1,
"BIL");
1652 h->GetYaxis()->SetBinLabel(7,
"BIM");
1653 h->GetYaxis()->SetBinLabel(12,
"BIR");
1654 h->GetYaxis()->SetBinLabel(18,
"BIS");
1655 h->GetYaxis()->SetBinLabel(30,
"BMF");
1656 h->GetYaxis()->SetBinLabel(33,
"BMG");
1657 h->GetYaxis()->SetBinLabel(36,
"BML");
1658 h->GetYaxis()->SetBinLabel(48,
"BMS");
1659 h->GetYaxis()->SetBinLabel(54,
"BOF");
1660 h->GetYaxis()->SetBinLabel(58,
"BOG");
1662 h->GetYaxis()->SetBinLabel(63,
"BOL");
1663 h->GetYaxis()->SetBinLabel(75,
"BOS");
1664 }
else if (region == 1) {
1665 h->GetYaxis()->SetBinLabel(62,
"BOL");
1666 h->GetYaxis()->SetBinLabel(74,
"BOS");
1669 h->GetYaxis()->SetTickLength(0);
1670 for (
int i = 0;
i < 80;
i++) {
1671 TLine*
l =
new TLine(1,
i, 20,
i);
1672 h->GetListOfFunctions()->Add(
l);
1674 TLine*
l2 =
new TLine(1, 6, 50, 6);
1675 h->GetListOfFunctions()->Add(
l2);
1676 TLine* l3 =
new TLine(1, 11, 50, 11);
1677 h->GetListOfFunctions()->Add(l3);
1678 TLine* l3b =
new TLine(1, 17, 50, 17);
1679 h->GetListOfFunctions()->Add(l3b);
1682 TLine* l5 =
new TLine(1, 29, 50, 29);
1683 h->GetListOfFunctions()->Add(l5);
1684 TLine* l6 =
new TLine(1, 32, 50, 32);
1685 h->GetListOfFunctions()->Add(l6);
1686 TLine* l7 =
new TLine(1, 35, 50, 35);
1687 h->GetListOfFunctions()->Add(l7);
1688 TLine* l8 =
new TLine(1, 47, 50, 47);
1689 h->GetListOfFunctions()->Add(l8);
1690 TLine* l9 =
new TLine(1, 53, 50, 53);
1691 h->GetListOfFunctions()->Add(l9);
1692 TLine* l9b =
new TLine(1, 57, 50, 57);
1693 h->GetListOfFunctions()->Add(l9b);
1695 TLine* l10 =
new TLine(1, 62, 50, 62);
1696 h->GetListOfFunctions()->Add(l10);
1697 TLine* l11 =
new TLine(1, 74, 50, 74);
1698 h->GetListOfFunctions()->Add(l11);
1699 }
else if (region == 1) {
1700 TLine* l10 =
new TLine(1, 61, 50, 61);
1701 h->GetListOfFunctions()->Add(l10);
1702 TLine* l11 =
new TLine(1, 73, 50, 73);
1703 h->GetListOfFunctions()->Add(l11);
1707 else if (crate == 3) {
1709 h->SetBins(834, 1, 2502, 79, 0, 79);
1710 h->GetYaxis()->SetBinLabel(1,
"BIL");
1711 h->GetYaxis()->SetBinLabel(7,
"BIM");
1712 h->GetYaxis()->SetBinLabel(12,
"BIR");
1713 h->GetYaxis()->SetBinLabel(18,
"BIS");
1714 h->GetYaxis()->SetBinLabel(30,
"BMF");
1715 h->GetYaxis()->SetBinLabel(33,
"BMG");
1716 h->GetYaxis()->SetBinLabel(36,
"BML");
1717 h->GetYaxis()->SetBinLabel(47,
"BMS");
1718 h->GetYaxis()->SetBinLabel(53,
"BOF");
1719 h->GetYaxis()->SetBinLabel(57,
"BOG");
1721 h->GetYaxis()->SetBinLabel(62,
"BOL");
1722 h->GetYaxis()->SetBinLabel(75,
"BOS");
1723 }
else if (region == 1) {
1724 h->GetYaxis()->SetBinLabel(61,
"BOL");
1725 h->GetYaxis()->SetBinLabel(74,
"BOS");
1729 h->GetYaxis()->SetTickLength(0);
1730 for (
int i = 0;
i < 79;
i++) {
1731 TLine*
l =
new TLine(1,
i, 20,
i);
1732 h->GetListOfFunctions()->Add(
l);
1734 TLine*
l2 =
new TLine(1, 6, 50, 6);
1735 h->GetListOfFunctions()->Add(
l2);
1736 TLine* l3 =
new TLine(1, 11, 50, 11);
1737 h->GetListOfFunctions()->Add(l3);
1738 TLine* l3b =
new TLine(1, 17, 50, 17);
1739 h->GetListOfFunctions()->Add(l3b);
1742 TLine* l5 =
new TLine(1, 29, 50, 29);
1743 h->GetListOfFunctions()->Add(l5);
1744 TLine* l6 =
new TLine(1, 32, 50, 32);
1745 h->GetListOfFunctions()->Add(l6);
1746 TLine* l7 =
new TLine(1, 35, 50, 35);
1747 h->GetListOfFunctions()->Add(l7);
1748 TLine* l8 =
new TLine(1, 46, 50, 46);
1749 h->GetListOfFunctions()->Add(l8);
1750 TLine* l9 =
new TLine(1, 52, 50, 52);
1751 h->GetListOfFunctions()->Add(l9);
1752 TLine* l9b =
new TLine(1, 56, 50, 56);
1753 h->GetListOfFunctions()->Add(l9b);
1755 TLine* l10 =
new TLine(1, 61, 50, 61);
1756 h->GetListOfFunctions()->Add(l10);
1757 TLine* l11 =
new TLine(1, 74, 50, 74);
1758 h->GetListOfFunctions()->Add(l11);
1759 }
else if (region == 1) {
1760 TLine* l10 =
new TLine(1, 60, 50, 60);
1761 h->GetListOfFunctions()->Add(l10);
1762 TLine* l11 =
new TLine(1, 73, 50, 73);
1763 h->GetListOfFunctions()->Add(l11);
1769 if (crate == 0 || crate == 2) {
1770 h->SetBins(834, 1, 2502, 73, 0, 73);
1772 h->GetYaxis()->SetBinLabel(1,
"BEE");
1773 h->GetYaxis()->SetBinLabel(5,
"BIS");
1774 h->GetYaxis()->SetBinLabel(9,
"EEL");
1775 h->GetYaxis()->SetBinLabel(13,
"EES");
1776 h->GetYaxis()->SetBinLabel(17,
"EIL");
1777 h->GetYaxis()->SetBinLabel(26,
"EIS");
1778 h->GetYaxis()->SetBinLabel(30,
"EML");
1779 h->GetYaxis()->SetBinLabel(40,
"EMS");
1780 h->GetYaxis()->SetBinLabel(50,
"EOL");
1781 h->GetYaxis()->SetBinLabel(62,
"EOS");
1783 h->GetYaxis()->SetTickLength(0);
1784 for (
int i = 1;
i < 73;
i++) {
1785 TLine*
l =
new TLine(1,
i, 20,
i);
1786 h->GetListOfFunctions()->Add(
l);
1788 TLine*
l2 =
new TLine(1, 4, 50, 4);
1789 h->GetListOfFunctions()->Add(
l2);
1790 TLine* l3 =
new TLine(1, 8, 50, 8);
1791 h->GetListOfFunctions()->Add(l3);
1792 TLine* l4 =
new TLine(1, 12, 50, 12);
1793 h->GetListOfFunctions()->Add(l4);
1794 TLine* l5 =
new TLine(1, 16, 50, 16);
1795 h->GetListOfFunctions()->Add(l5);
1796 TLine* l6 =
new TLine(1, 25, 50, 25);
1797 h->GetListOfFunctions()->Add(l6);
1798 TLine* l7 =
new TLine(1, 29, 50, 29);
1799 h->GetListOfFunctions()->Add(l7);
1800 TLine* l8 =
new TLine(1, 39, 50, 39);
1801 h->GetListOfFunctions()->Add(l8);
1802 TLine* l9 =
new TLine(1, 49, 50, 49);
1803 h->GetListOfFunctions()->Add(l9);
1804 TLine* l10 =
new TLine(1, 61, 50, 61);
1805 h->GetListOfFunctions()->Add(l10);
1806 }
else if (crate == 1) {
1807 h->SetBins(834, 1, 2502, 71, 0, 71);
1809 h->GetYaxis()->SetBinLabel(1,
"BEE");
1810 h->GetYaxis()->SetBinLabel(5,
"BIS");
1811 h->GetYaxis()->SetBinLabel(9,
"EEL");
1812 h->GetYaxis()->SetBinLabel(12,
"EES");
1813 h->GetYaxis()->SetBinLabel(16,
"EIL");
1814 h->GetYaxis()->SetBinLabel(24,
"EIS");
1815 h->GetYaxis()->SetBinLabel(28,
"EML");
1816 h->GetYaxis()->SetBinLabel(38,
"EMS");
1817 h->GetYaxis()->SetBinLabel(48,
"EOL");
1818 h->GetYaxis()->SetBinLabel(60,
"EOS");
1820 h->GetYaxis()->SetTickLength(0);
1821 for (
int i = 1;
i < 71;
i++) {
1822 TLine*
l =
new TLine(1,
i, 20,
i);
1823 h->GetListOfFunctions()->Add(
l);
1825 TLine*
l2 =
new TLine(1, 4, 50, 4);
1826 h->GetListOfFunctions()->Add(
l2);
1827 TLine* l3 =
new TLine(1, 8, 50, 8);
1828 h->GetListOfFunctions()->Add(l3);
1829 TLine* l4 =
new TLine(1, 11, 50, 11);
1830 h->GetListOfFunctions()->Add(l4);
1831 TLine* l5 =
new TLine(1, 15, 50, 15);
1832 h->GetListOfFunctions()->Add(l5);
1833 TLine* l6 =
new TLine(1, 23, 50, 23);
1834 h->GetListOfFunctions()->Add(l6);
1835 TLine* l7 =
new TLine(1, 27, 50, 27);
1836 h->GetListOfFunctions()->Add(l7);
1837 TLine* l8 =
new TLine(1, 37, 50, 37);
1838 h->GetListOfFunctions()->Add(l8);
1839 TLine* l9 =
new TLine(1, 47, 50, 47);
1840 h->GetListOfFunctions()->Add(l9);
1841 TLine* l10 =
new TLine(1, 59, 50, 59);
1842 h->GetListOfFunctions()->Add(l10);
1843 }
else if (crate == 3) {
1844 h->SetBins(834, 1, 2502, 72, 0, 72);
1846 h->GetYaxis()->SetBinLabel(1,
"BEE");
1847 h->GetYaxis()->SetBinLabel(5,
"BIS");
1848 h->GetYaxis()->SetBinLabel(9,
"EEL");
1849 h->GetYaxis()->SetBinLabel(13,
"EES");
1850 h->GetYaxis()->SetBinLabel(17,
"EIL");
1851 h->GetYaxis()->SetBinLabel(25,
"EIS");
1852 h->GetYaxis()->SetBinLabel(29,
"EML");
1853 h->GetYaxis()->SetBinLabel(39,
"EMS");
1854 h->GetYaxis()->SetBinLabel(49,
"EOL");
1855 h->GetYaxis()->SetBinLabel(61,
"EOS");
1857 h->GetYaxis()->SetTickLength(0);
1858 for (
int i = 1;
i < 72;
i++) {
1859 TLine*
l =
new TLine(1,
i, 20,
i);
1860 h->GetListOfFunctions()->Add(
l);
1862 TLine*
l2 =
new TLine(1, 4, 50, 4);
1863 h->GetListOfFunctions()->Add(
l2);
1864 TLine* l3 =
new TLine(1, 8, 50, 8);
1865 h->GetListOfFunctions()->Add(l3);
1866 TLine* l4 =
new TLine(1, 12, 50, 12);
1867 h->GetListOfFunctions()->Add(l4);
1868 TLine* l5 =
new TLine(1, 16, 50, 16);
1869 h->GetListOfFunctions()->Add(l5);
1870 TLine* l6 =
new TLine(1, 24, 50, 24);
1871 h->GetListOfFunctions()->Add(l6);
1872 TLine* l7 =
new TLine(1, 28, 50, 28);
1873 h->GetListOfFunctions()->Add(l7);
1874 TLine* l8 =
new TLine(1, 38, 50, 38);
1875 h->GetListOfFunctions()->Add(l8);
1876 TLine* l9 =
new TLine(1, 48, 50, 48);
1877 h->GetListOfFunctions()->Add(l9);
1878 TLine* l10 =
new TLine(1, 60, 50, 60);
1879 h->GetListOfFunctions()->Add(l10);
1883 return StatusCode::SUCCESS;
◆ binMdtRegional()
StatusCode MdtRawDataValAlg::binMdtRegional |
( |
TH2 * |
h, |
|
|
std::string_view |
xAxis |
|
) |
| |
|
privatevirtual |
SET Ghost Entries
Definition at line 379 of file MDTRawDataUtils.cxx.
383 if (xAxis.substr(0, 2) ==
"BO" || xAxis.substr(0, 2) ==
"BI") {
386 }
else if (xAxis.substr(0, 2) ==
"BM" || xAxis.substr(0, 2) ==
"EO") {
389 }
else if (xAxis.substr(0, 2) ==
"EM" || xAxis.substr(0, 2) ==
"EI") {
399 for (
int ieta = LowerEta; ieta != UpperEta + 1; ++ieta) {
400 if (xAxis.substr(2, 1) ==
"A" && ieta < 0)
continue;
401 if (xAxis.substr(2, 1) ==
"C" && ieta == 0)
break;
402 if (ieta == 0 && xAxis.substr(0, 2) ==
"BO")
407 eta_s = xAxis.substr(0, 3);
409 h->Fill(eta_s, 1, 0);
412 bool barrelExtra = (xAxis ==
"BEA" || xAxis ==
"BEC");
415 for (
int iphi = 1; iphi <= 16; iphi++) {
422 if (xAxis.substr(0, 2) ==
"BI" && (iphi == 11 || iphi == 15)) {
423 h->Fill(eta_s, phi_s +
",1,R", 0);
424 h->Fill(eta_s, phi_s +
",2,R", 0);
425 h->Fill(eta_s, phi_s +
",1,M", 0);
426 h->Fill(eta_s, phi_s +
",2,M", 0);
428 h->Fill(eta_s, phi_s +
",1", 0);
429 h->Fill(eta_s, phi_s +
",2", 0);
431 }
else if (iphi % 2 == 0)
432 h->Fill(eta_s, phi_s +
",1", 0);
435 if (xAxis ==
"BEA" || xAxis ==
"BEC" || xAxis ==
"EMA" || xAxis ==
"EMC" || xAxis ==
"EOA" || xAxis ==
"EOC") {
436 h->GetXaxis()->FindBin(
".");
439 h->LabelsDeflate(
"X");
440 h->LabelsDeflate(
"Y");
444 if (xAxis ==
"BOA") {
467 if (xAxis ==
"BOC") {
480 if (xAxis ==
"BIA") {
545 if (xAxis ==
"BIC") {
611 if (xAxis ==
"EIA") {
657 if (xAxis ==
"EIC") {
704 if (xAxis ==
"EEA") {
711 if (xAxis ==
"EEC") {
718 if (xAxis ==
"BEA" || xAxis ==
"BEC") {
723 if (xAxis ==
"EMA" || xAxis ==
"EMC") {
728 if (xAxis ==
"EOA" || xAxis ==
"EOC") {
733 if (xAxis.substr(0, 2) ==
"EE" || xAxis.substr(0, 2) ==
"BI" || xAxis.substr(0, 2) ==
"EI" || xAxis.substr(0, 2) ==
"BM" ||
734 xAxis.substr(0, 2) ==
"BO") {
736 for (
int i = 0;
i !=
h->GetNbinsY() + 1;
i++) {
737 TLine*
l =
new TLine(0,
i, 0.55 *
h->GetNbinsX() / 17,
i);
738 h->GetListOfFunctions()->Add(
l);
740 for (
int i = 0;
i !=
h->GetNbinsX() + 1; ++
i) {
741 TLine*
l =
new TLine(
i, 0,
i, 0.55 / 17 *
h->GetNbinsY());
742 h->GetListOfFunctions()->Add(
l);
745 TLine* lx =
new TLine(0, 0,
h->GetNbinsX(), 0);
746 TLine* ly =
new TLine(0, 0, 0,
h->GetNbinsY());
747 lx->SetLineColor(kBlack);
748 ly->SetLineColor(kBlack);
749 h->GetListOfFunctions()->Add(lx);
750 h->GetListOfFunctions()->Add(ly);
753 return StatusCode::SUCCESS;
◆ bookHistograms()
StatusCode ManagedMonitorToolBase::bookHistograms |
( |
| ) |
|
|
virtualinherited |
An inheriting class should either override this function or bookHists().
Reimplemented in SCTHitEffMonTool, SCTHitsNoiseMonTool, SCTErrMonTool, SCTTracksMonTool, SCTLorentzMonTool, photonMonTool, egammaMonToolBase, electronMonTool, MuonPhysValMonitoring::MuonPhysValMonitoringTool, LArCellMonTool, AFPHitsMonitorTool, MuonDQA::MuonEventInfoMonTool, DQTDataFlowMonTool, TileCalCellMonTool, ActsTrk::PhysValTool, PhysValSecVtx, LUCID_HitsMoniTool, ZeeTaPMonTool, forwardElectronMonTool, DQTNonCollBkg_ZDC, TRT_Electron_Monitoring_Tool, InDetGlobalTrackMonTool, CscCalibMonToolBase, JetTagMonitoring, InDetPhysValMonitoringTool, EgammaPhysValMonitoring::EgammaPhysValMonitoringTool, InDetGlobalSynchMonTool, MissingEtDQA::PhysValMET, CaloTowerVecMon, JetTagDQA::PhysValBTag, CscCalibMonToolSlope, METMonTool, DQTGlobalWZFinderTool, CSCSegmValAlg, PhysVal::PhysValExample, TopPhysVal::TopPhysValMonitoring, DataQualityFatherMonTool, CscCalibMonToolPed, ZeeValidation::ZeeValidationMonitoringTool, CaloClusterVecMon, CaloTransverseBalanceVecMon, DQTDetSynchMonTool, InDetTrackPerfMonTool, IDPerfMonWenu, IDPerfMonZee, TrackCaloClusterRecValidationTool, DQTMuonIDTrackTool, InDetGlobalPixelTool, JetMonitoringTool, TileCellNoiseMonTool, CscClusterValAlg, PhysValTau, PhysValFE, AFPTechnicalMonitorTool, ManagedMonitorToolTest, DiMuMon, InDetVertexMonitoring, CscPrdValAlg, CscRdoValAlg, HIMonitoringEventShapeTool, IDPerfMonKshort, HIMonitoringZdcTool, HIMonitoringElectronsTool, HIMonitoringPhotonsTool, PhysValCluster, and HIMonitoringMuonsTool.
Definition at line 1406 of file ManagedMonitorToolBase.cxx.
1410 return StatusCode::SUCCESS;
◆ bookHistogramsRecurrent()
StatusCode MdtRawDataValAlg::bookHistogramsRecurrent |
( |
| ) |
|
|
virtual |
An inheriting class should either override this function, bookHists() or bookHistograms().
Reimplemented from ManagedMonitorToolBase.
Definition at line 223 of file MdtRawDataValAlg.cxx.
232 if (
sc.isFailure()) {
237 if (
sc.isFailure()) {
246 ATH_MSG_DEBUG(
"MDT RawData Monitoring from ESD : newRunFlag()");
251 if (
sc.isFailure()) {
258 if (
sc.isFailure()) {
264 ATH_MSG_DEBUG(
"MdtRawDataValAlg::MDT RawData Monitoring Histograms being filled");
267 std::string hardware_name =
271 if (hardware_name ==
"BML6A13" || hardware_name ==
"BML6C13")
continue;
274 chamber = std::make_unique<MDTChamber>(hardware_name);
277 chamber->SetMDTHitsPerChamber_IMO_Bin(
279 chamber->SetMDTHitsPerChamber_IMO_Bin(
281 chamber->SetMDTHitsPerML_byLayer_Bins(
◆ bookHists()
StatusCode ManagedMonitorToolBase::bookHists |
( |
| ) |
|
|
virtualinherited |
◆ bookMDTHisto_chambers()
StatusCode MdtRawDataValAlg::bookMDTHisto_chambers |
( |
TH1F_LW *& |
h, |
|
|
TString |
h_title, |
|
|
TString |
xtit, |
|
|
TString |
ytit, |
|
|
int |
nbin, |
|
|
float |
xi, |
|
|
float |
xf, |
|
|
MonGroup & |
mgrp |
|
) |
| |
|
privatevirtual |
Definition at line 970 of file MDTRawDataUtils.cxx.
973 h->GetXaxis()->SetTitle(xtit);
974 h->GetYaxis()->SetTitle(ytit);
977 if (
sc.isFailure())
ATH_MSG_WARNING(
"couldn't register " << h_title <<
" hist to MonGroup");
◆ bookMDTHisto_chambers_2D()
StatusCode MdtRawDataValAlg::bookMDTHisto_chambers_2D |
( |
TH2F_LW *& |
h, |
|
|
TString |
h_title, |
|
|
TString |
xtit, |
|
|
TString |
ytit, |
|
|
int |
nbin1, |
|
|
float |
xi1, |
|
|
float |
xf1, |
|
|
int |
nbin2, |
|
|
float |
xi2, |
|
|
float |
xf2, |
|
|
MonGroup & |
mgrp |
|
) |
| |
|
privatevirtual |
Definition at line 996 of file MDTRawDataUtils.cxx.
999 h->SetOption(
"COLZ");
1001 h->SetMarkerColor(1);
1002 h->SetMarkerStyle(21);
1003 h->SetMarkerSize(0.2);
1004 h->GetXaxis()->SetTitle(xtit);
1005 h->GetYaxis()->SetTitle(ytit);
1008 if (
sc.isFailure())
ATH_MSG_WARNING(
"couldn't register " << h_title <<
" hist to MonGroup");
◆ bookMDTHisto_OccVsLB()
StatusCode MdtRawDataValAlg::bookMDTHisto_OccVsLB |
( |
TH2 *& |
h, |
|
|
TString |
h_title, |
|
|
TString |
xtit, |
|
|
TString |
ytit, |
|
|
int |
nbin1, |
|
|
float |
xi1, |
|
|
float |
xf1, |
|
|
int |
nbin2, |
|
|
float |
xi2, |
|
|
float |
xf2, |
|
|
MonGroup & |
mgrp |
|
) |
| |
|
privatevirtual |
Definition at line 1012 of file MDTRawDataUtils.cxx.
1014 h =
new TH2F(h_title, h_title, nbin1, xi1, xf1, nbin2, xi2, xf2);
1015 h->SetOption(
"COLZ");
1016 h->SetMarkerColor(1);
1017 h->SetMarkerStyle(21);
1018 h->SetMarkerSize(0.2);
1019 h->GetXaxis()->SetTitle(xtit);
1020 h->GetYaxis()->SetTitle(ytit);
1021 ATH_MSG_DEBUG(
"INSIDE bookMDTHisto_OccVsLB: " <<
h <<
" " << h_title);
1023 if (
sc.isFailure())
ATH_MSG_WARNING(
"couldn't register " << h_title <<
" hist to MonGroup");
◆ bookMDTHisto_overview()
StatusCode MdtRawDataValAlg::bookMDTHisto_overview |
( |
TH1 *& |
h, |
|
|
TString |
h_title, |
|
|
TString |
xtit, |
|
|
TString |
ytit, |
|
|
int |
nbin, |
|
|
float |
xi, |
|
|
float |
xf, |
|
|
MonGroup & |
mgrp |
|
) |
| |
|
privatevirtual |
Definition at line 957 of file MDTRawDataUtils.cxx.
959 h =
new TH1F(h_title, h_title, nbin, xi, xf);
961 h->SetTitleSize(0.3,
"y");
962 h->GetXaxis()->SetTitle(xtit);
963 h->GetYaxis()->SetTitle(ytit);
966 if (
sc.isFailure())
ATH_MSG_WARNING(
"couldn't register " << h_title <<
" hist to MonGroup");
◆ bookMDTHisto_overview_2D()
StatusCode MdtRawDataValAlg::bookMDTHisto_overview_2D |
( |
TH2 *& |
h, |
|
|
TString |
h_title, |
|
|
TString |
xtit, |
|
|
TString |
ytit, |
|
|
int |
nbin1, |
|
|
float |
xi1, |
|
|
float |
xf1, |
|
|
int |
nbin2, |
|
|
float |
xi2, |
|
|
float |
xf2, |
|
|
MonGroup & |
mgrp |
|
) |
| |
|
privatevirtual |
Definition at line 981 of file MDTRawDataUtils.cxx.
983 h =
new TH2F(h_title, h_title, nbin1, xi1, xf1, nbin2, xi2, xf2);
984 h->SetOption(
"COLZ");
985 h->SetMarkerColor(1);
986 h->SetMarkerStyle(21);
987 h->SetMarkerSize(0.2);
988 h->GetXaxis()->SetTitle(xtit);
989 h->GetYaxis()->SetTitle(ytit);
992 if (
sc.isFailure())
ATH_MSG_WARNING(
"couldn't register " << h_title <<
" hist to MonGroup");
◆ bookMDTHistograms()
Definition at line 706 of file MdtRawDataValAlg.cxx.
709 std::string hardware_name =
chamber->getName();
711 m_idHelperSvc->mdtIdHelper().get_module_hash(digcoll_id, idHash);
713 int tubeIdMax =
GetTubeMax(digcoll_id, hardware_name);
716 std::string subdir_path = hardware_name.substr(0, 1) + hardware_name.substr(4, 1);
717 if (subdir_path.at(1) ==
'B') subdir_path.at(1) =
'A';
719 MonGroup* mongroup_chambers_expert =
nullptr;
720 if (subdir_path ==
"BA")
721 mongroup_chambers_expert = &(
m_mg->mongroup_chambers_expert_MDTBA);
722 else if (subdir_path ==
"BC")
723 mongroup_chambers_expert = &(
m_mg->mongroup_chambers_expert_MDTBC);
724 else if (subdir_path ==
"EA")
725 mongroup_chambers_expert = &(
m_mg->mongroup_chambers_expert_MDTEA);
727 mongroup_chambers_expert = &(
m_mg->mongroup_chambers_expert_MDTEC);
734 tubeIdMax, 1, tubeIdMax + 1, *mongroup_chambers_expert);
741 tubeIdMax, 1, tubeIdMax + 1, *mongroup_chambers_expert);
748 tubeIdMax + 1, *mongroup_chambers_expert);
755 *mongroup_chambers_expert);
762 100, 0, 2000., *mongroup_chambers_expert);
769 100, 0, 2000., *mongroup_chambers_expert);
775 "Number of Entries", 100, 0, 400., *mongroup_chambers_expert);
782 "Number of Entries", 100, 0, 400., *mongroup_chambers_expert);
789 *mongroup_chambers_expert);
795 10., *mongroup_chambers_expert);
801 1, tubeIdMax + 1, *mongroup_chambers_expert);
807 tubeIdMax, 1, tubeIdMax + 1, *mongroup_chambers_expert);
815 *mongroup_chambers_expert);
824 20., 0., 400., *mongroup_chambers_expert);
830 "Drift Time [nsec]", 80, -20, 20., 120, -200., 1000., *mongroup_chambers_expert);
836 "Error [mm]", 80, -20, 20., 80, -5., 5., *mongroup_chambers_expert);
842 "Segm dist. to tube [mm]", 80, -20, 20., 80, -20., 20., *mongroup_chambers_expert);
◆ bookMDTOverviewHistograms()
StatusCode MdtRawDataValAlg::bookMDTOverviewHistograms |
( |
bool |
newLumiBlock, |
|
|
bool |
newRun |
|
) |
| |
|
privatevirtual |
FOR R-Z view
FOR X-Y view
Definition at line 1318 of file MdtRawDataValAlg.cxx.
1322 if (newLumiBlock) {}
1328 m_mg->mongroup_overview_shiftLumi);
1333 2000.,
m_mg->mongroup_overview_shiftLumi);
1338 400.,
m_mg->mongroup_overview_shiftLumi);
1343 m_mg->mongroup_overview_shiftLumi);
1348 10000.,
m_mg->mongroup_overview_shiftLumi);
1352 200, 0., 100000.,
m_mg->mongroup_overview_shiftLumi);
1356 m_mg->mongroup_overview_shiftLumi);
1361 100000.,
m_mg->mongroup_overview_shiftLumi);
1365 sc =
bookMDTHisto_overview_2D(
m_overalltdcadcLumi,
"Overall_TDCADC_spectrum",
"[nsec]",
"[adc counts]", 50, 0, 2000., 20., 0., 400.,
1366 m_mg->mongroup_overview_shiftLumi);
1372 m_mg->mongroup_overview_shift);
1376 10000.,
m_mg->mongroup_overview_shift);
1380 m_mg->mongroup_overview_shift);
1384 400.,
m_mg->mongroup_overview_shift);
1388 20., 0., 400.,
m_mg->mongroup_overview_shift);
1392 "Number of Entries", 400, 0., 1600.,
m_mg->mongroup_overview_shift);
1396 "[Number_of_MDT_chambers_with_high_occupancy]",
"Number of Entries", 200, 0., 800.,
1397 m_mg->mongroup_overview_shift);
1403 "[Number_of_MDT_chambers_with_hits]",
"Number of Entries", 400, 0., 1600.,
m_mg->mongroup_overview_shift);
1408 m_mg->mongroup_overview_expert);
1412 if (hardware_name ==
"BML6A13" || hardware_name ==
"BML6C13")
continue;
1422 std::string mdtreg[3] = {
"Barrel",
"Overlap",
"EndCap"};
1423 std::string generic_path_mdtrzxydet =
"MDT/Overview";
1425 for (
int imdtreg = 0; imdtreg < 3; imdtreg++) {
1428 "MDT-GlobalZ(mm)",
"MDT-GlobalR(mm)", 250, -25000., 25000., 120, 0., 12000.,
1429 m_mg->mongroup_overview_shift_geometry);
1433 "MDT-GlobalX(mm)",
"MDT-GlobalY(mm)", 150, -15000., 15000., 150, -15000., 15000.,
1434 m_mg->mongroup_overview_shift_geometry);
◆ bookMDTSummaryHistograms()
StatusCode MdtRawDataValAlg::bookMDTSummaryHistograms |
( |
bool |
newLumiBlock, |
|
|
bool |
newRun |
|
) |
| |
|
privatevirtual |
Definition at line 850 of file MdtRawDataValAlg.cxx.
858 "Number of Entries", 120, 0., 2000.,
m_mg->mongroup_brA_shiftLumi);
860 "Number of Entries", 120, 0., 2000.,
m_mg->mongroup_brC_shiftLumi);
862 "Number of Entries", 120, 0., 2000.,
m_mg->mongroup_ecA_shiftLumi);
864 "Number of Entries", 120, 0., 2000.,
m_mg->mongroup_ecC_shiftLumi);
866 2000.,
m_mg->mongroup_brA_shiftLumi);
868 2000.,
m_mg->mongroup_brC_shiftLumi);
870 2000.,
m_mg->mongroup_ecA_shiftLumi);
872 2000.,
m_mg->mongroup_ecC_shiftLumi);
876 100, 0.5, 400.5,
m_mg->mongroup_brA_shiftLumi);
878 100, 0.5, 400.5,
m_mg->mongroup_brC_shiftLumi);
880 100, 0.5, 400.5,
m_mg->mongroup_ecA_shiftLumi);
882 100, 0.5, 400.5,
m_mg->mongroup_ecC_shiftLumi);
884 m_mg->mongroup_brA_shiftLumi);
886 m_mg->mongroup_brC_shiftLumi);
888 m_mg->mongroup_ecA_shiftLumi);
890 m_mg->mongroup_ecC_shiftLumi);
892 0., 400.,
m_mg->mongroup_brA_shiftLumi);
894 0., 400.,
m_mg->mongroup_brC_shiftLumi);
896 0., 400.,
m_mg->mongroup_ecA_shiftLumi);
898 0., 400.,
m_mg->mongroup_ecC_shiftLumi);
902 "Number of Entries", 120, 0., 2000.,
m_mg->mongroup_brA_shiftLumi);
904 "Number of Entries", 120, 0., 2000.,
m_mg->mongroup_brC_shiftLumi);
906 "Number of Entries", 120, 0., 2000.,
m_mg->mongroup_ecA_shiftLumi);
908 "Number of Entries", 120, 0., 2000.,
m_mg->mongroup_ecC_shiftLumi);
910 "Number of Entries", 120, 0., 2000.,
m_mg->mongroup_brA_shiftLumi);
912 "Number of Entries", 120, 0., 2000.,
m_mg->mongroup_brC_shiftLumi);
914 "Number of Entries", 120, 0., 2000.,
m_mg->mongroup_ecA_shiftLumi);
916 "Number of Entries", 120, 0., 2000.,
m_mg->mongroup_ecC_shiftLumi);
920 2000., 20., 0., 400.,
m_mg->mongroup_brA_shiftLumi);
922 2000., 20., 0., 400.,
m_mg->mongroup_brC_shiftLumi);
924 2000., 20., 0., 400.,
m_mg->mongroup_ecA_shiftLumi);
926 2000., 20., 0., 400.,
m_mg->mongroup_ecC_shiftLumi);
930 0, 1, 1, 0, 1,
m_mg->mongroup_overview_shiftLumi);
932 1, 0, 1, 1, 0, 1,
m_mg->mongroup_overview_shiftLumi);
934 0, 1, 1, 0, 1,
m_mg->mongroup_overview_shiftLumi);
937 std::string ecap[4] = {
"BA",
"BC",
"EA",
"EC"};
938 std::string
layer[4] = {
"Inner",
"Middle",
"Outer",
"Extra"};
939 std::string MDTHits_BE[2] = {
"Barrel",
"EndCap"};
941 for (
int iecap = 0; iecap < 4; iecap++) {
942 for (
int ilayer = 0; ilayer < 4; ilayer++) {
946 if (iecap == enumBarrelA)
948 "NumberOfHitsIn" + ecap[iecap] +
layer[ilayer] +
"PerMultiLayer_ADCCut",
"[Eta]",
949 "[Phi,Multilayer]", 1, 0, 1, 1, 0, 1,
m_mg->mongroup_brA_shiftLumi);
950 else if (iecap == enumBarrelC)
952 "NumberOfHitsIn" + ecap[iecap] +
layer[ilayer] +
"PerMultiLayer_ADCCut",
"[Eta]",
953 "[Phi,Multilayer]", 1, 0, 1, 1, 0, 1,
m_mg->mongroup_brC_shiftLumi);
954 else if (iecap == enumEndCapA)
956 "NumberOfHitsIn" + ecap[iecap] +
layer[ilayer] +
"PerMultiLayer_ADCCut",
"[Eta]",
957 "[Phi,Multilayer]", 1, 0, 1, 1, 0, 1,
m_mg->mongroup_ecA_shiftLumi);
960 "NumberOfHitsIn" + ecap[iecap] +
layer[ilayer] +
"PerMultiLayer_ADCCut",
"[Eta]",
961 "[Phi,Multilayer]", 1, 0, 1, 1, 0, 1,
m_mg->mongroup_ecC_shiftLumi);
963 std::string xAxis = ecap[iecap].substr(0, 1) +
layer[ilayer].substr(0, 1) + ecap[iecap].substr(1, 1);
966 if (
sc.isFailure()) {
967 ATH_MSG_ERROR(
"mdthitspermultilayer Failed to register histogram lowStat");
970 ATH_MSG_DEBUG(
"Inside LowStat Loop, iecap=" << iecap <<
", ilayer=" << ilayer);
975 if (ilayer == 0 && ((iecap == 0 || iecap == 2))) {
976 ATH_MSG_DEBUG(
"Bookint mdthitsperchamber_InnerMiddleOuter LowStat");
978 "NumberOfHitsIn" + MDTHits_BE[iecap / 2] +
"PerChamber_ADCCut",
"[Eta]",
"[Layer,Phi]", 1,
979 0, 1, 1, 0, 1,
m_mg->mongroup_overview_shiftLumi);
983 "NumberOfHitsIn" + MDTHits_BE[iecap / 2] +
"PerChamber_ADCCut_NoiseBurst",
"[Eta]",
984 "[Layer,Phi]", 1, 0, 1, 1, 0, 1,
m_mg->mongroup_overview_shiftLumi);
987 ATH_MSG_DEBUG(
"Bookint m_mdthitsperchamber_onSegm_InnerMiddleOuterLumi LowStat");
989 "NumberOfHitsIn" + MDTHits_BE[iecap / 2] +
"PerChamber_onSegm_ADCCut",
"[Eta]",
990 "[Layer,Phi]", 1, 0, 1, 1, 0, 1,
m_mg->mongroup_overview_shiftLumi_recoMon);
993 if (
sc.isFailure()) {
994 ATH_MSG_ERROR(
"mdthitsperchamber_InnerMiddleOuter Failed to register histogram in lowStat");
1007 std::string ecap[4] = {
"BA",
"BC",
"EA",
"EC"};
1008 std::string
layer[4] = {
"Inner",
"Middle",
"Outer",
"Extra"};
1009 std::string MDTHits_BE[2] = {
"Barrel",
"EndCap"};
1010 std::string crate[4] = {
"01",
"02",
"03",
"04"};
1012 for (
int iecap = 0; iecap < 4; iecap++) {
1013 for (
int ilayer = 0; ilayer < 4; ilayer++) {
1018 if (iecap == enumBarrelA) {
1020 "effsIn" + ecap[iecap] +
layer[ilayer] +
"PerMultiLayer_ADCCut",
"[Eta]",
1021 "[Phi,Multilayer]", 1, 0, 1, 1, 0, 1,
m_mg->mongroup_brA_shift);
1022 }
else if (iecap == enumBarrelC) {
1024 "effsIn" + ecap[iecap] +
layer[ilayer] +
"PerMultiLayer_ADCCut",
"[Eta]",
1025 "[Phi,Multilayer]", 1, 0, 1, 1, 0, 1,
m_mg->mongroup_brC_shift);
1026 }
else if (iecap == enumEndCapA) {
1028 "effsIn" + ecap[iecap] +
layer[ilayer] +
"PerMultiLayer_ADCCut",
"[Eta]",
1029 "[Phi,Multilayer]", 1, 0, 1, 1, 0, 1,
m_mg->mongroup_ecA_shift);
1032 "effsIn" + ecap[iecap] +
layer[ilayer] +
"PerMultiLayer_ADCCut",
"[Eta]",
1033 "[Phi,Multilayer]", 1, 0, 1, 1, 0, 1,
m_mg->mongroup_ecC_shift);
1036 std::string xAxis = ecap[iecap].substr(0, 1) +
layer[ilayer].substr(0, 1) + ecap[iecap].substr(1, 1);
1039 if (
sc.isFailure()) {
1040 ATH_MSG_ERROR(
"mdthitspermultilayer Failed to register histogram ");
1043 ATH_MSG_DEBUG(
"Inside Loop, iecap=" << iecap <<
", ilayer=" << ilayer);
1048 if (ilayer == 0 && ((iecap == 0 || iecap == 2))) {
1049 ATH_MSG_DEBUG(
"Bookint m_mdteffperchamber_InnerMiddleOuter");
1051 "effsIn" + MDTHits_BE[iecap / 2] +
"PerChamber_ADCCut",
"[Eta]",
"[Layer,Phi]", 1, 0, 1,
1052 1, 0, 1,
m_mg->mongroup_overview_shift);
1056 if (
sc.isFailure()) {
1057 ATH_MSG_ERROR(
"mdthitsperchamber_InnerMiddleOuter Failed to register histogram ");
1064 "Number of Entries", 100, 0., 400.,
m_mg->mongroup_brA_shift);
1066 "Number of Entries", 100, 0., 400.,
m_mg->mongroup_brC_shift);
1068 "Number of Entries", 100, 0., 400.,
m_mg->mongroup_ecA_shift);
1070 "Number of Entries", 100, 0., 400.,
m_mg->mongroup_ecC_shift);
1072 "[adc counts]", 50, 0, 2000., 40, 0., 400.,
m_mg->mongroup_brA_shift);
1074 "[adc counts]", 50, 0, 2000., 40, 0., 400.,
m_mg->mongroup_brC_shift);
1076 "[adc counts]", 50, 0, 2000., 40, 0., 400.,
m_mg->mongroup_ecA_shift);
1078 "[adc counts]", 50, 0, 2000., 40, 0., 400.,
m_mg->mongroup_ecC_shift);
1080 0., 2000.,
m_mg->mongroup_brA_shift);
1082 0., 2000.,
m_mg->mongroup_brC_shift);
1084 0., 2000.,
m_mg->mongroup_ecA_shift);
1086 0., 2000.,
m_mg->mongroup_ecC_shift);
1088 "Number of Entries", 120, 0., 2000.,
m_mg->mongroup_brA_shift);
1090 "Number of Entries", 120, 0., 2000.,
m_mg->mongroup_brC_shift);
1092 "Number of Entries", 120, 0., 2000.,
m_mg->mongroup_ecA_shift);
1094 "Number of Entries", 120, 0., 2000.,
m_mg->mongroup_ecC_shift);
1100 std::string lbhisttitle;
1102 lbhisttitle =
"OccupancyVsLB_" + ecap[iecap] +
layer[ilayer] +
"PlusExtra";
1104 lbhisttitle =
"OccupancyVsLB_" + ecap[iecap] +
layer[ilayer];
1105 if (iecap == enumBarrelA) {
1106 sc =
bookMDTHisto_OccVsLB(
m_mdtoccvslb[iecap][ilayer], lbhisttitle,
"LB",
"[Eta,Phi]", 834, 1, 2502, 100, 1, 100,
1107 m_mg->mongroup_brA_shift);
1108 if (
sc.isFailure()) {
1109 ATH_MSG_ERROR(
"m_mdtoccvslb Failed to register histogram ");
1112 }
else if (iecap == enumBarrelC) {
1113 sc =
bookMDTHisto_OccVsLB(
m_mdtoccvslb[iecap][ilayer], lbhisttitle,
"LB",
"[Eta,Phi]", 834, 1, 2502, 100, 0, 100,
1114 m_mg->mongroup_brC_shift);
1115 if (
sc.isFailure()) {
1116 ATH_MSG_ERROR(
"m_mdtoccvslb Failed to register histogram ");
1119 }
else if (iecap == enumEndCapA) {
1120 sc =
bookMDTHisto_OccVsLB(
m_mdtoccvslb[iecap][ilayer], lbhisttitle,
"LB",
"[Eta,Phi]", 834, 1, 2502, 100, 0, 100,
1121 m_mg->mongroup_ecA_shift);
1122 if (
sc.isFailure()) {
1123 ATH_MSG_ERROR(
"m_mdtoccvslb Failed to register histogram ");
1127 sc =
bookMDTHisto_OccVsLB(
m_mdtoccvslb[iecap][ilayer], lbhisttitle,
"LB",
"[Eta,Phi]", 834, 1, 2502, 100, 0, 100,
1128 m_mg->mongroup_ecC_shift);
1129 if (
sc.isFailure()) {
1130 ATH_MSG_ERROR(
"m_mdtoccvslb Failed to register histogram ");
1136 if (
sc.isFailure()) {
1137 ATH_MSG_ERROR(
"m_mdtoccvslb Failed to register histogram ");
1146 std::string lbCrate_histtitle =
"OccupancyVsLB_" + ecap[iecap] + crate[ilayer];
1147 if (iecap == enumBarrelA) {
1149 1, 100,
m_mg->mongroup_brA_shift);
1150 if (
sc.isFailure()) {
1151 ATH_MSG_ERROR(
"m_mdtoccvslb_by_crate Failed to register histogram ");
1154 }
else if (iecap == enumBarrelC) {
1156 0, 100,
m_mg->mongroup_brC_shift);
1157 if (
sc.isFailure()) {
1158 ATH_MSG_ERROR(
"m_mdtoccvslb_by_crate Failed to register histogram ");
1161 }
else if (iecap == enumEndCapA) {
1163 0, 100,
m_mg->mongroup_ecA_shift);
1164 if (
sc.isFailure()) {
1165 ATH_MSG_ERROR(
"m_mdtoccvslb_by_crate Failed to register histogram ");
1170 0, 100,
m_mg->mongroup_ecC_shift);
1171 if (
sc.isFailure()) {
1172 ATH_MSG_ERROR(
"m_mdtoccvslb_by_crate Failed to register histogram ");
1178 if (
sc.isFailure()) {
1179 ATH_MSG_ERROR(
"m_mdtoccvslb_by_crate Failed to register histogram ");
1183 std::string perSectors_summary_histtitle =
"OccupancyPerSectorVsLB";
1185 100,
m_mg->mongroup_overview_shift);
1186 if (
sc.isFailure()) {
1187 ATH_MSG_ERROR(
" mdtoccvslb_summaryPerSector Failed to register histogram ");
1196 std::string lbCrate_ontrack_histtitle =
"OccupancyVsLB_ontrack_" + ecap[iecap] + crate[ilayer];
1197 if (iecap == enumBarrelA) {
1199 834, 1, 2502, 100, 1, 100,
m_mg->mongroup_brA_shift);
1200 if (
sc.isFailure()) {
1201 ATH_MSG_ERROR(
"mdtoccvslb_ontrack_by_crate Failed to register histogram ");
1204 }
else if (iecap == enumBarrelC) {
1206 834, 1, 2502, 100, 0, 100,
m_mg->mongroup_brC_shift);
1207 if (
sc.isFailure()) {
1208 ATH_MSG_ERROR(
"mdtoccvslb_ontrack_by_crate Failed to register histogram ");
1211 }
else if (iecap == enumEndCapA) {
1213 834, 1, 2502, 100, 0, 100,
m_mg->mongroup_ecA_shift);
1214 if (
sc.isFailure()) {
1215 ATH_MSG_ERROR(
"mdtoccvslb_ontrack_by_crate Failed to register histogram ");
1220 834, 1, 2502, 100, 0, 100,
m_mg->mongroup_ecC_shift);
1221 if (
sc.isFailure()) {
1222 ATH_MSG_ERROR(
"mdtoccvslb_ontrack_by_crate Failed to register histogram ");
1228 if (
sc.isFailure()) {
1229 ATH_MSG_ERROR(
"mdtoccvslb_by_crate Failed to register histogram ");
1240 if (ilayer == 0 && iecap == 0) {
1245 "Counts/Chamber", 1, 0., 1.,
m_mg->mongroup_sectors_expert);
1250 if (!(iecap <= 1 && ilayer == enumExtra &&
1253 std::string title_MDTHitSummary =
"MDTHits_ADCCut_" + ecap[iecap] +
"_" +
layer[ilayer] +
"_StPhi" +
Phi;
1254 int max = (iecap < 2 && ilayer == 0) ? 11 : 7;
1255 int nbins = (iecap < 2 && ilayer == 0) ? 10 : 6;
1262 "Counts/Chamber",
nbins, 1,
max,
m_mg->mongroup_brA_hits_expert);
1265 "Counts/Chamber",
nbins, 1,
max,
m_mg->mongroup_brC_hits_expert);
1268 "Counts/Chamber",
nbins, 1,
max,
m_mg->mongroup_ecA_hits_expert);
1271 "Counts/Chamber",
nbins, 1,
max,
m_mg->mongroup_ecC_hits_expert);
1274 if (
sc.isFailure()) {
1275 ATH_MSG_ERROR(
"m_mdtChamberHits per eta and phi Failed to register histogram ");
1284 std::string title_MDTTDCSummary =
"MDTTDC_ADCCut_" + ecap[iecap] +
"_" +
layer[ilayer] +
"_StPhi" +
Phi;
1291 "number of entries", 100, 0, 2000.,
m_mg->mongroup_brA_tdc_expert);
1294 "number of entries", 100, 0, 2000.,
m_mg->mongroup_brC_tdc_expert);
1297 "number of entries", 100, 0, 2000.,
m_mg->mongroup_ecA_tdc_expert);
1300 "number of entries", 100, 0, 2000.,
m_mg->mongroup_ecC_tdc_expert);
1303 if (
sc.isFailure()) {
1304 ATH_MSG_ERROR(
"m_mdttdccut_sector per eta and phi Failed to register histogram ");
◆ cachedTubeLayerMax()
◆ cachedTubeMax()
◆ ChamberTubeNumberCorrection()
void MdtRawDataValAlg::ChamberTubeNumberCorrection |
( |
int & |
tubeNum, |
|
|
std::string_view |
hardware_name, |
|
|
int |
tubePos, |
|
|
int |
numLayers |
|
) |
| |
|
staticprivate |
Definition at line 929 of file MDTRawDataUtils.cxx.
931 if (hardware_name.substr(0, 4) ==
"BMS4" || hardware_name.substr(0, 4) ==
"BMS6") {
934 if (hardware_name.substr(0, 3) ==
"BIR" &&
numLayers <= 3) {
935 if (hardware_name.substr(5, 2) ==
"11" || hardware_name.substr(5, 2) ==
"15") {
936 if (hardware_name.substr(3, 1) ==
"1") tubeNum = tubePos + 6 +
numLayers * 30;
937 if (hardware_name.substr(3, 1) ==
"2") tubeNum = tubePos +
numLayers * 30;
938 if (hardware_name.substr(3, 1) ==
"4") tubeNum = tubePos + 3 +
numLayers * 30;
939 if (hardware_name.substr(3, 1) ==
"5") tubeNum = tubePos +
numLayers * 24;
942 if (hardware_name.substr(0, 3) ==
"BIR" && hardware_name.substr(3, 1) ==
"3") tubeNum = tubePos +
numLayers * 36;
943 if (hardware_name ==
"EEL1A05" || hardware_name ==
"EEL1C05")
◆ checkHists()
StatusCode ManagedMonitorToolBase::checkHists |
( |
bool |
calledFromFinalize | ) |
|
|
virtualinherited |
This implementation does nothing; equivalent functionality may be provided by procHists(...) with appropriate arguments.
Implements IMonitorToolBase.
Reimplemented in SCTHitsNoiseMonTool, SCTTracksMonTool, SCTLorentzMonTool, TileRawChannelMonTool, TileDigitsMonTool, DQTDataFlowMonTool, DQTNonCollBkg_ZDC, DQTGlobalWZFinderTool, DataQualityFatherMonTool, DQTDetSynchMonTool, DQTMuonIDTrackTool, TileCellNoiseMonTool, CscCalibMonToolBase, CscPrdValAlg, and CscRdoValAlg.
Definition at line 1901 of file ManagedMonitorToolBase.cxx.
1906 return StatusCode::SUCCESS;
◆ convertLWHists()
StatusCode ManagedMonitorToolBase::convertLWHists |
( |
| ) |
|
|
virtualinherited |
◆ CorrectLayerMax()
void MdtRawDataValAlg::CorrectLayerMax |
( |
const std::string & |
hardware_name, |
|
|
int & |
numLayers |
|
) |
| |
|
staticprivate |
◆ CorrectTubeMax()
void MdtRawDataValAlg::CorrectTubeMax |
( |
const std::string & |
hardware_name, |
|
|
int & |
numTubes |
|
) |
| |
|
staticprivate |
Definition at line 948 of file MDTRawDataUtils.cxx.
949 if (hardware_name ==
"EEL1A05" || hardware_name ==
"EEL1C05") numTubes = 48;
◆ declareGaudiProperty() [1/4]
specialization for handling Gaudi::Property<SG::VarHandleKeyArray>
Definition at line 170 of file AthCommonDataStore.h.
175 hndl.documentation());
◆ declareGaudiProperty() [2/4]
specialization for handling Gaudi::Property<SG::VarHandleKey>
Definition at line 156 of file AthCommonDataStore.h.
161 hndl.documentation());
◆ declareGaudiProperty() [3/4]
specialization for handling Gaudi::Property<SG::VarHandleBase>
Definition at line 184 of file AthCommonDataStore.h.
189 hndl.documentation());
◆ declareGaudiProperty() [4/4]
◆ declareProperty() [1/6]
Declare a new Gaudi property.
- Parameters
-
name | Name of the property. |
hndl | Object holding the property value. |
doc | Documentation string for the property. |
This is the version for types that derive from SG::VarHandleBase
. The property value object is put on the input and output lists as appropriate; then we forward to the base class.
Definition at line 245 of file AthCommonDataStore.h.
250 this->declare(hndl.
vhKey());
251 hndl.
vhKey().setOwner(
this);
◆ declareProperty() [2/6]
Declare a new Gaudi property.
- Parameters
-
name | Name of the property. |
hndl | Object holding the property value. |
doc | Documentation string for the property. |
This is the version for types that derive from SG::VarHandleKey
. The property value object is put on the input and output lists as appropriate; then we forward to the base class.
Definition at line 221 of file AthCommonDataStore.h.
◆ declareProperty() [3/6]
◆ declareProperty() [4/6]
Declare a new Gaudi property.
- Parameters
-
name | Name of the property. |
property | Object holding the property value. |
doc | Documentation string for the property. |
This is the generic version, for types that do not derive from SG::VarHandleKey
. It just forwards to the base class version of declareProperty
.
Definition at line 333 of file AthCommonDataStore.h.
◆ declareProperty() [5/6]
Declare a new Gaudi property.
- Parameters
-
name | Name of the property. |
property | Object holding the property value. |
doc | Documentation string for the property. |
This dispatches to either the generic declareProperty
or the one for VarHandle/Key/KeyArray.
Definition at line 352 of file AthCommonDataStore.h.
◆ declareProperty() [6/6]
◆ deregGraph()
StatusCode ManagedMonitorToolBase::deregGraph |
( |
TGraph * |
g | ) |
|
|
virtualinherited |
◆ deregHist() [1/2]
StatusCode ManagedMonitorToolBase::deregHist |
( |
LWHist * |
h | ) |
|
|
virtualinherited |
Definition at line 1826 of file ManagedMonitorToolBase.cxx.
1830 return StatusCode::FAILURE;
1833 if (
h->usingROOTBackend()) {
1834 h->setOwnsROOTHisto(
true);
1838 return StatusCode::SUCCESS;
◆ deregHist() [2/2]
StatusCode ManagedMonitorToolBase::deregHist |
( |
TH1 * |
h | ) |
|
|
virtualinherited |
◆ deregObject() [1/2]
StatusCode ManagedMonitorToolBase::deregObject |
( |
const std::string & |
objName, |
|
|
const MonGroup & |
group |
|
) |
| |
|
virtualinherited |
De-registers a TObject from the THistSvc, but does NOT delete the object.
(NB: LightWeight histograms are not even registered until readout).
Definition at line 1861 of file ManagedMonitorToolBase.cxx.
1874 return StatusCode::SUCCESS;
◆ deregObject() [2/2]
StatusCode ManagedMonitorToolBase::deregObject |
( |
const std::string & |
objName, |
|
|
const std::string & |
system, |
|
|
Interval_t |
interval |
|
) |
| |
|
virtualinherited |
De-registers a TObject from the THistSvc, but does NOT delete the object.
(NB: LightWeight histograms are not even registered until readout).
Definition at line 1851 of file ManagedMonitorToolBase.cxx.
◆ detStore()
◆ endOfEventsBlockFlag()
bool ManagedMonitorToolBase::endOfEventsBlockFlag |
( |
| ) |
const |
|
inlineprotectedinherited |
◆ endOfLowStatFlag()
bool ManagedMonitorToolBase::endOfLowStatFlag |
( |
| ) |
const |
|
inlineprotectedinherited |
◆ endOfLumiBlockFlag()
bool ManagedMonitorToolBase::endOfLumiBlockFlag |
( |
| ) |
const |
|
inlineprotectedinherited |
◆ endOfRunFlag()
bool ManagedMonitorToolBase::endOfRunFlag |
( |
| ) |
const |
|
inlineprotectedinherited |
◆ evtStore() [1/2]
◆ evtStore() [2/2]
◆ extraDeps_update_handler()
Add StoreName to extra input/output deps as needed.
use the logic of the VarHandleKey to parse the DataObjID keys supplied via the ExtraInputs and ExtraOuputs Properties to add the StoreName if it's not explicitly given
◆ fillHistograms()
StatusCode MdtRawDataValAlg::fillHistograms |
( |
| ) |
|
|
virtual |
An inheriting class should either override this function or fillHists().
Reimplemented from ManagedMonitorToolBase.
Definition at line 293 of file MdtRawDataValAlg.cxx.
305 if (
sc.isFailure()) {
310 if (
sc.isFailure()) {
315 if (
sc.isFailure()) {
319 ATH_MSG_DEBUG(
"MdtRawDataValAlg::MDT RawData Monitoring Histograms being filled");
327 if (muonRoIs.isPresent() && muonRoIs.isValid()) {
339 ATH_MSG_DEBUG(
"****** mdtContainer->size() : " << mdt_container->size());
342 int nColl_ADCCut = 0;
349 ATH_MSG_DEBUG(
"****** rpc->size() : " << rpc_container->size());
355 for (containerIt = rpc_container->begin(); containerIt != rpc_container->end(); ++containerIt) {
361 bool isNoiseBurstCandidate =
false;
363 for (MdtcontainerIt = mdt_container->begin(); MdtcontainerIt != mdt_container->end(); ++MdtcontainerIt) {
365 mdtCollection != (*MdtcontainerIt)->end(); ++mdtCollection) {
370 std::string
type =
"MDT";
371 std::string hardware_name;
373 std::map<std::string, float> evnt_hitsperchamber_map;
374 std::set<std::string> chambers_from_tracks;
381 for (
const auto*
const mu : *muons) {
388 if (!trk) {
continue; }
394 if (ntri_eta + n_phi == 0)
continue;
398 if (!rot_from_track)
continue;
403 m_idHelperSvc->mdtIdHelper().get_module_hash(rotId, mdt_idHash);
405 std::string mdt_chambername = mdt_chamber->
getName();
406 chambers_from_tracks.insert(mdt_chambername);
414 if (containerIt == mdt_container->end() || containerIt->empty())
continue;
417 bool isHit_above_ADCCut =
false;
419 for (
const auto* mdtCollection : **containerIt) {
422 float adc = mdtCollection->adc();
423 if (hardware_name.compare(0, 3,
"BMG") == 0)
adc /= 4.;
426 isHit_above_ADCCut =
true;
430 if (
sc.isSuccess()) {
438 if (
sc.isSuccess()) {
447 if (
sc.isSuccess()) {
448 ATH_MSG_DEBUG(
"Filled MDThistograms (chamber by chamber histos)");
455 if (iter_hitsperchamber == evnt_hitsperchamber_map.end()) {
456 evnt_hitsperchamber_map.insert(make_pair(hardware_name, 1));
458 iter_hitsperchamber->second += 1;
466 iter_hitsperchamber->second += 1;
473 if (isHit_above_ADCCut) nColl_ADCCut++;
476 int nHighOccChambers = 0;
479 for (iterstat = evnt_hitsperchamber_map.begin(); iterstat != evnt_hitsperchamber_map.end(); ++iterstat) {
480 std::string hardware_name = iterstat->first;
482 float nTubes = iter_tubesperchamber->second;
483 float hits = iterstat->second;
484 float occ =
hits / nTubes;
485 if (occ > 0.1) nHighOccChambers++;
489 else {
ATH_MSG_DEBUG(
"m_nummdtchamberswithHighOcc not in hist list!"); }
496 else {
ATH_MSG_DEBUG(
"m_mdteventscutLumi not in hist list!"); }
501 else {
ATH_MSG_DEBUG(
"m_mdteventscutLumi_big not in hist list!"); }
511 else {
ATH_MSG_DEBUG(
"m_mdteventsLumi_big not in hist list!"); }
518 else {
ATH_MSG_DEBUG(
"m_nummdtchamberswithhits not in hist list!"); }
523 else {
ATH_MSG_DEBUG(
"m_nummdtchamberswithhits_ADCCut not in hist list!"); }
531 if (
sc.isFailure()) {
◆ fillHists()
StatusCode ManagedMonitorToolBase::fillHists |
( |
| ) |
|
|
virtualinherited |
Calls fillHists( bool, bool, bool ); if an eventBlock,lumiBlock, or run has turned over, calls procHists( bool, bool, bool ) and bookHists( bool, bool, bool ).
Implements IMonitorToolBase.
Reimplemented in TileRawChannelMonTool, and TileDigitsMonTool.
Definition at line 792 of file ManagedMonitorToolBase.cxx.
798 msg(MSG::WARNING) <<
"ManagedMonitorToolBase::initialize() never called from reimplementation!" <<
endmsg;
809 newLumiBlock =
false;
815 newLowStatInterval =
false;
816 newMedStatInterval =
false;
817 newHigStatInterval =
false;
830 isNewEventsBlock =
true;
845 if( LBsLowStat*LBsMedStat*LBsHigStat == 0) {
846 msg(MSG::WARNING) <<
"zero LBs requested for interval" <<
endmsg;
898 std::vector<Interval_t> intervals_to_process;
903 for (
const auto interval: intervals_to_process) {
916 it.m_templateHist->LabelsInflate(
"X");
923 TH1* passedHist =
it.m_templateHist->GetCopyPassedHisto();
924 TH1* totalHist =
it.m_templateHist->GetCopyTotalHisto();
927 passedHist->LabelsInflate(
"X");
928 totalHist->LabelsInflate(
"X");
933 it.m_templateHist->SetPassedHistogram(*passedHist,
"f");
934 it.m_templateHist->SetTotalHistogram(*totalHist,
" ");
942 streamname->updateRunLB();
958 bool filterresult(
true);
961 for (; filterresult && (ifilter != filterend);
963 filterresult = (filterresult && (*ifilter)->accept());
993 if( LBsLowStat*LBsMedStat*LBsHigStat > 0) {
1001 return StatusCode::SUCCESS;
◆ fillLumiBlock()
StatusCode MdtRawDataValAlg::fillLumiBlock |
( |
| ) |
|
|
private |
◆ fillMDTHistograms()
Definition at line 1441 of file MdtRawDataValAlg.cxx.
1444 Identifier digcoll_id = (mdtCollection)->identify();
1445 IdentifierHash digcoll_idHash = (mdtCollection)->collectionHash();
1449 if (!
sc.isSuccess()) {
1450 ATH_MSG_ERROR(
"Could Not Retrieve MDTChamber w/ ID " << digcoll_idHash);
1454 std::string hardware_name =
chamber->getName();
1459 int mdtlayer =
m_idHelperSvc->mdtIdHelper().tubeLayer(digcoll_id);
1460 if (
m_idHelperSvc->mdtIdHelper().multilayer(digcoll_id) == 2) {
1461 if (hardware_name.at(1) ==
'I' && hardware_name.at(3) !=
'8')
1474 float tdc = mdtCollection->
tdc() * 25.0 / 32.0;
1476 if (hardware_name.compare(0, 3,
"BMG") == 0) tdc = mdtCollection->
tdc() * 0.2;
1477 float adc = mdtCollection->
adc();
1478 if (hardware_name.compare(0, 3,
"BMG") == 0)
adc /= 4.;
1486 int mdtMultLayer =
m_idHelperSvc->mdtIdHelper().multilayer(digcoll_id);
1490 if (
chamber->mdttdccut_ML1 && mdtMultLayer == 1) {
chamber->mdttdccut_ML1->Fill(tdc); }
1491 if (
chamber->mdttdccut_ML2 && mdtMultLayer == 2) {
chamber->mdttdccut_ML2->Fill(tdc); }
◆ fillMDTMaskedTubes()
Definition at line 1027 of file MDTRawDataUtils.cxx.
1031 return StatusCode::SUCCESS;
1034 std::set<Identifier> noisyTubes =
m_masked_tubes->getNoiseList(idHash);
1035 for (
auto digcoll_id : noisyTubes) {
1036 int mdtlayer =
m_idHelperSvc->mdtIdHelper().tubeLayer(digcoll_id);
1037 if (
m_idHelperSvc->mdtIdHelper().multilayer(digcoll_id) == 2) {
1038 if (hardware_name.at(1) ==
'I' && hardware_name.at(3) !=
'8')
1046 h->Fill(mdttube, 1);
1048 return StatusCode::SUCCESS;
◆ fillMDTOverviewHistograms()
StatusCode MdtRawDataValAlg::fillMDTOverviewHistograms |
( |
const Muon::MdtPrepData * |
mdtCollection, |
|
|
bool & |
isNoiseBurstCandidate |
|
) |
| |
|
privatevirtual |
Definition at line 1614 of file MdtRawDataValAlg.cxx.
1616 Identifier digcoll_id = (mdtCollection)->identify();
1624 if (MuonDetMgr ==
nullptr) {
1625 ATH_MSG_ERROR(
"Null pointer to the read MuonDetectorManager conditions object");
1626 return StatusCode::FAILURE;
1631 float mdt_tube_eta = mdtgPos.eta();
1632 float mdt_tube_x = mdtgPos.x();
1633 float mdt_tube_y = mdtgPos.y();
1634 float mdt_tube_z = mdtgPos.z();
1635 float mdt_tube_perp = mdtgPos.perp();
1637 float tdc = mdtCollection->
tdc() * 25.0 / 32.0;
1639 if (hardware_name.compare(0, 3,
"BMG") == 0) tdc = mdtCollection->
tdc() * 0.2;
1640 float adc = mdtCollection->
adc();
1641 if (hardware_name.compare(0, 3,
"BMG") == 0)
adc /= 4.;
1645 if (std::abs(mdt_tube_eta) > 0. && std::abs(mdt_tube_eta) < 0.9) {
1650 if (std::abs(mdt_tube_eta) > 0.9 && std::abs(mdt_tube_eta) < 1.2) {
1655 if (std::abs(mdt_tube_eta) > 1.2 && std::abs(mdt_tube_eta) < 2.7) {
1671 if (isNoiseBurstCandidate) {
1687 ATH_MSG_DEBUG(
"m_overalltdcHighOcc_ADCCut not in hist list!");
◆ fillMDTSummaryHistograms()
StatusCode MdtRawDataValAlg::fillMDTSummaryHistograms |
( |
const Muon::MdtPrepData * |
mdtCollection, |
|
|
std::set< std::string > |
chambers_from_tracks, |
|
|
bool & |
isNoiseBurstCandidate |
|
) |
| |
|
privatevirtual |
Definition at line 1512 of file MdtRawDataValAlg.cxx.
1515 Identifier digcoll_id = (mdtCollection)->identify();
1516 IdentifierHash digcoll_idHash = (mdtCollection)->collectionHash();
1520 if (!
sc.isSuccess()) {
1521 ATH_MSG_ERROR(
"Could Not Retrieve MDTChamber w/ ID " << digcoll_idHash);
1526 int ibarrel =
chamber->GetBarrelEndcapEnum();
1527 int iregion =
chamber->GetRegionEnum();
1528 int ilayer =
chamber->GetLayerEnum();
1529 int icrate =
chamber->GetCrate();
1532 std::string chambername =
chamber->getName();
1533 bool is_on_track =
false;
1534 for (
const auto&
ch : chambers_from_tracks) {
1535 if (chambername ==
ch) is_on_track =
true;
1537 bool isBIM = (chambername.at(2) ==
'M');
1538 float tdc = mdtCollection->
tdc() * 25.0 / 32.0;
1540 if (chambername.compare(0, 3,
"BMG") == 0) tdc = mdtCollection->
tdc() * 0.2;
1541 float adc = mdtCollection->
adc();
1542 if (chambername.compare(0, 3,
"BMG") == 0)
adc /= 4.;
1547 int mlayer_n =
m_idHelperSvc->mdtIdHelper().multilayer(digcoll_id);
1550 if (!isNoisy &&
adc > 0) {
1556 if (isNoiseBurstCandidate) {
1575 if (isNoiseBurstCandidate) {
1596 int crate_region = iregion;
1597 if (chambername.compare(0, 3,
"BEE") == 0 || (chambername.compare(0, 3,
"BIS") == 0 && (
stationEta == 7 ||
stationEta == 8))) {
1598 if (iregion == 0) crate_region = 2;
1599 if (iregion == 1) crate_region = 3;
◆ finalHists()
StatusCode ManagedMonitorToolBase::finalHists |
( |
| ) |
|
|
virtualinherited |
◆ get_bin_for_LB_crate_hist()
int MdtRawDataValAlg::get_bin_for_LB_crate_hist |
( |
int |
region, |
|
|
int |
layer, |
|
|
int |
phi, |
|
|
int |
eta, |
|
|
std::string_view |
chamber |
|
) |
| |
|
private |
Definition at line 1886 of file MDTRawDataUtils.cxx.
1889 if (region == 0 || region == 1) {
1891 if (
chamber.substr(0, 3) ==
"BIL")
1892 binNum = 2 *
eta + (
phi - 1) / 2 - 1;
1893 else if (
chamber.substr(0, 3) ==
"BIS")
1894 binNum = 12 + 2 *
eta + (
phi - 2) / 2 - 1;
1895 else if (
chamber.substr(0, 3) ==
"BME")
1897 else if (
chamber.substr(0, 3) ==
"BML")
1898 binNum = 25 + 2 *
eta + (
phi - 1) / 2 - 1;
1899 else if (
chamber.substr(0, 3) ==
"BMS")
1900 binNum = 37 + 2 *
eta + (
phi - 2) / 2 - 1;
1901 else if (
chamber.substr(0, 3) ==
"BOL")
1902 binNum = 49 + 2 *
eta + (
phi - 1) / 2 - 1;
1903 else if (
chamber.substr(0, 3) ==
"BOS")
1904 binNum = 61 + 2 *
eta + (
phi - 2) / 2 - 1;
1908 }
else if (crate == 2) {
1910 if (
chamber.substr(0, 3) ==
"BIL")
1911 binNum = 2 *
eta + (
phi - 5) / 2 - 1;
1912 else if (
chamber.substr(0, 3) ==
"BIS")
1913 binNum = 12 + 2 *
eta + (
phi - 6) / 2 - 1;
1914 else if (
chamber.substr(0, 3) ==
"BML")
1915 binNum = 24 + 2 *
eta + (
phi - 5) / 2 - 1;
1916 else if (
chamber.substr(0, 3) ==
"BMS")
1917 binNum = 36 + 2 *
eta + (
phi - 6) / 2 - 1;
1918 else if (
chamber.substr(0, 3) ==
"BOL")
1919 binNum = 48 + 2 *
eta + (
phi - 5) / 2 - 1;
1920 else if (
chamber.substr(0, 3) ==
"BOS")
1921 binNum = 60 + 2 *
eta + (
phi - 6) / 2 - 1;
1925 }
else if (crate == 3) {
1926 if (
chamber.substr(0, 3) ==
"BIL")
1928 else if (
chamber.substr(0, 3) ==
"BIM")
1930 else if (
chamber.substr(0, 3) ==
"BIR")
1932 else if (
chamber.substr(0, 3) ==
"BIS")
1933 binNum = 17 + 2 *
eta + (
phi - 10) / 2 - 1;
1934 else if (
chamber.substr(0, 3) ==
"BMF")
1935 binNum = 29 + (
eta + 1) / 2;
1936 else if (
chamber.substr(0, 3) ==
"BMG")
1937 binNum = 32 +
eta / 2;
1938 else if (
chamber.substr(0, 3) ==
"BML")
1939 binNum = 35 + 2 *
eta + (
phi - 9) / 2 - 1;
1940 else if (
chamber.substr(0, 3) ==
"BMS")
1942 else if (
chamber.substr(0, 3) ==
"BOF")
1943 binNum = 53 + (
eta + 1) / 2;
1944 else if (
chamber.substr(0, 4) ==
"BOG0" && region == 0)
1946 else if (
chamber.substr(0, 3) ==
"BOG")
1947 binNum = 58 +
eta / 2 - region;
1948 else if (
chamber.substr(0, 3) ==
"BOL")
1949 binNum = 62 + 2 *
eta + (
phi - 9) / 2 - 1 - region;
1950 else if (
chamber.substr(0, 3) ==
"BOS")
1951 binNum = 74 +
eta - region;
1955 }
else if (crate == 4) {
1957 if (
chamber.substr(0, 3) ==
"BIL")
1959 else if (
chamber.substr(0, 3) ==
"BIM")
1961 else if (
chamber.substr(0, 3) ==
"BIR")
1963 else if (
chamber.substr(0, 3) ==
"BIS")
1964 binNum = 17 + 2 *
eta + (
phi - 14) / 2 - 1;
1965 else if (
chamber.substr(0, 3) ==
"BMF")
1966 binNum = 29 + (
eta + 1) / 2;
1967 else if (
chamber.substr(0, 3) ==
"BMG")
1968 binNum = 32 +
eta / 2;
1969 else if (
chamber.substr(0, 3) ==
"BML" &&
eta < 6)
1970 binNum = 35 + 2 *
eta + (
phi - 13) / 2 - 1;
1971 else if (
chamber.substr(0, 7) ==
"BML6A15" ||
chamber.substr(0, 7) ==
"BML6C15")
1973 else if (
chamber.substr(0, 3) ==
"BMS")
1975 else if (
chamber.substr(0, 3) ==
"BOF")
1976 binNum = 52 + (
eta + 1) / 2;
1977 else if (
chamber.substr(0, 4) ==
"BOG0" && region == 0)
1979 else if (
chamber.substr(0, 3) ==
"BOG")
1980 binNum = 57 +
eta / 2 - region;
1981 else if (
chamber.substr(0, 3) ==
"BOL")
1982 binNum = 61 + 2 *
eta + (
phi - 13) / 2 - 1 - region;
1983 else if (
chamber.substr(0, 3) ==
"BOS")
1984 binNum = 74 +
eta - region;
1989 }
else if (region == 2 || region == 3) {
1991 if (
chamber.substr(0, 3) ==
"BEE")
1992 binNum = 2 *
eta + (
phi - 2) / 2 - 1;
1993 else if (
chamber.substr(0, 3) ==
"BIS")
1994 binNum = 4 + 2 * (
eta - 6) + (
phi - 2) / 2 - 1;
1995 else if (
chamber.substr(0, 3) ==
"EEL")
1996 binNum = 8 + 2 *
eta + (
phi - 1) / 2 - 1;
1997 else if (
chamber.substr(0, 3) ==
"EES")
1998 binNum = 12 + 2 *
eta + (
phi - 2) / 2 - 1;
1999 else if (
chamber.substr(0, 3) ==
"EIL" &&
eta < 5)
2000 binNum = 16 + 2 *
eta + (
phi - 1) / 2 - 1;
2001 else if (
chamber.substr(0, 3) ==
"EIL" &&
eta == 5)
2003 else if (
chamber.substr(0, 3) ==
"EIS")
2004 binNum = 25 + 2 *
eta + (
phi - 2) / 2 - 1;
2005 else if (
chamber.substr(0, 3) ==
"EML")
2006 binNum = 29 + 2 *
eta + (
phi - 1) / 2 - 1;
2007 else if (
chamber.substr(0, 3) ==
"EMS")
2008 binNum = 39 + 2 *
eta + (
phi - 2) / 2 - 1;
2009 else if (
chamber.substr(0, 3) ==
"EOL")
2010 binNum = 49 + 2 *
eta + (
phi - 1) / 2 - 1;
2011 else if (
chamber.substr(0, 3) ==
"EOS")
2012 binNum = 61 + 2 *
eta + (
phi - 2) / 2 - 1;
2016 }
else if (crate == 2) {
2017 if (
chamber.substr(0, 3) ==
"BEE")
2018 binNum = 2 *
eta + (
phi - 6) / 2 - 1;
2019 else if (
chamber.substr(0, 3) ==
"BIS")
2020 binNum = 4 + 2 * (
eta - 6) + (
phi - 6) / 2 - 1;
2021 else if (
chamber.substr(0, 4) ==
"EEL1")
2022 binNum = 9 + (
phi - 3) / 2 - 1;
2023 else if (
chamber.substr(0, 4) ==
"EEL2")
2025 else if (
chamber.substr(0, 3) ==
"EES")
2026 binNum = 11 + 2 *
eta + (
phi - 6) / 2 - 1;
2027 else if (
chamber.substr(0, 3) ==
"EIL")
2028 binNum = 15 + 2 *
eta + (
phi - 5) / 2 - 1;
2029 else if (
chamber.substr(0, 3) ==
"EIS")
2030 binNum = 23 + 2 *
eta + (
phi - 6) / 2 - 1;
2031 else if (
chamber.substr(0, 3) ==
"EML")
2032 binNum = 27 + 2 *
eta + (
phi - 5) / 2 - 1;
2033 else if (
chamber.substr(0, 3) ==
"EMS")
2034 binNum = 37 + 2 *
eta + (
phi - 6) / 2 - 1;
2035 else if (
chamber.substr(0, 3) ==
"EOL")
2036 binNum = 47 + 2 *
eta + (
phi - 5) / 2 - 1;
2037 else if (
chamber.substr(0, 3) ==
"EOS")
2038 binNum = 59 + 2 *
eta + (
phi - 6) / 2 - 1;
2042 }
else if (crate == 3) {
2044 if (
chamber.substr(0, 3) ==
"BEE")
2045 binNum = 2 *
eta + (
phi - 10) / 2 - 1;
2046 else if (
chamber.substr(0, 3) ==
"BIS")
2047 binNum = 4 + 2 * (
eta - 6) + (
phi - 10) / 2 - 1;
2048 else if (
chamber.substr(0, 3) ==
"EEL")
2049 binNum = 8 + 2 *
eta + (
phi - 9) / 2 - 1;
2050 else if (
chamber.substr(0, 3) ==
"EES")
2051 binNum = 12 + 2 *
eta + (
phi - 10) / 2 - 1;
2052 else if (
chamber.substr(0, 3) ==
"EIL" &&
eta < 5)
2053 binNum = 16 + 2 *
eta + (
phi - 9) / 2 - 1;
2054 else if (
chamber.substr(0, 4) ==
"EIL5")
2056 else if (
chamber.substr(0, 3) ==
"EIS")
2057 binNum = 25 + 2 *
eta + (
phi - 10) / 2 - 1;
2058 else if (
chamber.substr(0, 3) ==
"EML")
2059 binNum = 29 + 2 *
eta + (
phi - 9) / 2 - 1;
2060 else if (
chamber.substr(0, 3) ==
"EMS")
2061 binNum = 39 + 2 *
eta + (
phi - 10) / 2 - 1;
2062 else if (
chamber.substr(0, 3) ==
"EOL")
2063 binNum = 49 + 2 *
eta + (
phi - 9) / 2 - 1;
2064 else if (
chamber.substr(0, 3) ==
"EOS")
2065 binNum = 61 + 2 *
eta + (
phi - 10) / 2 - 1;
2069 }
else if (crate == 4) {
2070 if (
chamber.substr(0, 3) ==
"BEE")
2071 binNum = 2 *
eta + (
phi - 14) / 2 - 1;
2072 else if (
chamber.substr(0, 3) ==
"BIS")
2073 binNum = 4 + 2 * (
eta - 6) + (
phi - 14) / 2 - 1;
2074 else if (
chamber.substr(0, 3) ==
"EEL")
2075 binNum = 8 + 2 *
eta + (
phi - 13) / 2 - 1;
2076 else if (
chamber.substr(0, 3) ==
"EES")
2077 binNum = 12 + 2 *
eta + (
phi - 14) / 2 - 1;
2078 else if (
chamber.substr(0, 3) ==
"EIL")
2079 binNum = 16 + 2 *
eta + (
phi - 13) / 2 - 1;
2080 else if (
chamber.substr(0, 3) ==
"EIS")
2081 binNum = 24 + 2 *
eta + (
phi - 14) / 2 - 1;
2082 else if (
chamber.substr(0, 3) ==
"EML")
2083 binNum = 28 + 2 *
eta + (
phi - 13) / 2 - 1;
2084 else if (
chamber.substr(0, 3) ==
"EMS")
2085 binNum = 38 + 2 *
eta + (
phi - 14) / 2 - 1;
2086 else if (
chamber.substr(0, 3) ==
"EOL")
2087 binNum = 48 + 2 *
eta + (
phi - 13) / 2 - 1;
2088 else if (
chamber.substr(0, 3) ==
"EOS")
2089 binNum = 60 + 2 *
eta + (
phi - 14) / 2 - 1;
◆ get_bin_for_LB_hist()
int MdtRawDataValAlg::get_bin_for_LB_hist |
( |
int |
region, |
|
|
int |
layer, |
|
|
int |
phi, |
|
|
int |
eta, |
|
|
bool |
isBIM |
|
) |
| |
|
staticprivate |
Definition at line 1229 of file MDTRawDataUtils.cxx.
1230 if (region == 0 || region == 1) {
1234 if (
phi < 11 && !isBIM)
1235 return 18 * (
eta - 1) +
phi;
1236 else if ((
phi == 10 && isBIM) || (
phi < 15 && !isBIM))
1237 return 18 * (
eta - 1) +
phi + 1;
1239 return 18 * (
eta - 1) +
phi + 2;
1240 }
else if (
eta == 6)
1243 return 106 + (
phi / 2);
1245 return 114 + (
phi / 2);
1248 else if (
layer == 1) {
1252 if (
eta == 6 &&
phi > 11)
1253 return 16 * (
eta - 1) +
phi - 1;
1255 return 16 * (
eta - 1) +
phi;
1257 }
else if (
layer == 2 && region == 0) {
1258 if (
eta == 0 &&
phi == 11)
1260 else if (
eta == 0 &&
phi == 13)
1263 return 16 * (
eta - 1) +
phi + 2;
1264 else if (
eta == 7 &&
phi == 11)
1266 else if (
eta == 7 &&
phi == 13)
1268 else if (
eta == 8 &&
phi == 11)
1270 else if (
eta == 8 &&
phi == 13)
1272 }
else if (
layer == 3 && region == 0) {
1273 return 102 + 8 * (
eta - 1) + (
phi - 1) / 2;
1274 }
else if (
layer == 2 && region == 1) {
1276 return 16 * (
eta - 1) +
phi;
1277 else if (
eta == 7 &&
phi == 11)
1279 else if (
eta == 7 &&
phi == 13)
1281 else if (
eta == 8 &&
phi == 11)
1283 else if (
eta == 8 &&
phi == 13)
1285 }
else if (
layer == 3 && region == 1) {
1286 return 100 + 8 * (
eta - 1) + (
phi - 1) / 2;
1294 return 16 * (
eta - 1) +
phi;
1296 return 32 +
phi / 2;
1298 return 40 +
phi / 2;
1300 return 48 +
phi / 8;
1301 }
else if (
layer == 1) {
1302 return 16 * (
eta - 1) +
phi;
1303 }
else if (
layer == 2) {
1304 return 16 * (
eta - 1) +
phi;
1305 }
else if (
layer == 3 && region == 2) {
1306 if (
eta == 1 &&
phi == 2)
return 96;
1307 if (
eta == 1 &&
phi == 4)
return 97;
1308 if (
eta == 1 &&
phi == 10)
return 98;
1309 if (
eta == 1 &&
phi == 12)
return 99;
1310 if (
eta == 2 &&
phi == 2)
return 100;
1311 if (
eta == 2 &&
phi == 10)
return 101;
1312 if (
eta == 2 &&
phi == 12)
return 102;
1313 }
else if (
layer == 3 && region == 3) {
1315 return 80 + 16 *
eta +
phi;
1317 return 79 + 16 *
eta +
phi;
◆ get_nEvents()
unsigned int ManagedMonitorToolBase::get_nEvents |
( |
| ) |
const |
|
inlineprotectedinherited |
◆ get_procNEventsProp()
long ManagedMonitorToolBase::get_procNEventsProp |
( |
| ) |
const |
|
inlineprotectedinherited |
◆ getChamber()
◆ getChamberName() [1/2]
◆ getChamberName() [2/2]
◆ GetEventNum()
StatusCode MdtRawDataValAlg::GetEventNum |
( |
| ) |
|
|
private |
◆ getHist() [1/6]
◆ getHist() [2/6]
StatusCode ManagedMonitorToolBase::getHist |
( |
LWHist *& |
h, |
|
|
const std::string & |
hName, |
|
|
const std::string & |
system, |
|
|
Interval_t |
interval |
|
) |
| |
|
virtualinherited |
◆ getHist() [3/6]
StatusCode ManagedMonitorToolBase::getHist |
( |
TH1 *& |
h, |
|
|
const std::string & |
hName, |
|
|
const MonGroup & |
group |
|
) |
| |
|
virtualinherited |
Returns a TH1 via the pointer passed as the first argument.
The histogram name, without the leading path or stream name, must be given as the second argument.
Definition at line 1598 of file ManagedMonitorToolBase.cxx.
◆ getHist() [4/6]
StatusCode ManagedMonitorToolBase::getHist |
( |
TH1 *& |
h, |
|
|
const std::string & |
hName, |
|
|
const std::string & |
system, |
|
|
Interval_t |
interval |
|
) |
| |
|
virtualinherited |
Returns a TH1 via the pointer passed as the first argument.
The histogram name, without the leading path or stream name, must be given as the second argument.
Definition at line 1588 of file ManagedMonitorToolBase.cxx.
◆ getHist() [5/6]
StatusCode ManagedMonitorToolBase::getHist |
( |
TH2 *& |
h, |
|
|
const std::string & |
hName, |
|
|
const MonGroup & |
group |
|
) |
| |
|
virtualinherited |
Returns a TH2 via the pointer passed as the first argument.
The histogram name, without the leading path or stream name, must be given as the second argument.
Definition at line 1640 of file ManagedMonitorToolBase.cxx.
◆ getHist() [6/6]
StatusCode ManagedMonitorToolBase::getHist |
( |
TH2 *& |
h, |
|
|
const std::string & |
hName, |
|
|
const std::string & |
system, |
|
|
Interval_t |
interval |
|
) |
| |
|
virtualinherited |
Returns a TH2 via the pointer passed as the first argument.
The histogram name, without the leading path or stream name, must be given as the second argument.
Definition at line 1630 of file ManagedMonitorToolBase.cxx.
◆ getNewStreamNameFcn()
|
protectedvirtualinherited |
◆ GetTimingInfo()
StatusCode MdtRawDataValAlg::GetTimingInfo |
( |
| ) |
|
|
private |
◆ GetTriggerType()
int MdtRawDataValAlg::GetTriggerType |
( |
| ) |
|
|
inlineprivate |
◆ GetTubeMax()
int MdtRawDataValAlg::GetTubeMax |
( |
const Identifier & |
digcoll_id, |
|
|
std::string_view |
hardware_name |
|
) |
| |
|
private |
Definition at line 1096 of file MDTRawDataUtils.cxx.
1097 int numtubes =
m_idHelperSvc->mdtIdHelper().tubeMax(digcoll_id);
1098 int numlayers =
m_idHelperSvc->mdtIdHelper().tubeLayerMax(digcoll_id);
1099 int numML =
m_idHelperSvc->mdtIdHelper().numberOfMultilayers(digcoll_id);
1100 int tubeMax = numtubes * numlayers * numML;
1102 if (hardware_name.substr(0, 4) ==
"BIS8")
1104 if (hardware_name.substr(0, 4) ==
"BIR5")
1107 if (hardware_name.substr(0, 4) ==
"BIR2" || hardware_name.substr(0, 4) ==
"BIR4")
1110 if (hardware_name.substr(0, 4) ==
"BIR3")
tubeMax = 36 * 4 + 36 * 4;
1111 if (hardware_name.substr(0, 4) ==
"BIR1")
1114 if (hardware_name.substr(0, 4) ==
"BMS4" || hardware_name.substr(0, 4) ==
"BMS6")
1117 if (hardware_name ==
"EEL1A05" || hardware_name ==
"EEL1C05")
tubeMax = 48 * 3 + 48 * 3;
1118 if (hardware_name.substr(0, 3) ==
"BME")
tubeMax = 546;
1120 std::string hardware_namestr(hardware_name);
1126 ATH_MSG_WARNING(
"GetTubeMax: computing tubes per chamber twice for this chamber!");
◆ handleEvent_effCalc()
Definition at line 1711 of file MdtRawDataValAlg.cxx.
1714 std::string
type =
"MDT";
1715 std::set<TubeTraversedBySegment, TubeTraversedBySegment_cmp> store_effTubes;
1716 std::set<Identifier> store_ROTs;
1721 if (MuonDetMgr ==
nullptr) {
1722 ATH_MSG_ERROR(
"Null pointer to the read MuonDetectorManager conditions object");
1723 return StatusCode::FAILURE;
1727 for (
const auto* segm : *segms) {
1739 std::vector<Identifier> ROTs_chamber;
1740 std::vector<int> ROTs_tube;
1741 std::vector<int> ROTs_L;
1742 std::vector<int> ROTs_ML;
1743 std::vector<float> ROTs_DR;
1744 std::vector<float> ROTs_DRerr;
1745 std::vector<float> ROTs_DT;
1746 for (
unsigned int irot = 0; irot <
segment->numberOfContainedROTs(); irot++) {
1753 m_idHelperSvc->mdtIdHelper().get_module_hash(tmpid, idHash);
1755 std::string chambername =
chamber->getName();
1757 if (chambername.compare(0, 3,
"BMG") == 0)
adc /= 4.;
1759 if (store_ROTs.insert(tmpid).second) {
1763 if (chambername.compare(0, 3,
"BMG") == 0) tdc = mrot->
prepRawData()->
tdc() * 0.2;
1765 int iregion =
chamber->GetRegionEnum();
1766 int ilayer =
chamber->GetLayerEnum();
1767 int statphi =
chamber->GetStationPhi();
1768 int ibarrel_endcap =
chamber->GetBarrelEndcapEnum();
1773 ATH_MSG_ERROR(
"MDT StationPhi: " << statphi <<
" Is too high. Chamber name: " <<
chamber->getName());
1784 chamber->GetMDTHitsPerChamber_IMO_Bin(), 1.);
1789 int mdtMultLayer =
m_idHelperSvc->mdtIdHelper().multilayer(tmpid);
1790 if (
chamber->mdtadc_onSegm_ML1 && mdtMultLayer == 1) {
chamber->mdtadc_onSegm_ML1->Fill(
adc); }
1791 if (
chamber->mdtadc_onSegm_ML2 && mdtMultLayer == 2) {
chamber->mdtadc_onSegm_ML2->Fill(
adc); }
1796 ROTs_chamber.push_back(tmpid);
1797 ROTs_ML.push_back(
m_idHelperSvc->mdtIdHelper().multilayer(tmpid));
1798 ROTs_L.push_back(
m_idHelperSvc->mdtIdHelper().tubeLayer(tmpid));
1799 ROTs_tube.push_back(
m_idHelperSvc->mdtIdHelper().tube(tmpid));
1811 std::vector<Identifier> unique_chambers;
1812 std::vector<std::vector<int> > unique_chambers_ML;
1813 for (
unsigned i = 0;
i < ROTs_chamber.size();
i++) {
1814 bool isUnique =
true;
1815 for (
unsigned j = 0; j < unique_chambers.size(); j++) {
1818 if (!
AinB(ROTs_ML.at(
i), unique_chambers_ML.at(j))) unique_chambers_ML.at(j).push_back(ROTs_ML.at(
i));
1823 unique_chambers.push_back(ROTs_chamber.at(
i));
1824 std::vector<int> tmp_ML;
1825 tmp_ML.push_back(ROTs_ML.at(
i));
1826 unique_chambers_ML.push_back(tmp_ML);
1833 std::vector<Identifier> traversed_station_id;
1834 std::vector<int> traversed_tube;
1835 std::vector<int> traversed_L;
1836 std::vector<int> traversed_ML;
1837 std::vector<float> traversed_distance;
1838 for (
unsigned i_chamber = 0; i_chamber < unique_chambers.size(); i_chamber++) {
1839 Identifier station_id = unique_chambers.at(i_chamber);
1854 for (
int ML : unique_chambers_ML.at(i_chamber)) {
1856 hardware_name.substr(0, 3),
m_idHelperSvc->mdtIdHelper().stationEta(station_id),
1857 m_idHelperSvc->mdtIdHelper().stationPhi(station_id), ML, 1, 1);
1859 auto [tubeLayerMin, tubeLayerMax] =
m_idHelperSvc->mdtIdHelper().tubeLayerMinMax(newId);
1862 for (
int i_tube = tubeMin; i_tube <=
tubeMax; i_tube++) {
1863 for (
int i_layer = tubeLayerMin; i_layer <= tubeLayerMax; i_layer++) {
1869 if (
std::find((myIt->second).begin(), (myIt->second).end(), tubeId) != (myIt->second).end()) {
1881 traversed_station_id.push_back(station_id);
1882 traversed_tube.push_back(i_tube);
1883 traversed_L.push_back(i_layer);
1884 traversed_ML.push_back(ML);
1885 traversed_distance.push_back(segment_track.
signDistFrom(tube_track));
1895 if (traversed_tube.size() < 20) {
1897 for (
unsigned k = 0;
k < traversed_tube.size();
k++) {
1898 std::string hardware_name =
getChamberName(traversed_station_id.at(
k));
1901 m_idHelperSvc->mdtIdHelper().get_module_hash(traversed_station_id.at(
k), idHash);
1904 if (!
sc.isSuccess()) {
1905 ATH_MSG_ERROR(
"Could Not Retrieve MDTChamber w/ ID " << idHash);
1909 bool hit_flag =
false;
1910 for (
unsigned j = 0; j < ROTs_tube.size(); j++) {
1911 if ((
getChamberName(ROTs_chamber.at(j)) == hardware_name) && (traversed_tube.at(
k) == ROTs_tube.at(j)) &&
1912 (traversed_L.at(
k) == ROTs_L.at(j)) &&
1913 (traversed_ML.at(
k) == ROTs_ML.at(j))) {
1915 if (
chamber->mdt_DRvsDT)
chamber->mdt_DRvsDT->Fill(ROTs_DR.at(j), ROTs_DT.at(j));
1917 chamber->mdt_DRvsDRerr->Fill(ROTs_DR.at(j), ROTs_DRerr.at(j));
1918 if (
chamber->mdt_DRvsSegD)
chamber->mdt_DRvsSegD->Fill(ROTs_DR.at(j), traversed_distance.at(
k));
1923 hardware_name.substr(0, 3),
m_idHelperSvc->mdtIdHelper().stationEta(traversed_station_id.at(
k)),
1924 m_idHelperSvc->mdtIdHelper().stationPhi(traversed_station_id.at(
k)), traversed_ML.at(
k), 1, 1);
1925 int tubeLayerMax =
m_idHelperSvc->mdtIdHelper().tubeLayerMax(newId);
1926 m_idHelperSvc->mdtIdHelper().get_module_hash(newId, idHash);
1929 int mdtlayer = ((traversed_L.at(
k) - 1) + (traversed_ML.at(
k) - 1) * tubeLayerMax);
1931 int ibin = traversed_tube.at(
k) + mdtlayer *
tubeMax;
1939 it = store_effTubes.find(tmp_effTube_Hit);
1940 if (hit_flag || (
it == store_effTubes.end()))
1941 store_effTubes.insert(tmp_effTube);
1942 it = store_effTubes.find(tmp_effTube_noHit);
1943 if (hit_flag && (
it != store_effTubes.end()))
1944 store_effTubes.erase(
it);
1954 for (
const auto& store_effTube : store_effTubes) {
1958 if (!
sc.isSuccess()) {
1959 ATH_MSG_ERROR(
"Could Not Retrieve MDTChamber w/ ID " << store_effTube.idHash);
1962 if (
chamber->mdt_effEntries)
chamber->mdt_effEntries->Fill(store_effTube.tubeBin);
1963 if (store_effTube.isHit &&
chamber->mdt_effCounts) {
chamber->mdt_effCounts->Fill(store_effTube.tubeBin); }
◆ HasTrigBARREL()
bool MdtRawDataValAlg::HasTrigBARREL |
( |
| ) |
|
|
inlineprivate |
◆ HasTrigENDCAP()
bool MdtRawDataValAlg::HasTrigENDCAP |
( |
| ) |
|
|
inlineprivate |
◆ initDeadChannels()
Definition at line 1970 of file MdtRawDataValAlg.cxx.
1971 PVConstLink cv = mydetEl->getMaterialGeom();
1972 int nGrandchildren = cv->getNChildVols();
1973 if (nGrandchildren <= 0)
return;
1975 std::vector<int> tubes;
1976 geoGetIds([&](
int id) { tubes.push_back(
id); }, &*cv);
1985 std::vector<Identifier> deadTubes;
1990 int want_id =
layer * maxNTubesPerLayer +
tube;
1991 if (
it != tubes.end() && *
it == want_id) {
1994 it = std::lower_bound(tubes.begin(), tubes.end(), want_id);
1995 if (
it != tubes.end() && *
it == want_id) {
1999 deadTubes.push_back(deadTubeId);
2001 <<
"), name(" <<
name <<
"), multilayerId(" << ml <<
") and identifier "
2002 << deadTubeId <<
" .");
2007 std::sort(deadTubes.begin(), deadTubes.end());
◆ initialize()
StatusCode MdtRawDataValAlg::initialize |
( |
| ) |
|
|
virtual |
Reimplemented from ManagedMonitorToolBase.
Definition at line 121 of file MdtRawDataValAlg.cxx.
126 for (
unsigned int i = 0;
i < 4;
i++) {
142 if (
i == 3)
continue;
146 if (
i == 2)
continue;
163 ManagedMonitorToolBase::MgmtAttr_t::ATTRIB_UNMANAGED,
"");
166 ManagedMonitorToolBase::MgmtAttr_t::ATTRIB_UNMANAGED,
"_lowStat");
195 std::string managerName =
"Muon";
198 ATH_MSG_DEBUG(
" Found the MuonGeoModel Manager from the Detector Store");
202 ATH_MSG_INFO(
"Processing configuration for layouts with BMG chambers.");
219 return StatusCode::SUCCESS;
◆ inputHandles()
Return this algorithm's input handles.
We override this to include handle instances from key arrays if they have not yet been declared. See comments on updateVHKA.
◆ interfaceID()
static const InterfaceID& IMonitorToolBase::interfaceID |
( |
| ) |
|
|
inlinestaticinherited |
◆ intervalEnumToString()
std::string ManagedMonitorToolBase::intervalEnumToString |
( |
Interval_t |
interval | ) |
|
|
staticinherited |
Converts a LevelOfDetail_t to a string of the same name.
Converts a string to the corresponding LevelOfDetail_t. Converts a Interval_t to a string of the same name.
Definition at line 587 of file ManagedMonitorToolBase.cxx.
590 std::string
str(
"file");
◆ intervalStringToEnum()
Converts a string to the corresponding Interval_t.
Definition at line 629 of file ManagedMonitorToolBase.cxx.
632 std::string lcstr( strToLower(
str) );
636 else if( lcstr ==
"fill" )
638 else if( lcstr ==
"run" )
640 else if( lcstr ==
"lowStat" )
642 else if( lcstr ==
"medStat" )
644 else if( lcstr ==
"higStat" )
646 else if( lcstr ==
"lumiBlock" )
648 else if( lcstr ==
"eventsBlock" )
650 else if( lcstr ==
"file" )
656 if(
sc.isSuccess() ) {
657 MsgStream
log(
ms,
"ManagedMonitorToolBase::intervalStringToEnum()" );
658 log << MSG::WARNING <<
"Unknown ManagedMonitorToolBase::Interval_t \""
659 <<
str <<
"\", returning \"file\"" <<
endmsg;
◆ isATLASReady()
bool MdtRawDataValAlg::isATLASReady |
( |
| ) |
const |
|
inlineprivate |
◆ lbAverageInteractionsPerCrossing()
float ManagedMonitorToolBase::lbAverageInteractionsPerCrossing |
( |
const EventContext & |
ctx = Gaudi::Hive::currentContext() | ) |
const |
|
virtualinherited |
Average mu, i.e.
<mu>
Definition at line 1923 of file ManagedMonitorToolBase.cxx.
1928 return lumi->lbAverageInteractionsPerCrossing();
1931 ATH_MSG_DEBUG(
"Warning: lbAverageInteractionsPerCrossing() - luminosity tools are not retrieved or turned on (i.e. EnableLumi = False)");
◆ lbAverageLivefraction()
float ManagedMonitorToolBase::lbAverageLivefraction |
( |
const EventContext & |
ctx = Gaudi::Hive::currentContext() | ) |
const |
|
virtualinherited |
Average luminosity livefraction.
Definition at line 1992 of file ManagedMonitorToolBase.cxx.
2000 return live->lbAverageLiveFraction();
2003 ATH_MSG_DEBUG(
"Warning: lbAverageLivefraction() - luminosity not availble (i.e. EnableLumi = False)");
◆ lbAverageLuminosity()
float ManagedMonitorToolBase::lbAverageLuminosity |
( |
const EventContext & |
ctx = Gaudi::Hive::currentContext() | ) |
const |
|
virtualinherited |
Average luminosity (in ub-1 s-1 => 10^30 cm-2 s-1)
Definition at line 1959 of file ManagedMonitorToolBase.cxx.
1964 return lumi->lbAverageLuminosity();
1967 ATH_MSG_DEBUG(
"Warning: lbAverageLuminosity() - luminosity tools are not retrieved or turned on (i.e. EnableLumi = False)");
◆ lbDuration()
double ManagedMonitorToolBase::lbDuration |
( |
const EventContext & |
ctx = Gaudi::Hive::currentContext() | ) |
const |
|
virtualinherited |
Luminosity block time (in seconds)
Definition at line 2046 of file ManagedMonitorToolBase.cxx.
2054 return dur->lbDuration();
2057 ATH_MSG_DEBUG(
"Warning: lbDuration() - luminosity tools are not retrieved or turned on (i.e. EnableLumi = False)");
◆ lbInteractionsPerCrossing()
float ManagedMonitorToolBase::lbInteractionsPerCrossing |
( |
const EventContext & |
ctx = Gaudi::Hive::currentContext() | ) |
const |
|
virtualinherited |
Instantaneous number of interactions, i.e.
mu
Definition at line 1939 of file ManagedMonitorToolBase.cxx.
1944 float muToLumi =
lumi->muToLumi();
1946 return lumi->lbLuminosityPerBCIDVector().at (ctx.eventID().bunch_crossing_id()) / muToLumi;
1951 ATH_MSG_DEBUG(
"Warning: lbInteractionsPerCrossing() - luminosity tools are not retrieved or turned on (i.e. EnableLumi = False)");
◆ lbLuminosityPerBCID()
float ManagedMonitorToolBase::lbLuminosityPerBCID |
( |
const EventContext & |
ctx = Gaudi::Hive::currentContext() | ) |
const |
|
virtualinherited |
Instantaneous luminosity.
Definition at line 1975 of file ManagedMonitorToolBase.cxx.
1980 return lumi->lbLuminosityPerBCIDVector().at (ctx.eventID().bunch_crossing_id());
1983 ATH_MSG_DEBUG(
"Warning: lbLuminosityPerBCID() - luminosity tools are not retrieved or turned on (i.e. EnableLumi = False)");
◆ lbLumiWeight()
double ManagedMonitorToolBase::lbLumiWeight |
( |
const EventContext & |
ctx = Gaudi::Hive::currentContext() | ) |
const |
|
virtualinherited |
Average Integrated Luminosity Live Fraction.
Definition at line 2030 of file ManagedMonitorToolBase.cxx.
2037 ATH_MSG_DEBUG(
"Warning: lbLumiWeight() - luminosity tools are not retrieved or turned on (i.e. EnableLumi = False)");
◆ livefractionPerBCID()
float ManagedMonitorToolBase::livefractionPerBCID |
( |
const EventContext & |
ctx = Gaudi::Hive::currentContext() | ) |
const |
|
virtualinherited |
Livefraction per bunch crossing ID.
Definition at line 2011 of file ManagedMonitorToolBase.cxx.
2019 return live->l1LiveFractionVector().at (ctx.eventID().bunch_crossing_id());
2022 ATH_MSG_DEBUG(
"Warning: livefractionPerBCID() - luminosity retrieved available (i.e. EnableLumi = False)");
◆ mdtchamberId()
void MdtRawDataValAlg::mdtchamberId |
( |
| ) |
|
|
private |
Definition at line 1054 of file MDTRawDataUtils.cxx.
1057 std::vector<Identifier>::const_iterator idfirst =
m_idHelperSvc->mdtIdHelper().module_begin();
1058 std::vector<Identifier>::const_iterator idlast =
m_idHelperSvc->mdtIdHelper().module_end();
1063 for (std::vector<Identifier>::const_iterator
i = idfirst;
i != idlast; ++
i) {
1065 int gethash_code =
m_idHelperSvc->mdtIdHelper().get_hash(Id, Idhash, &mdtModuleContext);
1069 std::string extid =
m_idHelperSvc->mdtIdHelper().show_to_string(Id);
1071 if (gethash_code == 0) {
◆ mezzmdt()
int MdtRawDataValAlg::mezzmdt |
( |
Identifier |
digcoll_id | ) |
|
|
private |
Definition at line 1081 of file MDTRawDataUtils.cxx.
1082 int TotmezzTubes = 8;
1083 int tubeLayerMax =
m_idHelperSvc->mdtIdHelper().tubeLayerMax(digcoll_id);
1085 if (tubeLayerMax == 4) TotmezzTubes = 6;
1086 int Imezz = (
int)((
m_idHelperSvc->mdtIdHelper().tube(digcoll_id) - 1) / TotmezzTubes) +
1087 (
int)((
m_idHelperSvc->mdtIdHelper().multilayer(digcoll_id) - 1) *
◆ MMTB_DEPRECATED() [1/11]
ManagedMonitorToolBase::MMTB_DEPRECATED |
( |
endOfEventsBlock |
| ) |
|
|
inherited |
◆ MMTB_DEPRECATED() [2/11]
ManagedMonitorToolBase::MMTB_DEPRECATED |
( |
endOfLowStat |
| ) |
|
|
inherited |
◆ MMTB_DEPRECATED() [3/11]
ManagedMonitorToolBase::MMTB_DEPRECATED |
( |
endOfLumiBlock |
| ) |
|
|
inherited |
◆ MMTB_DEPRECATED() [4/11]
ManagedMonitorToolBase::MMTB_DEPRECATED |
( |
endOfRun |
| ) |
|
|
inherited |
◆ MMTB_DEPRECATED() [5/11]
ManagedMonitorToolBase::MMTB_DEPRECATED |
( |
newEventsBlock |
| ) |
|
|
inherited |
◆ MMTB_DEPRECATED() [6/11]
ManagedMonitorToolBase::MMTB_DEPRECATED |
( |
newHigStatInterval |
| ) |
|
|
inherited |
◆ MMTB_DEPRECATED() [7/11]
ManagedMonitorToolBase::MMTB_DEPRECATED |
( |
newLowStat |
| ) |
|
|
inherited |
◆ MMTB_DEPRECATED() [8/11]
ManagedMonitorToolBase::MMTB_DEPRECATED |
( |
newLowStatInterval |
| ) |
|
|
inherited |
◆ MMTB_DEPRECATED() [9/11]
ManagedMonitorToolBase::MMTB_DEPRECATED |
( |
newLumiBlock |
| ) |
|
|
inherited |
◆ MMTB_DEPRECATED() [10/11]
ManagedMonitorToolBase::MMTB_DEPRECATED |
( |
newMedStatInterval |
| ) |
|
|
inherited |
◆ MMTB_DEPRECATED() [11/11]
ManagedMonitorToolBase::MMTB_DEPRECATED |
( |
newRun |
| ) |
|
|
inherited |
◆ msg() [1/2]
◆ msg() [2/2]
◆ msgLvl()
◆ newEventsBlockFlag()
bool ManagedMonitorToolBase::newEventsBlockFlag |
( |
| ) |
const |
|
inlineprotectedinherited |
◆ newHigStatIntervalFlag()
bool ManagedMonitorToolBase::newHigStatIntervalFlag |
( |
| ) |
const |
|
inlineprotectedinherited |
◆ newLowStatFlag()
bool ManagedMonitorToolBase::newLowStatFlag |
( |
| ) |
const |
|
inlineprotectedinherited |
◆ newLowStatIntervalFlag()
bool ManagedMonitorToolBase::newLowStatIntervalFlag |
( |
| ) |
const |
|
inlineprotectedinherited |
◆ newLumiBlockFlag()
bool ManagedMonitorToolBase::newLumiBlockFlag |
( |
| ) |
const |
|
inlineprotectedinherited |
◆ newMedStatIntervalFlag()
bool ManagedMonitorToolBase::newMedStatIntervalFlag |
( |
| ) |
const |
|
inlineprotectedinherited |
◆ newRunFlag()
bool ManagedMonitorToolBase::newRunFlag |
( |
| ) |
const |
|
inlineprotectedinherited |
◆ outputHandles()
Return this algorithm's output handles.
We override this to include handle instances from key arrays if they have not yet been declared. See comments on updateVHKA.
◆ parseList()
StatusCode ManagedMonitorToolBase::parseList |
( |
const std::string & |
line, |
|
|
std::vector< std::string > & |
result |
|
) |
| |
|
protectedinherited |
◆ preSelector()
bool ManagedMonitorToolBase::preSelector |
( |
| ) |
|
|
virtualinherited |
◆ procHistograms()
StatusCode MdtRawDataValAlg::procHistograms |
( |
| ) |
|
|
virtual |
An inheriting class should either override this function or finalHists().
Fills counts per hardware chambers in phi slice plot
Reimplemented from ManagedMonitorToolBase.
Definition at line 540 of file MdtRawDataValAlg.cxx.
591 for (
int iecap = 0; iecap < 4; iecap++) {
592 for (
int ilayer = 0; ilayer < 4; ilayer++) {
596 if (iecap == enumBarrelA)
598 else if (iecap == enumBarrelC)
600 else if (iecap == enumEndCapA)
605 if (
sc.isFailure()) {
606 ATH_MSG_ERROR(
"mdthitspermultilayer Failed to register histogram");
609 ATH_MSG_DEBUG(
"Inside LowStat Loop, iecap=" << iecap <<
", ilayer=" << ilayer);
614 if (ilayer == 0 && ((iecap == 0 || iecap == 2))) {
619 ATH_MSG_DEBUG(
"Bookint m_mdthitsperchamber_onSegm_InnerMiddleOuterLumi");
621 m_mg->mongroup_overview_recoMon);
623 if (
sc.isFailure()) {
624 ATH_MSG_ERROR(
"mdthitsperchamber_InnerMiddleOuter Failed to register histogram");
665 ATH_MSG_DEBUG(
"********Reached Last Event in MdtRawDataValAlg !!!");
675 const char* chambername_char = iterstat->first.c_str();
676 float hits = iterstat->second;
681 if (iterstat->first.length() < 7)
continue;
682 c[0] = chambername_char[5];
683 c[1] = chambername_char[6];
684 if (!(
c[0] ==
'0' ||
c[0] ==
'1') ||
c[1] <
'0' ||
c[1] >
'9')
continue;
686 if (i < 0 || i > 15)
continue;
689 if (
h)
h->Fill(chambername_char,
hits);
695 for (
int j = 0; j <= 15; ++j) {
◆ putBox()
void MdtRawDataValAlg::putBox |
( |
TH2 * |
h, |
|
|
float |
x1, |
|
|
float |
y1, |
|
|
float |
x2, |
|
|
float |
y2 |
|
) |
| |
|
staticprivate |
Definition at line 1185 of file MDTRawDataUtils.cxx.
1186 TBox* box =
new TBox(
x1,
y1 * 0.5,
x2,
y2 * 0.5);
1192 box->SetFillColor(kGray);
1193 box->SetLineColor(kGray);
1197 (
h->GetListOfFunctions())->
Add(box);
◆ putLine()
void MdtRawDataValAlg::putLine |
( |
TH2 * |
h, |
|
|
float |
x1, |
|
|
float |
y1, |
|
|
float |
x2, |
|
|
float |
y2, |
|
|
Color_t |
c = kBlack |
|
) |
| |
|
staticprivate |
◆ regEfficiency()
StatusCode ManagedMonitorToolBase::regEfficiency |
( |
TEfficiency * |
e, |
|
|
const MonGroup & |
group |
|
) |
| |
|
virtualinherited |
Registers a TEfficiency to be included in the output stream using logical parameters that describe the plot.
Definition at line 1648 of file ManagedMonitorToolBase.cxx.
1650 return StatusCode::FAILURE;
1652 TGraph*
g =
reinterpret_cast<TGraph*
>(
e);
1653 std::string
name =
e->GetName();
1659 ATH_MSG_WARNING(
"HEY! Attempting to register "<<
name<<
" as a per-LB histogram, but not setting the merge algorithm! Use \"merge\", at least.");
1666 return StatusCode::FAILURE;
1676 std::string genericName = NoOutputStream().getStreamName(
this,
group,
name );
1683 if (
smd != StatusCode::SUCCESS)
1684 return StatusCode::FAILURE;
◆ regGraph() [1/2]
StatusCode ManagedMonitorToolBase::regGraph |
( |
TGraph * |
g, |
|
|
const MonGroup & |
group |
|
) |
| |
|
virtualinherited |
Registers a TGraph to be included in the output stream using logical parameters that describe the graph.
Definition at line 1702 of file ManagedMonitorToolBase.cxx.
1706 return StatusCode::FAILURE;
1719 return StatusCode::FAILURE;
1722 std::string
name =
g->GetName();
1730 std::string gName =
g->GetName();
1733 std::string genericName = NoOutputStream().getStreamName(
this,
group, gName );
1741 if (
smd != StatusCode::SUCCESS)
return StatusCode::FAILURE;
◆ regGraph() [2/2]
Registers a TGraph to be included in the output stream using logical parameters that describe the graph.
Definition at line 1692 of file ManagedMonitorToolBase.cxx.
◆ regHist() [1/4]
Definition at line 1522 of file ManagedMonitorToolBase.cxx.
1528 return StatusCode::FAILURE;
1540 return StatusCode::FAILURE;
1547 std::string hName =
h->GetName();
1551 std::string genericName = NoOutputStream().getStreamName(
this,
group, hName );
1577 if (
h->usingROOTBackend())
1579 h->setOwnsROOTHisto(
false);
1583 return StatusCode::SUCCESS;
◆ regHist() [2/4]
◆ regHist() [3/4]
Registers a TH1 (including TH2, TH3, and TProfile) to be included in the output stream using logical parameters that describe the histogram.
A histogram is passed via reference to a pointer.
Definition at line 1462 of file ManagedMonitorToolBase.cxx.
1468 return StatusCode::FAILURE;
1481 ATH_MSG_WARNING(
"HEY! You're attempting to register " <<
h->GetName() <<
" as a per-LB histogram, but you're not setting the merge algorithm! This is a SUPER-BAD idea! Use \"merge\", at least.");
1488 return StatusCode::FAILURE;
1491 std::string hName =
h->GetName();
1499 std::string hName =
h->GetName();
1502 std::string genericName = NoOutputStream().getStreamName(
this,
group, hName );
1510 if (
smd != StatusCode::SUCCESS)
return StatusCode::FAILURE;
◆ regHist() [4/4]
◆ registerMetadata()
StatusCode ManagedMonitorToolBase::registerMetadata |
( |
const std::string & |
streamName, |
|
|
const std::string & |
hName, |
|
|
const MonGroup & |
group |
|
) |
| |
|
protectedinherited |
Definition at line 1005 of file ManagedMonitorToolBase.cxx.
1011 size_t found=mdStreamName.rfind(
'/');
1013 if (
found != std::string::npos )
1014 mdStreamName.replace(
found, mdStreamName.length(),
"/metadata" );
1018 metadata =
new TTree(
"metadata",
"Monitoring Metadata" );
1019 if (!
metadata)
return StatusCode::FAILURE;
1021 if (scmd == StatusCode::FAILURE)
return StatusCode::FAILURE;
1022 MDMap_t::value_type valToInsert( mdStreamName,
new OutputMetadata(
metadata) );
1028 return StatusCode::SUCCESS;
◆ regManagedEfficiencies()
StatusCode ManagedMonitorToolBase::regManagedEfficiencies |
( |
std::vector< MgmtParams< TEfficiency > > & |
templateEfficiencies | ) |
|
|
protectedinherited |
Definition at line 1200 of file ManagedMonitorToolBase.cxx.
1201 bool allIsOk =
true;
1202 for(
auto&
it : templateEfficiencies ) {
1205 TEfficiency* theEfficiency =
it.m_templateHist;
1206 TEfficiency*
e =
static_cast<TEfficiency*
>(theEfficiency->Clone());
1207 int nbins = theEfficiency->GetTotalHistogram()->GetNbinsX();
1208 int xlow = theEfficiency->GetTotalHistogram()->GetXaxis()->GetXmin();
1209 int xhigh = theEfficiency->GetTotalHistogram()->GetXaxis()->GetXmax();
1210 e->SetBins(
nbins,xlow,xhigh);
1211 std::string
name =
e->GetName();
1214 TGraph* theGraph =
reinterpret_cast<TGraph*
>(theEfficiency);
1215 TGraph*
g =
reinterpret_cast<TGraph*
>(
e);
1223 if (sc1 == StatusCode::FAILURE) allIsOk =
false;
1225 bool doneCleaning =
false;
1227 TSeqCollection *
filelist=gROOT->GetListOfFiles();
1232 if (sc2 == StatusCode::SUCCESS) doneCleaning =
true;
1235 if (!doneCleaning) {
1236 ATH_MSG_ERROR(
"THistSvc_deReg_fixTGraph: failed to apply TGraph fix for the THist Svc!");
1241 if (sc3 == StatusCode::FAILURE)
1248 if (
smd != StatusCode::SUCCESS) allIsOk =
false;
1251 if (sc4 == StatusCode::FAILURE) allIsOk =
false;
1254 if (!allIsOk)
return StatusCode::FAILURE;
1255 return StatusCode::SUCCESS;
◆ regManagedGraphs()
StatusCode ManagedMonitorToolBase::regManagedGraphs |
( |
std::vector< MgmtParams< TGraph > > & |
templateGraphs | ) |
|
|
protectedinherited |
Definition at line 1129 of file ManagedMonitorToolBase.cxx.
1133 bool allIsOk =
true;
1135 for( std::vector< MgmtParams<TGraph> >::
iterator it = templateGraphs.begin();
it != templateGraphs.end(); ++
it ) {
1136 MonGroup
group = (*it).m_group;
1139 TGraph* theGraph = (*it).m_templateHist;
1142 TGraph*
g =
static_cast<TGraph*
>(theGraph->Clone());
1146 std::string gName =
g->GetName();
1153 if (sc1 == StatusCode::FAILURE)
1158 bool doneCleaning =
false;
1160 TSeqCollection *
filelist=gROOT->GetListOfFiles();
1165 if (sc2 == StatusCode::SUCCESS)
1166 doneCleaning =
true;
1170 if (!doneCleaning) {
1171 ATH_MSG_ERROR(
"THistSvc_deReg_fixTGraph: failed to apply TGraph fix for the THist Svc!");
1178 if (sc3 == StatusCode::FAILURE)
1185 if (
smd != StatusCode::SUCCESS)
1190 if (sc4 == StatusCode::FAILURE)
1195 if (!allIsOk)
return StatusCode::FAILURE;
1197 return StatusCode::SUCCESS;
◆ regManagedHistograms()
StatusCode ManagedMonitorToolBase::regManagedHistograms |
( |
std::vector< MgmtParams< TH1 > > & |
templateHistograms | ) |
|
|
protectedinherited |
Definition at line 1032 of file ManagedMonitorToolBase.cxx.
1047 bool allIsOk =
true;
1049 for( std::vector< MgmtParams<TH1> >::
iterator it = templateHistograms.begin();
it != templateHistograms.end(); ++
it ) {
1050 MonGroup&
group = (*it).m_group;
1053 TH1* theHist = (*it).m_templateHist;
1056 TH1*
h =
static_cast<TH1*
>(theHist->Clone());
1060 std::string hName =
h->GetName();
1067 if (sc1 == StatusCode::FAILURE) allIsOk =
false;
1071 if (sc2 == StatusCode::FAILURE) allIsOk =
false;
1074 std::string genericName = NoOutputStream().getStreamName(
this,
group, hName );
1083 if (
smd != StatusCode::SUCCESS) allIsOk =
false;
1087 if (sc3 == StatusCode::FAILURE) allIsOk =
false;
1091 if (!allIsOk)
return StatusCode::FAILURE;
1093 return StatusCode::SUCCESS;
◆ regManagedLWHistograms()
StatusCode ManagedMonitorToolBase::regManagedLWHistograms |
( |
std::vector< MgmtParams< LWHist > > & |
templateLWHistograms | ) |
|
|
protectedinherited |
◆ regManagedTrees()
StatusCode ManagedMonitorToolBase::regManagedTrees |
( |
std::vector< MgmtParams< TTree > > & |
templateTrees | ) |
|
|
protectedinherited |
Definition at line 1260 of file ManagedMonitorToolBase.cxx.
1264 bool allIsOk =
true;
1266 for( std::vector< MgmtParams<TTree> >::
iterator it = templateTrees.begin();
it != templateTrees.end(); ++
it ) {
1267 MonGroup
group = (*it).m_group;
1270 TTree* theTree = (*it).m_templateHist;
1273 TTree*
t =
static_cast<TTree*
>(theTree->Clone());
1277 std::string
name =
t->GetName();
1284 if (sc1 == StatusCode::FAILURE) allIsOk =
false;
1288 if (sc2 == StatusCode::FAILURE) allIsOk =
false;
1291 std::string genericName = NoOutputStream().getStreamName(
this,
group,
name );
1300 if (
smd != StatusCode::SUCCESS) allIsOk =
false;
1304 if (sc3 == StatusCode::FAILURE) allIsOk =
false;
1308 if (!allIsOk)
return StatusCode::FAILURE;
1310 return StatusCode::SUCCESS;
◆ regTree() [1/2]
StatusCode ManagedMonitorToolBase::regTree |
( |
TTree * |
t, |
|
|
const MonGroup & |
group |
|
) |
| |
|
virtualinherited |
Registers a TTree to be included in the output stream using logical parameters that describe it.
Definition at line 1758 of file ManagedMonitorToolBase.cxx.
1773 return StatusCode::FAILURE;
1776 std::string
name =
t->GetName();
1777 std::string genericName = NoOutputStream().getStreamName(
this, group_unmanaged,
name );
1785 std::string tName =
t->GetName();
1788 std::string genericName = NoOutputStream().getStreamName(
this,
group, tName );
1796 if (
smd != StatusCode::SUCCESS)
return StatusCode::FAILURE;
◆ regTree() [2/2]
Registers a TTree to be included in the output stream using logical parameters that describe it.
Definition at line 1748 of file ManagedMonitorToolBase.cxx.
◆ renounce()
◆ renounceArray()
◆ returnInt()
static int MdtRawDataValAlg::returnInt |
( |
const std::string & |
s | ) |
|
|
inlinestaticprivate |
◆ runStat()
StatusCode ManagedMonitorToolBase::runStat |
( |
| ) |
|
|
virtualinherited |
This implementation does nothing; equivalent functionality may be provided by procHists( true, true, true ).
Implements IMonitorToolBase.
Definition at line 1893 of file ManagedMonitorToolBase.cxx.
1896 return StatusCode::SUCCESS;
◆ setIsATLASReady()
void MdtRawDataValAlg::setIsATLASReady |
( |
| ) |
|
|
private |
Definition at line 1157 of file MDTRawDataUtils.cxx.
1158 bool filterresult(
true);
1161 for (; filterresult && (ifilter != filterend); ++ifilter) { filterresult = (filterresult && (*ifilter)->accept()); }
◆ setMonManager()
◆ setupOutputStreams()
StatusCode ManagedMonitorToolBase::setupOutputStreams |
( |
std::vector< std::string > |
Mapping = std::vector<std::string>() | ) |
|
|
virtualinherited |
◆ StoreTriggerType() [1/2]
StatusCode MdtRawDataValAlg::StoreTriggerType |
( |
| ) |
|
|
private |
◆ StoreTriggerType() [2/2]
void MdtRawDataValAlg::StoreTriggerType |
( |
int |
type | ) |
|
|
private |
◆ streamNameFunction()
Returns the function object that converts logical paramters into a physical stream name.
Definition at line 502 of file ManagedMonitorToolBase.cxx.
506 msg(MSG::ERROR) <<
"!! streamNameFunction() has not been initialized !!" <<
endmsg;
507 msg(MSG::ERROR) <<
" --> neither ManagedMonitorToolBase::initialize() nor" <<
endmsg;
508 msg(MSG::ERROR) <<
" --> ManagedMonitorToolBase::setMonManager() has been called." <<
endmsg;
509 msg(MSG::ERROR) <<
" --> Correct configuration cannot be guaranteed from this point." <<
endmsg;
◆ sysInitialize()
◆ sysStart()
Handle START transition.
We override this in order to make sure that conditions handle keys can cache a pointer to the conditions container.
◆ THistSvc_deReg_fixTGraph()
StatusCode ManagedMonitorToolBase::THistSvc_deReg_fixTGraph |
( |
TFile * |
file, |
|
|
TGraph * |
theGraph, |
|
|
std::string & |
directoryName |
|
) |
| |
|
protectedinherited |
Fixes THistSvc->deReg(obj) when obj is TGraph instance.
Read more in source file about this bug.
Definition at line 1097 of file ManagedMonitorToolBase.cxx.
1107 GlobalDirectoryRestore restore;
1110 bool graphRemoved =
false;
1113 TDirectory*
dir =
file->GetDirectory(directoryName.c_str());
1116 TObject*
obj =
dir->Remove(theGraph);
1118 graphRemoved =
true;
1121 if (!graphRemoved) {
1122 return StatusCode::FAILURE;
1125 return StatusCode::SUCCESS;
◆ trigChainsArePassed()
bool ManagedMonitorToolBase::trigChainsArePassed |
( |
std::vector< std::string > & |
vTrigNames | ) |
|
|
protectedvirtualinherited |
◆ TubeID_to_ID_L_ML()
void MdtRawDataValAlg::TubeID_to_ID_L_ML |
( |
int & |
tubeID, |
|
|
std::string_view |
hardware_name, |
|
|
int & |
tube, |
|
|
int & |
layer, |
|
|
int & |
ML, |
|
|
int |
max |
|
) |
| |
|
staticprivate |
Definition at line 880 of file MDTRawDataUtils.cxx.
887 int derived_NumTubePerLayer = 1;
888 int derived_NumTubePerML = 1;
889 int derived_NumLayer = 1;
890 int derived_NumLayerPerML = 1;
891 int derived_NumML = 1;
892 if (hardware_name.substr(0, 4) ==
"BIS8" ) {
893 derived_NumLayerPerML = 3;
895 }
else if ( hardware_name.substr(0, 3) ==
"BEE") {
896 derived_NumLayerPerML = 4;
898 }
else if (hardware_name.substr(0, 2) ==
"BI" ||
899 hardware_name.substr(0, 2) ==
"EI" ) {
900 derived_NumLayerPerML = 4;
903 derived_NumLayerPerML = 3;
907 derived_NumLayer = derived_NumLayerPerML * derived_NumML;
908 derived_NumTubePerML = totalTubes / derived_NumML;
909 derived_NumTubePerLayer = totalTubes / derived_NumLayer;
912 if (hardware_name.substr(0, 4) ==
"BMS4" || hardware_name.substr(0, 4) ==
"BMS6") derived_NumTubePerLayer = 48;
913 if ((hardware_name.substr(5, 2) ==
"11" || hardware_name.substr(5, 2) ==
"15")) {
914 if (hardware_name.substr(0, 4) ==
"BIR1") derived_NumTubePerLayer = 30;
915 if (hardware_name.substr(0, 4) ==
"BIR2") derived_NumTubePerLayer = 30;
916 if (hardware_name.substr(0, 4) ==
"BIR3") derived_NumTubePerLayer = 36;
917 if (hardware_name.substr(0, 4) ==
"BIR4") derived_NumTubePerLayer = 30;
918 if (hardware_name.substr(0, 4) ==
"BIR5") derived_NumTubePerLayer = 24;
922 derived_ML = (tubeID - 1) / derived_NumTubePerML + 1;
923 derived_layer = (tubeID - 1) / derived_NumTubePerLayer + 1;
924 derived_tube = tubeID - (derived_layer - 1) * derived_NumTubePerLayer;
925 if (derived_ML == 2) derived_layer -= derived_NumLayerPerML;
◆ updateTriggersForGroups()
void ManagedMonitorToolBase::updateTriggersForGroups |
( |
std::vector< std::string > & |
vTrigChainNames | ) |
|
|
protectedinherited |
Definition at line 2362 of file ManagedMonitorToolBase.cxx.
2364 for (
size_t i = 0;
i < vTrigChainNames.size(); ++
i) {
2365 std::string& thisName = vTrigChainNames[
i];
2366 if (thisName.compare(0, 9,
"CATEGORY_") ==0) {
2367 ATH_MSG_DEBUG(
"Found a trigger category: " << thisName <<
". We will unpack it.");
2369 std::ostringstream oss;
2371 for (
size_t itrig = 0; itrig <
triggers.size(); ++itrig) {
2379 std::string newval = oss.str();
2381 vTrigChainNames[
i] = newval;
◆ updateVHKA()
◆ writeAndDelete()
StatusCode ManagedMonitorToolBase::writeAndDelete |
( |
TH1 * |
h, |
|
|
const MonGroup & |
group |
|
) |
| |
|
virtualinherited |
Write out histogram and delete it.
Definition at line 1803 of file ManagedMonitorToolBase.cxx.
1806 return StatusCode::FAILURE;
1808 std::string hName =
h->GetName();
1811 std::string genericName = NoOutputStream().getStreamName(
this,
group, hName );
1814 return StatusCode::SUCCESS;
◆ m_ADCCut
float MdtRawDataValAlg::m_ADCCut |
|
private |
◆ m_ADCCut_Bkgrd
float MdtRawDataValAlg::m_ADCCut_Bkgrd |
|
private |
◆ m_atlas_ready
bool MdtRawDataValAlg::m_atlas_ready {false} |
|
private |
◆ m_BMGid
int MdtRawDataValAlg::m_BMGid {-1} |
|
private |
◆ m_BMGpresent
bool MdtRawDataValAlg::m_BMGpresent {false} |
|
private |
◆ m_bookHistogramsInitial
bool ManagedMonitorToolBase::m_bookHistogramsInitial |
|
privateinherited |
◆ m_chamber_2D
bool MdtRawDataValAlg::m_chamber_2D |
|
private |
◆ m_chamberName
std::string MdtRawDataValAlg::m_chamberName |
|
private |
◆ m_chambersId
std::vector<Identifier> MdtRawDataValAlg::m_chambersId |
|
private |
◆ m_chambersIdHash
◆ m_chi2_cut
float MdtRawDataValAlg::m_chi2_cut |
|
private |
◆ m_curTime
float MdtRawDataValAlg::m_curTime = 0.0F |
|
private |
◆ m_d
Imp* ManagedMonitorToolBase::m_d |
|
privateinherited |
◆ m_dataType
◆ m_dataTypeStr
std::string ManagedMonitorToolBase::m_dataTypeStr |
|
protectedinherited |
◆ m_DeadChannels
◆ m_defaultLBDuration
float ManagedMonitorToolBase::m_defaultLBDuration |
|
privateinherited |
◆ m_detailLevel
unsigned int ManagedMonitorToolBase::m_detailLevel |
|
protectedinherited |
◆ m_DetectorManagerKey
Initial value:{this, "DetectorManagerKey", "MuonDetectorManager",
"Key of input MuonDetectorManager condition data"}
Definition at line 122 of file MdtRawDataValAlg.h.
◆ m_detMgr
◆ m_detStore
◆ m_do_mdt_DRvsDRerr
bool MdtRawDataValAlg::m_do_mdt_DRvsDRerr |
|
private |
◆ m_do_mdt_DRvsDT
bool MdtRawDataValAlg::m_do_mdt_DRvsDT |
|
private |
◆ m_do_mdt_DRvsSegD
bool MdtRawDataValAlg::m_do_mdt_DRvsSegD |
|
private |
◆ m_do_mdt_effCounts
bool MdtRawDataValAlg::m_do_mdt_effCounts |
|
private |
◆ m_do_mdt_effEntries
bool MdtRawDataValAlg::m_do_mdt_effEntries |
|
private |
◆ m_do_mdt_effPerTube
bool MdtRawDataValAlg::m_do_mdt_effPerTube |
|
private |
◆ m_do_mdtadc
bool MdtRawDataValAlg::m_do_mdtadc |
|
private |
◆ m_do_mdtadc_onSegm_ML1
bool MdtRawDataValAlg::m_do_mdtadc_onSegm_ML1 |
|
private |
◆ m_do_mdtadc_onSegm_ML2
bool MdtRawDataValAlg::m_do_mdtadc_onSegm_ML2 |
|
private |
◆ m_do_mdtChamberHits
bool MdtRawDataValAlg::m_do_mdtChamberHits |
|
private |
◆ m_do_mdtchamberstatphislice
bool MdtRawDataValAlg::m_do_mdtchamberstatphislice |
|
private |
◆ m_do_mdtlayer
bool MdtRawDataValAlg::m_do_mdtlayer |
|
private |
◆ m_do_mdtmezz
bool MdtRawDataValAlg::m_do_mdtmezz |
|
private |
◆ m_do_mdtmultil
bool MdtRawDataValAlg::m_do_mdtmultil |
|
private |
◆ m_do_mdttdc
bool MdtRawDataValAlg::m_do_mdttdc |
|
private |
◆ m_do_mdttdcadc
bool MdtRawDataValAlg::m_do_mdttdcadc |
|
private |
◆ m_do_mdttdccut_ML1
bool MdtRawDataValAlg::m_do_mdttdccut_ML1 |
|
private |
◆ m_do_mdttdccut_ML2
bool MdtRawDataValAlg::m_do_mdttdccut_ML2 |
|
private |
◆ m_do_mdttdccut_RPCtrig_ML1
bool MdtRawDataValAlg::m_do_mdttdccut_RPCtrig_ML1 |
|
private |
◆ m_do_mdttdccut_RPCtrig_ML2
bool MdtRawDataValAlg::m_do_mdttdccut_RPCtrig_ML2 |
|
private |
◆ m_do_mdttdccut_sector
bool MdtRawDataValAlg::m_do_mdttdccut_sector |
|
private |
◆ m_do_mdttdccut_TGCtrig_ML1
bool MdtRawDataValAlg::m_do_mdttdccut_TGCtrig_ML1 |
|
private |
◆ m_do_mdttdccut_TGCtrig_ML2
bool MdtRawDataValAlg::m_do_mdttdccut_TGCtrig_ML2 |
|
private |
◆ m_do_mdttdctube
bool MdtRawDataValAlg::m_do_mdttdctube |
|
private |
◆ m_do_mdttube
bool MdtRawDataValAlg::m_do_mdttube |
|
private |
◆ m_do_mdttube_bkgrd
bool MdtRawDataValAlg::m_do_mdttube_bkgrd |
|
private |
◆ m_do_mdttube_fornoise
bool MdtRawDataValAlg::m_do_mdttube_fornoise |
|
private |
◆ m_do_mdttube_masked
bool MdtRawDataValAlg::m_do_mdttube_masked |
|
private |
◆ m_do_mdttubenoise
bool MdtRawDataValAlg::m_do_mdttubenoise |
|
private |
◆ m_doChamberHists
bool MdtRawDataValAlg::m_doChamberHists |
|
private |
◆ m_doMdtESD
bool MdtRawDataValAlg::m_doMdtESD |
|
private |
◆ m_DQFilterTools
ToolHandleArray<IDQFilterTool> ManagedMonitorToolBase::m_DQFilterTools {this,"FilterTools",{}} |
|
protectedinherited |
◆ m_endOfEventsBlock
bool ManagedMonitorToolBase::m_endOfEventsBlock |
|
privateinherited |
◆ m_endOfLowStat
bool ManagedMonitorToolBase::m_endOfLowStat |
|
privateinherited |
◆ m_endOfLumiBlock
bool ManagedMonitorToolBase::m_endOfLumiBlock |
|
privateinherited |
◆ m_endOfRun
bool ManagedMonitorToolBase::m_endOfRun |
|
privateinherited |
◆ m_environment
◆ m_environmentStr
std::string ManagedMonitorToolBase::m_environmentStr |
|
protectedinherited |
◆ m_eventInfo
◆ m_eventNum
int MdtRawDataValAlg::m_eventNum {0} |
|
private |
◆ m_evtStore
◆ m_fileKey
std::string ManagedMonitorToolBase::m_fileKey |
|
protectedinherited |
◆ m_firstEvent
int MdtRawDataValAlg::m_firstEvent {0} |
|
private |
◆ m_firstTime
uint32_t MdtRawDataValAlg::m_firstTime {0U} |
|
private |
◆ m_hardware_name_list
std::set<std::string> MdtRawDataValAlg::m_hardware_name_list |
|
private |
◆ m_hashId_list
std::set<int> MdtRawDataValAlg::m_hashId_list |
|
private |
◆ m_haveClearedLastEventBlock
bool ManagedMonitorToolBase::m_haveClearedLastEventBlock |
|
protectedinherited |
◆ m_HighOccThreshold
float MdtRawDataValAlg::m_HighOccThreshold |
|
private |
◆ m_hist_hash_list
std::vector<std::unique_ptr<MDTChamber> > MdtRawDataValAlg::m_hist_hash_list {} |
|
private |
◆ m_hitsperchamber_map
std::map<std::string, float> MdtRawDataValAlg::m_hitsperchamber_map |
|
private |
◆ m_idHelperSvc
◆ m_isOnline
bool MdtRawDataValAlg::m_isOnline |
|
private |
◆ m_key_mdt
◆ m_key_rpc
◆ m_l1RoiKey
◆ m_lastHigStatInterval
int ManagedMonitorToolBase::m_lastHigStatInterval |
|
protectedinherited |
◆ m_lastLowStatInterval
int ManagedMonitorToolBase::m_lastLowStatInterval |
|
protectedinherited |
◆ m_lastLumiBlock
unsigned int ManagedMonitorToolBase::m_lastLumiBlock |
|
protectedinherited |
◆ m_lastMedStatInterval
int ManagedMonitorToolBase::m_lastMedStatInterval |
|
protectedinherited |
◆ m_lastRun
unsigned int ManagedMonitorToolBase::m_lastRun |
|
protectedinherited |
◆ m_lbDurationDataKey
◆ m_lumiblock
int MdtRawDataValAlg::m_lumiblock {0} |
|
private |
◆ m_lumiDataKey
◆ m_lwhists
std::set<LWHist*> ManagedMonitorToolBase::m_lwhists |
|
protectedinherited |
◆ m_manager
◆ m_managerNameProp
std::string ManagedMonitorToolBase::m_managerNameProp |
|
protectedinherited |
◆ m_masked_tubes
◆ m_maskNoisyTubes
bool MdtRawDataValAlg::m_maskNoisyTubes |
|
private |
◆ m_mdtChamberHits
TH1* MdtRawDataValAlg::m_mdtChamberHits[4][4][16] {} |
|
private |
◆ m_mdtchamberstat
TH1* MdtRawDataValAlg::m_mdtchamberstat {} |
|
private |
◆ m_mdtchamberstatphislice
TH1* MdtRawDataValAlg::m_mdtchamberstatphislice[16] {} |
|
private |
◆ m_MdtDQFilterTools
ToolHandleArray<IDQFilterTool> MdtRawDataValAlg::m_MdtDQFilterTools |
|
private |
◆ m_mdteffperchamber_InnerMiddleOuter
TH2* MdtRawDataValAlg::m_mdteffperchamber_InnerMiddleOuter[4] {} |
|
private |
◆ m_mdteffpermultilayer
TH2* MdtRawDataValAlg::m_mdteffpermultilayer[4][4] {} |
|
private |
◆ m_mdteventscutLumi
TH1* MdtRawDataValAlg::m_mdteventscutLumi {} |
|
private |
◆ m_mdteventscutLumi_big
TH1* MdtRawDataValAlg::m_mdteventscutLumi_big {} |
|
private |
◆ m_mdteventsLumi
TH1* MdtRawDataValAlg::m_mdteventsLumi {} |
|
private |
◆ m_mdteventsLumi_big
TH1* MdtRawDataValAlg::m_mdteventsLumi_big {} |
|
private |
◆ m_mdtglobalhitstime
TH1* MdtRawDataValAlg::m_mdtglobalhitstime {} |
|
private |
◆ m_mdthitsperchamber_InnerMiddleOuter_HighOcc
TH2* MdtRawDataValAlg::m_mdthitsperchamber_InnerMiddleOuter_HighOcc[2] {} |
|
private |
◆ m_mdthitsperchamber_InnerMiddleOuterLumi
TH2* MdtRawDataValAlg::m_mdthitsperchamber_InnerMiddleOuterLumi[2] {} |
|
private |
◆ m_mdthitsperchamber_onSegm_InnerMiddleOuterLumi
TH2* MdtRawDataValAlg::m_mdthitsperchamber_onSegm_InnerMiddleOuterLumi[2] {} |
|
private |
◆ m_mdthitsperML_byLayer
TH2* MdtRawDataValAlg::m_mdthitsperML_byLayer[3] {} |
|
private |
◆ m_mdthitspermultilayerLumi
TH2* MdtRawDataValAlg::m_mdthitspermultilayerLumi[4][4] {} |
|
private |
◆ m_MdtNHitsvsRpcNHits
TH2* MdtRawDataValAlg::m_MdtNHitsvsRpcNHits {} |
|
private |
◆ m_mdtoccvslb
TH2* MdtRawDataValAlg::m_mdtoccvslb[4][3] {} |
|
private |
◆ m_mdtoccvslb_by_crate
TH2* MdtRawDataValAlg::m_mdtoccvslb_by_crate[4][4] {} |
|
private |
◆ m_mdtoccvslb_ontrack_by_crate
TH2* MdtRawDataValAlg::m_mdtoccvslb_ontrack_by_crate[4][4] {} |
|
private |
◆ m_mdtoccvslb_summaryPerSector
TH2* MdtRawDataValAlg::m_mdtoccvslb_summaryPerSector {} |
|
private |
◆ m_mdtrzdet
TH2* MdtRawDataValAlg::m_mdtrzdet[3] {} |
|
private |
◆ m_mdttdccut_sector
TH1* MdtRawDataValAlg::m_mdttdccut_sector[4][4][16] {} |
|
private |
◆ m_mdtxydet
TH2* MdtRawDataValAlg::m_mdtxydet[3] {} |
|
private |
◆ m_metadataMap
MDMap_t ManagedMonitorToolBase::m_metadataMap |
|
protectedinherited |
◆ m_mg
◆ m_muonKey
◆ m_muonSelectionTool
◆ m_nb_hits
float MdtRawDataValAlg::m_nb_hits |
|
private |
◆ m_nEvents
unsigned int ManagedMonitorToolBase::m_nEvents |
|
protectedinherited |
◆ m_nEventsIgnoreTrigger
unsigned int ManagedMonitorToolBase::m_nEventsIgnoreTrigger |
|
protectedinherited |
◆ m_newEventsBlock
bool ManagedMonitorToolBase::m_newEventsBlock |
|
privateinherited |
◆ m_newHigStatInterval
bool ManagedMonitorToolBase::m_newHigStatInterval |
|
privateinherited |
◆ m_newLowStat
bool ManagedMonitorToolBase::m_newLowStat |
|
privateinherited |
◆ m_newLowStatInterval
bool ManagedMonitorToolBase::m_newLowStatInterval |
|
privateinherited |
◆ m_newLumiBlock
bool ManagedMonitorToolBase::m_newLumiBlock |
|
privateinherited |
◆ m_newMedStatInterval
bool ManagedMonitorToolBase::m_newMedStatInterval |
|
privateinherited |
◆ m_newRun
bool ManagedMonitorToolBase::m_newRun |
|
privateinherited |
◆ m_nLumiBlocks
unsigned int ManagedMonitorToolBase::m_nLumiBlocks |
|
protectedinherited |
◆ m_numberOfEvents
int MdtRawDataValAlg::m_numberOfEvents {0} |
|
private |
◆ m_nummdtchamberswithHighOcc
TH1* MdtRawDataValAlg::m_nummdtchamberswithHighOcc {} |
|
private |
◆ m_nummdtchamberswithhits
TH1* MdtRawDataValAlg::m_nummdtchamberswithhits {} |
|
private |
◆ m_nummdtchamberswithhits_ADCCut
TH1* MdtRawDataValAlg::m_nummdtchamberswithhits_ADCCut {} |
|
private |
◆ m_overall_mdt_DRvsDT
TH2* MdtRawDataValAlg::m_overall_mdt_DRvsDT {} |
|
private |
◆ m_overall_mdt_DRvsSegD
TH2* MdtRawDataValAlg::m_overall_mdt_DRvsSegD {} |
|
private |
◆ m_overalladc_HighOcc
TH1* MdtRawDataValAlg::m_overalladc_HighOcc {} |
|
private |
◆ m_overalladc_Lumi
TH1* MdtRawDataValAlg::m_overalladc_Lumi {} |
|
private |
◆ m_overalladc_segm_Lumi
TH1* MdtRawDataValAlg::m_overalladc_segm_Lumi {} |
|
private |
◆ m_overalladc_segm_PR_Lumi
TH1* MdtRawDataValAlg::m_overalladc_segm_PR_Lumi[4] {} |
|
private |
◆ m_overalladccutPRLumi
TH1* MdtRawDataValAlg::m_overalladccutPRLumi[4] {} |
|
private |
◆ m_overalladcPR_HighOcc
TH1* MdtRawDataValAlg::m_overalladcPR_HighOcc[4] {} |
|
private |
◆ m_overalladcPRLumi
TH1* MdtRawDataValAlg::m_overalladcPRLumi[4] {} |
|
private |
◆ m_overallPR_mdt_DRvsDT
TH2* MdtRawDataValAlg::m_overallPR_mdt_DRvsDT[4] {} |
|
private |
◆ m_overallPR_mdt_DRvsSegD
TH2* MdtRawDataValAlg::m_overallPR_mdt_DRvsSegD[4] {} |
|
private |
◆ m_overalltdcadcHighOcc
TH2* MdtRawDataValAlg::m_overalltdcadcHighOcc {} |
|
private |
◆ m_overalltdcadcLumi
TH2* MdtRawDataValAlg::m_overalltdcadcLumi {} |
|
private |
◆ m_overalltdcadcPR_HighOcc
TH2* MdtRawDataValAlg::m_overalltdcadcPR_HighOcc[4] {} |
|
private |
◆ m_overalltdcadcPRLumi
TH2* MdtRawDataValAlg::m_overalltdcadcPRLumi[4] {} |
|
private |
◆ m_overalltdccut_segm_Lumi
TH1* MdtRawDataValAlg::m_overalltdccut_segm_Lumi {} |
|
private |
◆ m_overalltdccut_segm_PR_Lumi
TH1* MdtRawDataValAlg::m_overalltdccut_segm_PR_Lumi[4] {} |
|
private |
◆ m_overalltdccutLumi
TH1* MdtRawDataValAlg::m_overalltdccutLumi {} |
|
private |
◆ m_overalltdccutPRLumi
TH1* MdtRawDataValAlg::m_overalltdccutPRLumi[4] {} |
|
private |
◆ m_overalltdccutPRLumi_RPCtrig
TH1* MdtRawDataValAlg::m_overalltdccutPRLumi_RPCtrig[4] {} |
|
private |
◆ m_overalltdccutPRLumi_TGCtrig
TH1* MdtRawDataValAlg::m_overalltdccutPRLumi_TGCtrig[4] {} |
|
private |
◆ m_overalltdcHighOcc
TH1* MdtRawDataValAlg::m_overalltdcHighOcc {} |
|
private |
◆ m_overalltdcHighOcc_ADCCut
TH1* MdtRawDataValAlg::m_overalltdcHighOcc_ADCCut {} |
|
private |
◆ m_overalltdcPR_HighOcc
TH1* MdtRawDataValAlg::m_overalltdcPR_HighOcc[4] {} |
|
private |
◆ m_overalltdcPR_HighOcc_ADCCut
TH1* MdtRawDataValAlg::m_overalltdcPR_HighOcc_ADCCut[4] {} |
|
private |
◆ m_path
std::string ManagedMonitorToolBase::m_path |
|
protectedinherited |
◆ m_preScaleProp
long ManagedMonitorToolBase::m_preScaleProp |
|
protectedinherited |
◆ m_procNEventsProp
long ManagedMonitorToolBase::m_procNEventsProp |
|
protectedinherited |
◆ m_road_width
float MdtRawDataValAlg::m_road_width |
|
private |
◆ m_segm_type
◆ m_StationEta
int MdtRawDataValAlg::m_StationEta |
|
private |
◆ m_StationPhi
int MdtRawDataValAlg::m_StationPhi |
|
private |
◆ m_StationSize
std::string MdtRawDataValAlg::m_StationSize |
|
private |
◆ m_streamNameFcn
◆ m_supportedIntervalsForRebooking
std::set<Interval_t> ManagedMonitorToolBase::m_supportedIntervalsForRebooking |
|
privateinherited |
◆ m_templateEfficiencies
std::map< Interval_t, std::vector< MgmtParams<TEfficiency> > > ManagedMonitorToolBase::m_templateEfficiencies |
|
protectedinherited |
◆ m_templateGraphs
◆ m_templateHistograms
◆ m_templateLWHistograms
◆ m_templateTrees
◆ m_THistSvc
◆ m_time
uint32_t MdtRawDataValAlg::m_time {0U} |
|
private |
◆ m_title
std::string MdtRawDataValAlg::m_title |
|
private |
◆ m_trig_BARREL
bool MdtRawDataValAlg::m_trig_BARREL {false} |
|
private |
◆ m_trig_ENDCAP
bool MdtRawDataValAlg::m_trig_ENDCAP {false} |
|
private |
◆ m_trigDecTool
◆ m_triggerChainProp
std::string ManagedMonitorToolBase::m_triggerChainProp |
|
protectedinherited |
◆ m_triggerGroupProp
std::string ManagedMonitorToolBase::m_triggerGroupProp |
|
protectedinherited |
◆ m_trigLiveFractionDataKey
◆ m_trigTranslator
PublicToolHandle<ITriggerTranslatorTool> ManagedMonitorToolBase::m_trigTranslator {this,"TriggerTranslatorTool",""} |
|
protectedinherited |
◆ m_trigtype
int MdtRawDataValAlg::m_trigtype = 0 |
|
private |
◆ m_tubesperchamber_map
std::map<std::string, float> MdtRawDataValAlg::m_tubesperchamber_map |
|
private |
◆ m_useLumi
bool ManagedMonitorToolBase::m_useLumi |
|
privateinherited |
◆ m_useTrigger
bool ManagedMonitorToolBase::m_useTrigger |
|
protectedinherited |
◆ m_varHandleArraysDeclared
◆ m_vhka
◆ m_vTrigChainNames
std::vector<std::string> ManagedMonitorToolBase::m_vTrigChainNames |
|
protectedinherited |
◆ m_vTrigGroupNames
std::vector<std::string> ManagedMonitorToolBase::m_vTrigGroupNames |
|
protectedinherited |
The documentation for this class was generated from the following files:
virtual LWHist * ownedLWHistOfKey(const std::string &key) const
def retrieve(aClass, aKey=None)
JetConstituentVector::iterator iterator
static void ChamberTubeNumberCorrection(int &tubeNum, std::string_view hardware_name, int tubePos, int numLayers)
std::vector< IdentifierHash > m_chambersIdHash
virtual StatusCode binMdtOccVsLB_Crate(TH2 *&h, int region, int crate)
virtual StatusCode bookMDTHisto_chambers_2D(TH2F_LW *&h, TString, TString, TString, int, float, float, int, float, float, MonGroup &)
TH1 * m_mdttdccut_sector[4][4][16]
TH1 * m_overalltdcHighOcc
SG::ReadCondHandleKey< MuonGM::MuonDetectorManager > m_DetectorManagerKey
TH1 * m_nummdtchamberswithHighOcc
std::string convertChamberName(int, int, int, const std::string &)
virtual LWHist * writeAndDeleteLWHist(const std::string &key, const std::string &streamName)
constexpr uint8_t stationPhi
station Phi 1 to 8
std::vector< std::unique_ptr< MDTChamber > > m_hist_hash_list
int getNLayers() const
Returns the number of tube layers inside the multilayer.
SG::ReadHandleKey< Muon::MdtPrepDataContainer > m_key_mdt
bool m_do_mdttube_fornoise
Const iterator class for DataVector/DataList.
ToolHandle< CP::IMuonSelectionTool > m_muonSelectionTool
bool m_do_mdttdccut_RPCtrig_ML2
Scalar phi() const
phi method
virtual const MdtPrepData * prepRawData() const override final
Returns the PrepRawData used to create this corrected measurement.
std::string find(const std::string &s)
return a remapped string
bool m_do_mdttdccut_RPCtrig_ML1
TH1 * m_overalladcPRLumi[4]
double innerTubeRadius() const
Returns the inner tube radius excluding the aluminium walls.
std::vector< Identifier > m_chambersId
static TH1F_LW * create(const char *name, const char *title, unsigned nbinsx, const double &xlow, const double &xup)
static void CorrectLayerMax(const std::string &hardware_name, int &numLayers)
Scalar eta() const
pseudorapidity method
Gaudi::Details::PropertyBase & declareProperty(Gaudi::Property< T > &t)
TH1 * m_mdteventsLumi_big
virtual LWHist * writeAndResetLWHist(const std::string &key, const std::string &streamName)
std::map< std::string, float > m_hitsperchamber_map
static unsigned int runNumber()
TH2 * m_mdtoccvslb_by_crate[4][4]
TH2 * m_mdtoccvslb_ontrack_by_crate[4][4]
virtual std::string fileKey() const
TH2 * m_overalltdcadcLumi
virtual void passOwnership(TObject *h, const std::string &key)
Pass ownership of a TObject/LWHist to this manager so that it will be deleted appropriately.
std::unique_ptr< MDTNoisyTubes > m_masked_tubes
virtual StatusCode bookMDTSummaryHistograms(bool newLumiBlock, bool newRun)
virtual Amg::Transform3D GlobalToAmdbLRSTransform() const
TH2 * m_overalltdcadcPR_HighOcc[4]
static int get_bin_for_LB_hist(int region, int layer, int phi, int eta, bool isBIM)
TH1 * m_overalltdcHighOcc_ADCCut
StoreGateSvc_t m_evtStore
Pointer to StoreGate (event store by default)
StatusCode getChamber(IdentifierHash id, MDTChamber *&chamber)
std::vector< SG::VarHandleKeyArray * > m_vhka
TH1 * m_mdteventscutLumi_big
bool msgLvl(const MSG::Level lvl) const
static void CorrectTubeMax(const std::string &hardware_name, int &numTubes)
SG::ReadHandleKey< Trk::SegmentCollection > m_segm_type
static void setStreamName(LWHist *, const std::string &streamName)
TH1 * m_nummdtchamberswithhits
TH2 * m_mdteffpermultilayer[4][4]
int stationName(const Identifier &id) const
#define ATH_MSG_VERBOSE(x)
bool empty() const
Test if the key is blank.
std::string m_StationSize
TH2 * m_overalltdcadcHighOcc
ToolHandleArray< IDQFilterTool > m_MdtDQFilterTools
int adc() const
Returns the ADC (typically range is 0 to 250)
def TH2F(name, title, nxbins, bins_par2, bins_par3, bins_par4, bins_par5=None, bins_par6=None, path='', **kwargs)
static bool AinB(int A, std::vector< int > &B)
TH1 * m_nummdtchamberswithhits_ADCCut
std::string m_chamberName
std::string getChamberName(const Muon::MdtPrepData *)
bool m_do_mdttdccut_sector
int GetTubeMax(const Identifier &digcoll_id, std::string_view hardware_name)
static unsigned int getLBsLowStat()
std::set< std::string > m_hardware_name_list
double driftTime() const
Returns the value of the drift time used to obtain the drift radius.
virtual StatusCode bookMDTHisto_OccVsLB(TH2 *&h, TString, TString, TString, int, float, float, int, float, float, MonGroup &)
TH2 * m_mdteffperchamber_InnerMiddleOuter[4]
const ServiceHandle< StoreGateSvc > & detStore() const
The standard StoreGateSvc/DetectorStore Returns (kind of) a pointer to the StoreGateSvc.
StatusCode handleEvent_effCalc(const Trk::SegmentCollection *segms)
virtual void setOwner(IDataHandleHolder *o)=0
TH1 * m_overalltdccut_segm_PR_Lumi[4]
TH1 * m_overalltdccut_segm_Lumi
static Environment_t environment()
Returns the running environment of the monitoring application to help ManagedMonitorToolBase objects ...
static const std::string & streamName(LWHist *)
virtual StatusCode bookMDTHisto_overview(TH1 *&, TString, TString, TString, int, float, float, MonGroup &)
static unsigned int getLBsMedStat()
bool usingROOTBackend() const
static void removeCustomData(LWHist *)
TH1 * m_overalltdccutPRLumi[4]
const MuonGM::MuonDetectorManager * m_detMgr
TH2 * m_overallPR_mdt_DRvsSegD[4]
static DataType_t dataType()
Returns the data type that the monitoring application is running over to help ManagedMonitorToolBase ...
virtual Amg::Vector3D GlobalToAmdbLRSCoords(const Amg::Vector3D &x) const
const MdtReadoutElement * getMdtReadoutElement(const Identifier &id) const
access via extended identifier (requires unpacking)
@ numberOfTriggerEtaLayers
layers with trigger eta hits [unit8_t].
TH1 * m_overalladcPR_HighOcc[4]
TH1 * m_overalltdcPR_HighOcc_ADCCut[4]
static const std::string & key(LWHist *)
virtual StatusCode bookMDTOverviewHistograms(bool newLumiBlock, bool newRun)
::StatusCode StatusCode
StatusCode definition for legacy code.
TH1 * m_mdtChamberHits[4][4][16]
virtual void writeAndDelete(const std::string &key)
If the TObject is owned by this manager, its Write() method is called and it is deleted.
Eigen::Affine3d Transform3D
Class describing a LVL1 muon region of interest.
bool isATLASReady() const
SG::ReadHandleKey< xAOD::MuonRoIContainer > m_l1RoiKey
int get_bin_for_LB_crate_hist(int region, int layer, int phi, int eta, std::string_view chamber)
TH2 * m_overallPR_mdt_DRvsDT[4]
bool m_do_mdtadc_onSegm_ML2
virtual StatusCode binMdtGlobal_byLayer(TH2 *, TH2 *, TH2 *)
virtual StatusCode fillMDTHistograms(const Muon::MdtPrepData *)
StoreGateSvc_t m_detStore
Pointer to StoreGate (detector store by default)
std::unique_ptr< MDTMonGroupStruct > m_mg
StatusCode initialize(bool used=true)
If this object is used as a property, then this should be called during the initialize phase.
double driftRadius() const
Returns the value of the drift radius.
SG::ReadHandleKey< Muon::RpcPrepDataContainer > m_key_rpc
virtual StatusCode bookMDTHisto_chambers(TH1F_LW *&, TString, TString, TString, int, float, float, MonGroup &)
TH2 * m_mdthitsperML_byLayer[3]
void fcn(int &, double *, double &result, double par[], int)
this is where we write out chi2
TH1 * m_overalladccutPRLumi[4]
virtual StatusCode fillMDTMaskedTubes(IdentifierHash, const std::string &, TH1F_LW *&h)
const Amg::MatrixX & localCovariance() const
Interface method to get the localError.
virtual void renounce()=0
std::conditional< std::is_base_of< SG::VarHandleKeyArray, T >::value, VarHandleKeyArrayType, type2 >::type type
int stationPhi(const Identifier &id) const
Identifier identify() const
return the identifier
virtual StatusCode binMdtOccVsLB(TH2 *&h, int region, int layer)
virtual StatusCode binMdtRegional(TH2 *, std::string_view xAxis)
int tdc() const
Returns the TDC (typically range is 0 to 2500).
TH1 * m_overalladc_segm_PR_Lumi[4]
TH1 * m_overalltdccutPRLumi_TGCtrig[4]
std::string to_string(const DetectorType &type)
static TH2F_LW * create(const char *name, const char *title, unsigned nbinsx, const double &xmin, const double &xmax, unsigned nbinsy, const double &ymin, const double &ymax)
static unsigned int getLBsHigStat()
TH2 * m_mdthitspermultilayerLumi[4][4]
This class represents the corrected MDT measurements, where the corrections include the effects of wi...
static void setKey(LWHist *, const std::string &key)
double signDistFrom(const MTStraightLine &h) const
get the signed distance of two lines (if both are parallel, dist>0)
static void putBox(TH2 *h, float x1, float y1, float x2, float y2)
TH2 * m_overalltdcadcPRLumi[4]
StatusCode initialize(bool used=true)
constexpr unsigned int numLayers()
int stationEta(const Identifier &id) const
TH1 * m_overalladc_HighOcc
Eigen::Matrix< double, 3, 1 > Vector3D
void setOwnsROOTHisto(bool b)
bool m_do_mdtadc_onSegm_ML1
virtual StatusCode bookMDTHisto_overview_2D(TH2 *&h, TString, TString, TString, int, float, float, int, float, float, MonGroup &)
StatusCode StoreTriggerType()
const DataVector< const MeasurementBase > * measurementsOnTrack() const
return a pointer to a vector of MeasurementBase (NOT including any that come from outliers).
TH2 * m_mdtoccvslb_summaryPerSector
SG::ReadHandleKey< xAOD::EventInfo > m_eventInfo
const MuonStation * getMuonStation(const std::string &stName, int eta, int phi) const
void geoGetIds(FUNCTION f, const GeoGraphNode *node, int depthLimit=1)
Template helper for running the visitor.
TH1 * m_mdtglobalhitstime
Amg::Vector3D tubePos(const Identifier &id) const
Returns the global position of the given tube.
SG::ReadHandleKey< xAOD::MuonContainer > m_muonKey
TH2 * m_MdtNHitsvsRpcNHits
ServiceHandle< Muon::IMuonIdHelperSvc > m_idHelperSvc
void sort(typename std::reverse_iterator< DataModel_detail::iterator< DVL > > beg, typename std::reverse_iterator< DataModel_detail::iterator< DVL > > end, const Compare &comp)
Specialization of sort for DataVector/List.
The MuonDetectorManager stores the transient representation of the Muon Spectrometer geometry and pro...
#define ATH_MSG_WARNING(x)
StatusCode fillLumiBlock()
std::map< std::string, float > m_tubesperchamber_map
TH2 * m_mdthitsperchamber_InnerMiddleOuterLumi[2]
filelist
print ("Checking files %s..." % fullfile)
TH2 * m_mdthitsperchamber_onSegm_InnerMiddleOuterLumi[2]
TH1 * m_overalltdccutPRLumi_RPCtrig[4]
double GetEntries(TH1D *h, int ilow, int ihi)
Identifier identify() const override final
Returns the ATLAS Identifier of the MuonReadOutElement.
virtual Identifier identify() const final
return the identifier -extends MeasurementBase
SG::VarHandleKey & vhKey()
Return a non-const reference to the HandleKey.
const std::string & getName() const
int atoi(std::string_view str)
Helper functions to unpack numbers decoded in string into integers and doubles The strings are requir...
TH1 * m_overalltdccutLumi
TH1 * m_overalltdcPR_HighOcc[4]
def TH1F(name, title, nxbins, bins_par2, bins_par3=None, path='', **kwargs)
TH1 * m_mdtchamberstatphislice[16]
static unsigned int lumiBlockNumber()
Class describing a TrackParticle.
virtual StatusCode binMdtGlobal(TH2 *, char ecap)
virtual int get_module_hash(const Identifier &id, IdentifierHash &hash_id) const override
constexpr uint8_t stationEta
1 to 3
Exception — Aux data requested from object with no store.
int getNtubesperlayer() const
Returns the number of tubes in each tube layer.
TH2 * m_mdthitsperchamber_InnerMiddleOuter_HighOcc[2]
setScale setgFexType iEta
virtual TH1 * getROOTHistBase()=0
@ numberOfPhiLayers
layers with a trigger phi hit [unit8_t].
float distance(const Amg::Vector3D &p1, const Amg::Vector3D &p2)
calculates the distance between two point in 3D space
virtual StatusCode fillMDTSummaryHistograms(const Muon::MdtPrepData *, std::set< std::string >, bool &isNoiseBurstCandidate)
Gaudi::Details::PropertyBase & declareGaudiProperty(Gaudi::Property< T > &hndl, const SG::VarHandleKeyType &)
specialization for handling Gaudi::Property<SG::VarHandleKey>
StatusCode GetTimingInfo()
void initDeadChannels(const MuonGM::MdtReadoutElement *mydetEl)
bool m_do_mdttdccut_TGCtrig_ML2
virtual StatusCode bookMDTHistograms(MDTChamber *chamber, Identifier digcoll_id)
std::map< Identifier, std::vector< Identifier > > m_DeadChannels
bool m_do_mdttdccut_TGCtrig_ML1
Muon::NSW_PadTriggerSegment segment(const NSWL1::PadTrigger &data)
virtual StatusCode fillMDTOverviewHistograms(const Muon::MdtPrepData *, bool &isNoiseBurstCandidate)
static void putLine(TH2 *h, float x1, float y1, float x2, float y2, Color_t c=kBlack)
TH1 * m_overalladc_segm_Lumi
bool m_do_mdtchamberstatphislice