ATLAS Offline Software
DQTDetSynchMonAlg.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 // ********************************************************************
6 //
7 // NAME: DQTDetSynchMonAlg.h
8 // PACKAGE: DataQualityTools
9 //
10 // AUTHOR: Peter Onyisi
11 // following original by Luca Fiorini <Luca.Fiorini@cern.ch>
12 //
13 //
14 // ********************************************************************
15 #ifndef DQTDetSynchMonAlg_H
16 #define DQTDetSynchMonAlg_H
17 
18 #include <set>
19 #include "GaudiKernel/ToolHandle.h"
20 #include <stdint.h>
21 #include "TH1.h"
22 #include "TH2.h"
23 #include "LWHists/TProfile_LW.h"
30 
32 
33 // MagField cache
36 
37 
38 class TProfile;
39 
41 {
42 
43  public:
44 
45  DQTDetSynchMonAlg( const std::string& name, ISvcLocator* pSvcLocator );
46 
47  virtual ~DQTDetSynchMonAlg();
48 
49  virtual StatusCode initialize() override;
50 
51  virtual StatusCode fillHistograms( const EventContext& ctx ) const override;
52  uint32_t findid(const std::multiset<uint32_t>& mset) const;
53  float findfrac(const std::multiset<uint32_t>& mset, uint16_t ctpid) const;
54 
55 private:
56 
57  Gaudi::Property<Int_t> m_solenoidPositionX { this, "SolenoidPositionX", 0 };
58  Gaudi::Property<Int_t> m_solenoidPositionY { this, "SolenoidPositionY", 10 };
59  Gaudi::Property<Int_t> m_solenoidPositionZ { this, "SolenoidPositionZ", 0 };
60  Gaudi::Property<Int_t> m_toroidPositionX { this, "ToroidPositionX", 0 };
61  Gaudi::Property<Int_t> m_toroidPositionY { this, "ToroidPositionY", 6000 };
62  Gaudi::Property<Int_t> m_toroidPositionZ { this, "ToroidPositionZ", 0 };
63  Gaudi::Property<bool> m_doRPC { this, "doRPC", true };
64  Gaudi::Property<bool> m_run2Compat { this, "run2Compat", false, "Make histograms with Run 2 naming" };
65 
66  // some strings so we don't need to do string manipulation every event
67  static const int NDETS = 7;
68  std::vector<std::string> m_diffnamevec;
69 
70  // storegate keys
72  { this, "InDetTimeCollectionKeys", {"TRT_BCID", "SCT_BCID", "PixelBCID", "TRT_LVL1ID", "SCT_LVL1ID", "PixelLVL1ID"} } ;
74  { this, "LArFebHeaderKey", "LArFebHeader" };
76  { this, "TileDigitsContainerKey", "TileDigitsFlt" };
78  { this, "RpcPadContainerKey", "RPCPAD" };
80  this,
81  "AtlasFieldCacheCondObj",
82  "fieldCondObj",
83  "Name of the Magnetic Field conditions object key"
84  };
85 
86 };
87 
88 #endif
ReadHandleKey.h
Property holding a SG store/key/clid from which a ReadHandle is made.
DQTDetSynchMonAlg::m_solenoidPositionY
Gaudi::Property< Int_t > m_solenoidPositionY
Definition: DQTDetSynchMonAlg.h:58
DQTDetSynchMonAlg::m_toroidPositionZ
Gaudi::Property< Int_t > m_toroidPositionZ
Definition: DQTDetSynchMonAlg.h:62
DQTDetSynchMonAlg::m_doRPC
Gaudi::Property< bool > m_doRPC
Definition: DQTDetSynchMonAlg.h:63
DQTDetSynchMonAlg
Definition: DQTDetSynchMonAlg.py:1
DQTDetSynchMonAlg::m_LArFebHeaderContainerKey
SG::ReadHandleKey< LArFebHeaderContainer > m_LArFebHeaderContainerKey
Definition: DQTDetSynchMonAlg.h:74
DQTDetSynchMonAlg::initialize
virtual StatusCode initialize() override
initialize
Definition: DQTDetSynchMonAlg.cxx:53
xAOD::uint32_t
setEventNumber uint32_t
Definition: EventInfo_v1.cxx:127
AtlasFieldCacheCondObj.h
DQTDetSynchMonAlg::NDETS
static const int NDETS
Definition: DQTDetSynchMonAlg.h:67
DQTDetSynchMonAlg::m_toroidPositionY
Gaudi::Property< Int_t > m_toroidPositionY
Definition: DQTDetSynchMonAlg.h:61
SG::HandleKeyArray
Definition: StoreGate/StoreGate/HandleKeyArray.h:38
TProfile_LW.h
DQTDetSynchMonAlg::m_solenoidPositionX
Gaudi::Property< Int_t > m_solenoidPositionX
Definition: DQTDetSynchMonAlg.h:57
DQTDetSynchMonAlg::m_InDetTimeCollectionKeys
SG::ReadHandleKeyArray< InDetTimeCollection > m_InDetTimeCollectionKeys
Definition: DQTDetSynchMonAlg.h:72
DQTDetSynchMonAlg::~DQTDetSynchMonAlg
virtual ~DQTDetSynchMonAlg()
Definition: DQTDetSynchMonAlg.cxx:47
SG::ReadHandleKey< LArFebHeaderContainer >
DQTDetSynchMonAlg::m_solenoidPositionZ
Gaudi::Property< Int_t > m_solenoidPositionZ
Definition: DQTDetSynchMonAlg.h:59
AthMonitorAlgorithm
Base class for Athena Monitoring Algorithms.
Definition: AthMonitorAlgorithm.h:36
xAOD::uint16_t
setWord1 uint16_t
Definition: eFexEMRoI_v1.cxx:88
TileDigitsContainer.h
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
AthMonitorAlgorithm.h
DQTDetSynchMonAlg::m_run2Compat
Gaudi::Property< bool > m_run2Compat
Definition: DQTDetSynchMonAlg.h:64
AtlasFieldCache.h
DQTDetSynchMonAlg::m_fieldCacheCondObjInputKey
SG::ReadCondHandleKey< AtlasFieldCacheCondObj > m_fieldCacheCondObjInputKey
Definition: DQTDetSynchMonAlg.h:79
DQTDetSynchMonAlg::fillHistograms
virtual StatusCode fillHistograms(const EventContext &ctx) const override
adds event to the monitoring histograms
Definition: DQTDetSynchMonAlg.cxx:64
DQTDetSynchMonAlg::m_diffnamevec
std::vector< std::string > m_diffnamevec
Definition: DQTDetSynchMonAlg.h:68
DQTDetSynchMonAlg::m_RpcPadContainerKey
SG::ReadHandleKey< RpcPadContainer > m_RpcPadContainerKey
Definition: DQTDetSynchMonAlg.h:78
LArFebHeaderContainer.h
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:195
TProfile
Definition: rootspy.cxx:515
EventInfo.h
SG::ReadCondHandleKey< AtlasFieldCacheCondObj >
DQTDetSynchMonAlg::m_toroidPositionX
Gaudi::Property< Int_t > m_toroidPositionX
Definition: DQTDetSynchMonAlg.h:60
DQTDetSynchMonAlg::DQTDetSynchMonAlg
DQTDetSynchMonAlg(const std::string &name, ISvcLocator *pSvcLocator)
Definition: DQTDetSynchMonAlg.cxx:31
DQTDetSynchMonAlg::findid
uint32_t findid(const std::multiset< uint32_t > &mset) const
Definition: DQTDetSynchMonAlg.cxx:422
DQTDetSynchMonAlg::m_TileDigitsContainerKey
SG::ReadHandleKey< TileDigitsContainer > m_TileDigitsContainerKey
Definition: DQTDetSynchMonAlg.h:76
RpcPadContainer.h
InDetTimeCollection.h
DQTDetSynchMonAlg::findfrac
float findfrac(const std::multiset< uint32_t > &mset, uint16_t ctpid) const
Definition: DQTDetSynchMonAlg.cxx:449