|
ATLAS Offline Software
|
Go to the documentation of this file.
11 #include "CaloGeoHelpers/CaloSampling.h"
20 m_bool_pedestalMon(false),
21 m_bool_bcidtoolMon(false)
79 bool passBeamBackgroundRemoval = 0;
81 if(
sc.isFailure() || !ifPass)
return StatusCode::SUCCESS;
85 int lumiBlock = ctx.eventID().lumi_block();
86 int bcid = ctx.eventID().bunch_crossing_id();
88 bool thisEvent_bool_pedestalMon =
false;
89 bool thisEvent_bool_bcidtoolMon =
false;
94 ATH_MSG_WARNING(
"Failed to retrieve Bunch Crossing data, no monitoring in this event");
95 return StatusCode::SUCCESS;
101 if(!bunchCrossing->
isInTrain(
bcid)) thisEvent_bool_pedestalMon =
true;
110 ATH_MSG_DEBUG(thisEvent_bool_pedestalMon<<
" "<<thisEvent_bool_bcidtoolMon);
112 if (not (thisEvent_bool_pedestalMon or thisEvent_bool_bcidtoolMon))
return sc;
116 if(!cellCont.isValid() ) {
122 std::vector<std::vector<float>> sum_partition_eta;
130 sum_partition_eta[iPart][
iEta] = 0.;
137 for ( ;
it!=it_e;++
it) {
143 double eta =
cell->caloDDE()->eta_raw();
145 int partThisAlgo = 0;
161 if (thisEvent_bool_pedestalMon ) {
177 if (thisEvent_bool_bcidtoolMon ) {
def retrieve(aClass, aKey=None)
StatusCode checkFilters(bool &ifPass, bool &passBeamBackgroundRemoval, const std::string &MonGroupName, const EventContext &ctx) const
Const iterator class for DataVector/DataList.
std::vector< std::vector< int > > m_histoGroups
SG::ReadCondHandleKey< BunchCrossingCondData > m_bcDataKey
Gaudi::Property< std::vector< float > > m_etaMax
virtual StatusCode initialize()
initialize
bool is_hec(const Identifier id) const
test if the id belongs to the HEC
CaloCluster_v1 CaloCluster
Define the latest version of the calorimeter cluster class.
const ServiceHandle< StoreGateSvc > & detStore() const
The standard StoreGateSvc/DetectorStore Returns (kind of) a pointer to the StoreGateSvc.
std::vector< float > m_inv_etaBinWidth
virtual StatusCode fillHistograms(const EventContext &ctx) const override final
adds event to the monitoring histograms
bool is_em(const Identifier id) const
test if the id belongs to LArEM
setSAddress setEtaMS setDirPhiMS setDirZMS setBarrelRadius setEndcapAlpha setEndcapRadius setInterceptInner setEtaMap etaBin
Gaudi::Property< std::vector< uint > > m_nbOfEtaBins
Gaudi::Property< int > m_bcidtoolMon_BCIDmax
bool is_fcal(const Identifier id) const
test if the id belongs to the FCAL - true also for MiniFCAL
::StatusCode StatusCode
StatusCode definition for legacy code.
@ BunchCrossings
Distance in units of 25 nanoseconds.
Gaudi::Property< std::vector< std::string > > m_partNames
const CaloCell_ID * m_calo_id
void fill(const ToolHandle< GenericMonitoringTool > &groupHandle, std::vector< std::reference_wrapper< Monitored::IMonitoredVariable >> &&variables) const
Fills a vector of variables to a group by reference.
StatusCode initialize(bool used=true)
If this object is used as a property, then this should be called during the initialize phase.
int distanceFromFront(const bcid_type bcid, const BunchDistanceType type=NanoSec) const
The distance of the specific bunch crossing from the front of the train.
ToolHandleArray< GenericMonitoringTool > m_tools
Array of Generic Monitoring Tools.
std::vector< float > m_etaBinWidth
StatusCode initialize(bool used=true)
setEventNumber setTimeStamp bcid
Wrapper to avoid constant divisions when using units.
virtual float lbAverageInteractionsPerCrossing(const EventContext &ctx=Gaudi::Hive::currentContext()) const
Calculate the average mu, i.e.
virtual StatusCode initialize() override final
initialize
bool isInTrain(const bcid_type bcid) const
Function deciding if a given bunch crossing is in a filled train.
SG::ReadHandleKey< CaloCellContainer > m_cellContainerKey
Data object for each calorimeter readout cell.
Gaudi::Property< std::string > m_MonGroupName
#define ATH_MSG_WARNING(x)
std::vector< int > m_partMap
CaloBaselineMonAlg(const std::string &name, ISvcLocator *pSvcLocator)
Gaudi::Property< int > m_pedestalMon_BCIDmin
Declare a monitored scalar variable.
Gaudi::Property< std::vector< float > > m_etaMin
setScale setgFexType iEta