ATLAS Offline Software
InDetGlobalSynchMonTool.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
3 */
4 
20 #ifndef InDetGlobalSynchMonTool_H
21 #define InDetGlobalSynchMonTool_H
22 
23 //Local
25 //Standard c++
26 #include <string>
27 
29 #include <map>
30 
31 //Predeclarations
32 class IInterface;
33 class StatusCode;
34 class TH1I_LW;
35 class TH2I_LW;
36 class TProfile_LW;
37 class TProfile2D;
38 
49 {
50 public:
52  InDetGlobalSynchMonTool( const std::string & type,
53  const std::string & name,
54  const IInterface* parent);
55 
58 
59  virtual StatusCode initialize();
60 
63 
65  virtual StatusCode bookHistograms() ;
66 
68  virtual StatusCode fillHistograms();
69 
71 
72  private:
73 
74  void FillTbinLvl1aTrigger(int x,int y,int count);
75  static void fillNTimesFast(TH2I_LW*h,double x,double y, int count);//Could be implemented on the LW hists themselves if the need was there
76 
77  unsigned int fillTimingHistos(const InDetTimeCollection * collection,
78  std::vector<TH2I_LW *> & timing,
79  std::vector<TH2I_LW *> & timing_diff,
80  TProfile_LW * timing_region_overview,
81  TH2I_LW * timing_over,
82  unsigned int (*procFunc)(unsigned int));
83 
84  static unsigned int getBCID(unsigned int bcid);
85  static unsigned int getLVL1ID(unsigned int lvl1id);
86 
87 
88  static unsigned int getPixelHits(const PixelRDO_Container * collection);
89  unsigned int getSctHits(const SCT_RDO_Container * collection );
90 
91  inline int getDetectorId( int robid )
92  {
93  return ( robid & 0xFF0000 ) >> 16;
94  };
95 
96  std::multimap<short, short> m_robMapping;
97  std::map<short, short> m_robRegionMapping;
98 
102 
104 
107 
110 
114 
117 
119 
122 // TH2I_LW * m_diff_PIX_LVL1ID;
123 // TH2I_LW * m_diff_SCT_LVL1ID;
124 // TH2I_LW * m_diff_TRT_LVL1ID;
125 
128 
131 
134 
137 
140 
144 
147 
151 
154 
158 
159  std::vector<TH2I_LW *> m_BCID;
160  std::vector<TH2I_LW *> m_det_diff_BCID;
161 
162  std::vector<TH2I_LW *> m_LVL1ID;
163  std::vector<TH2I_LW *> m_det_diff_LVL1ID;
164 
167 
170 
174 
181 
183 };
184 
185 #endif
InDetGlobalSynchMonTool::m_TRT_BCID
TH2I_LW * m_TRT_BCID
BCID of TRT RODS.
Definition: InDetGlobalSynchMonTool.h:169
InDetGlobalSynchMonTool::m_diff_PIX_BCID
TH2I_LW * m_diff_PIX_BCID
BCID warning status beteeen PIX RODS.
Definition: InDetGlobalSynchMonTool.h:143
InDetGlobalSynchMonTool::m_diff_TRT_BCID
TH2I_LW * m_diff_TRT_BCID
BCID warning status between TRT RODS.
Definition: InDetGlobalSynchMonTool.h:139
InDetGlobalSynchMonTool::m_diff_Overview_BCID
TH2I_LW * m_diff_Overview_BCID
BCID warning status between the detectors and the ROD's of each detector.
Definition: InDetGlobalSynchMonTool.h:133
InDetGlobalSynchMonTool::m_diff_Overview_LVL1ID
TH2I_LW * m_diff_Overview_LVL1ID
Definition: InDetGlobalSynchMonTool.h:121
InDetGlobalSynchMonTool::m_det_diff_LVL1ID
std::vector< TH2I_LW * > m_det_diff_LVL1ID
Definition: InDetGlobalSynchMonTool.h:163
InDetGlobalSynchMonTool::m_TRT_Hits_BCID
TProfile * m_TRT_Hits_BCID
Definition: InDetGlobalSynchMonTool.h:178
InDetGlobalSynchMonTool::getPixelHits
static unsigned int getPixelHits(const PixelRDO_Container *collection)
Definition: InDetGlobalSynchMonTool.cxx:512
TH1I_LW
Definition: TH1I_LW.h:23
TProfile2D
Definition: rootspy.cxx:531
InDetGlobalSynchMonTool::getLVL1ID
static unsigned int getLVL1ID(unsigned int lvl1id)
Definition: InDetGlobalSynchMonTool.cxx:547
InDetGlobalSynchMonTool::~InDetGlobalSynchMonTool
virtual ~InDetGlobalSynchMonTool()
Virtual destructor.
Definition: InDetGlobalSynchMonTool.h:57
InDetRawDataContainer
Definition: InDetRawDataContainer.h:27
InDetGlobalSynchMonTool::fillHistograms
virtual StatusCode fillHistograms()
An inheriting class should either override this function or fillHists().
Definition: InDetGlobalSynchMonTool.cxx:349
TProfile_LW
Definition: TProfile_LW.h:24
x
#define x
XMLtoHeader.count
count
Definition: XMLtoHeader.py:85
InDetGlobalSynchMonTool::initialize
virtual StatusCode initialize()
Definition: InDetGlobalSynchMonTool.cxx:105
InDetGlobalSynchMonTool::getDetectorId
int getDetectorId(int robid)
Definition: InDetGlobalSynchMonTool.h:91
InDetGlobalSynchMonTool::m_Pixel_Hits_BCID
TProfile * m_Pixel_Hits_BCID
Number of hits in the sub-detectors and ID in each BCID.
Definition: InDetGlobalSynchMonTool.h:176
InDetGlobalSynchMonTool::m_robRegionMapping
std::map< short, short > m_robRegionMapping
Definition: InDetGlobalSynchMonTool.h:97
InDetGlobalSynchMonTool::m_diff_SCT_TRT_BCID_evt
TProfile_LW * m_diff_SCT_TRT_BCID_evt
BCID difference between SCT and TRT vs event number.
Definition: InDetGlobalSynchMonTool.h:153
InDetGlobalSynchMonTool::m_diff_SCT_PIX_BCID_evt
TProfile_LW * m_diff_SCT_PIX_BCID_evt
BCID difference between SCT and PIX.
Definition: InDetGlobalSynchMonTool.h:157
InDetGlobalSynchMonTool::bookHistograms
virtual StatusCode bookHistograms()
An inheriting class should either override this function or bookHists().
Definition: InDetGlobalSynchMonTool.cxx:144
InDetGlobalSynchMonTool::m_InDet_Hits_BCID
TProfile * m_InDet_Hits_BCID
Definition: InDetGlobalSynchMonTool.h:179
InDetGlobalMotherTrigMonTool
This tool derives from InDetGlobalMonitorToolBase The Mother tool interfaces to all subtools.
Definition: InDetGlobalMotherTrigMonTool.h:45
trigDumpTimers.timing
def timing(hist)
Definition: trigDumpTimers.py:13
InDetGlobalSynchMonTool::m_diff_SCT_PIX_BCID
TH1I_LW * m_diff_SCT_PIX_BCID
BCID difference between SCT and PIX.
Definition: InDetGlobalSynchMonTool.h:150
InDetGlobalSynchMonTool::fillNTimesFast
static void fillNTimesFast(TH2I_LW *h, double x, double y, int count)
Definition: InDetGlobalSynchMonTool.cxx:498
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
InDetGlobalSynchMonTool::m_diff_Pixel_SCT_TRT_BCID
TH2I_LW * m_diff_Pixel_SCT_TRT_BCID
BCID warning status between SCT and Pixel vs between SCT and TRT.
Definition: InDetGlobalSynchMonTool.h:130
InDetGlobalSynchMonTool::InDetGlobalSynchMonTool
InDetGlobalSynchMonTool(const std::string &type, const std::string &name, const IInterface *parent)
Constructor.
Definition: InDetGlobalSynchMonTool.cxx:65
TrackCollection.h
test_pyathena.parent
parent
Definition: test_pyathena.py:15
InDetGlobalSynchMonTool::m_diff_LVL1ID
TProfile_LW * m_diff_LVL1ID
LVL1ID warning status between different RODS (PIX+SCT+TRT)
Definition: InDetGlobalSynchMonTool.h:120
DataVector< Trk::Track >
InDetGlobalSynchMonTool::m_LVL1ID
std::vector< TH2I_LW * > m_LVL1ID
Definition: InDetGlobalSynchMonTool.h:162
InDetGlobalSynchMonTool::m_n_trt_robs_JO
int m_n_trt_robs_JO
TRT n robs.
Definition: InDetGlobalSynchMonTool.h:109
InDetGlobalSynchMonTool::m_robMapping
std::multimap< short, short > m_robMapping
Definition: InDetGlobalSynchMonTool.h:94
InDetGlobalSynchMonTool::m_PIX_BCID
TH2I_LW * m_PIX_BCID
BCID of PIX RODS.
Definition: InDetGlobalSynchMonTool.h:173
InDetGlobalSynchMonTool::FillTbinLvl1aTrigger
void FillTbinLvl1aTrigger(int x, int y, int count)
InDetTimeCollection
std::vector< std::pair< uint32_t, unsigned int > > InDetTimeCollection
Definition: InDetTimeCollection.h:12
TH2I_LW
Definition: TH2I_LW.h:23
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:195
TProfile
Definition: rootspy.cxx:515
xAOD::bcid
setEventNumber setTimeStamp bcid
Definition: EventInfo_v1.cxx:133
InDetGlobalSynchMonTool::m_diff_BCID
TProfile_LW * m_diff_BCID
BCID warning status between different RODS (PIX+SCT+TRT)
Definition: InDetGlobalSynchMonTool.h:127
InDetGlobalSynchMonTool::getSctHits
unsigned int getSctHits(const SCT_RDO_Container *collection)
Definition: InDetGlobalSynchMonTool.cxx:528
InDetGlobalSynchMonTool::m_diff_SCT_TRT_BCID
TH1I_LW * m_diff_SCT_TRT_BCID
BCID difference between SCT and TRT.
Definition: InDetGlobalSynchMonTool.h:146
y
#define y
h
InDetGlobalSynchMonTool::m_BCID
std::vector< TH2I_LW * > m_BCID
Definition: InDetGlobalSynchMonTool.h:159
InDetGlobalSynchMonTool::m_n_sct_robs_JO
int m_n_sct_robs_JO
SCT n robs.
Definition: InDetGlobalSynchMonTool.h:106
InDetGlobalSynchMonTool::fillTimingHistos
unsigned int fillTimingHistos(const InDetTimeCollection *collection, std::vector< TH2I_LW * > &timing, std::vector< TH2I_LW * > &timing_diff, TProfile_LW *timing_region_overview, TH2I_LW *timing_over, unsigned int(*procFunc)(unsigned int))
Definition: InDetGlobalSynchMonTool.cxx:553
InDetGlobalMotherTrigMonTool.h
python.CaloScaleNoiseConfig.type
type
Definition: CaloScaleNoiseConfig.py:78
InDetGlobalSynchMonTool::m_Tracks_BCID
TProfile * m_Tracks_BCID
Definition: InDetGlobalSynchMonTool.h:180
InDetGlobalSynchMonTool::getBCID
static unsigned int getBCID(unsigned int bcid)
Definition: InDetGlobalSynchMonTool.cxx:542
InDetGlobalSynchMonTool::m_tracks
const TrackCollection * m_tracks
Definition: InDetGlobalSynchMonTool.h:103
InDetGlobalSynchMonTool::m_SCT_BCID
TH2I_LW * m_SCT_BCID
BSID of SCT RODS.
Definition: InDetGlobalSynchMonTool.h:166
InDetGlobalSynchMonTool::m_diff_SCT_BCID
TH2I_LW * m_diff_SCT_BCID
BCID warning status between SCT RODS.
Definition: InDetGlobalSynchMonTool.h:136
InDetGlobalSynchMonTool::m_det_diff_BCID
std::vector< TH2I_LW * > m_det_diff_BCID
Definition: InDetGlobalSynchMonTool.h:160
InDetGlobalSynchMonTool
Synch Monitoring Tool.
Definition: InDetGlobalSynchMonTool.h:49
InDetGlobalSynchMonTool::m_SCT_Hits_BCID
TProfile * m_SCT_Hits_BCID
Definition: InDetGlobalSynchMonTool.h:177
InDetGlobalSynchMonTool::m_n_pix_robs_JO
int m_n_pix_robs_JO
PIX n robs.
Definition: InDetGlobalSynchMonTool.h:112