|  | ATLAS Offline Software
    | 
 
 
 
Go to the documentation of this file.
    5 #ifndef AthenaMonitoringKernel_HistogramFiller_LumiblockHistogramProvider_h 
    6 #define AthenaMonitoringKernel_HistogramFiller_LumiblockHistogramProvider_h 
   35         std::shared_ptr<HistogramFactory> factory,
 
   59       if (
it!=
m_hists.end() && 
it->second.second!=
nullptr) {
 
   60         return it->second.second;
 
   68       const unsigned lumiPage = 
lumiBlock/historyDepth;
 
   71       auto minLumiBlock = [=](
unsigned lumiPage) { 
return lumiPage * historyDepth; };
 
   72       auto maxLumiBlock = [=](
unsigned lumiPage) { 
return (lumiPage+1) * historyDepth - 1; };
 
   77       if (historyDepth > 1) {
 
   82       m_hists.emplace(maxLumiBlock(lumiPage), std::make_pair(std::move(def), 
hist));
 
   86         const unsigned maxLB = 
it->first;
 
  117     std::map<unsigned, std::pair<HistogramDef, TNamed*>> 
m_hists;
 
  
const HistogramDef m_histDef
Interface of the source of ROOT objects for HistogramFillers.
std::mutex m_mutex
! mutex for the map
Implementation of IHistogramProvider for lumi block based histograms.
std::map< unsigned, std::pair< HistogramDef, TNamed * > > m_hists
Map storing upper end of lumi page (or lumiblock if depth==1) with the corresponding histogram defini...
Represents error occurred during accessing histograms objects.
std::string to_string(const SectorProjector proj)
the internal class used to keep parsed Filler properties
static const unsigned s_deregDelay
Number of lumiblocks before histogram gets deregistered/deleted.
TNamed * histogram() override
Getter of ROOT object.
std::string path
booking path
Generic monitoring tool for athena components.
std::string alias
unique alias for THistSvc
GenericMonitoringTool *const m_gmTool
LumiblockHistogramProvider(GenericMonitoringTool *const gmTool, std::shared_ptr< HistogramFactory > factory, const HistogramDef &histDef)
Constructor.
std::shared_ptr< HistogramFactory > m_factory
int kLBNHistoryDepth
length of lb history