11#ifndef IHistogramDefinitionSvc_h
12#define IHistogramDefinitionSvc_h
16#include "GaudiKernel/IInterface.h"
33 virtual std::string
histoType(std::string_view name, std::string_view dirName=
"")
const = 0;
35 virtual std::string
title(std::string_view name, std::string_view dirName=
"")
const =0;
37 virtual unsigned int nBinsX(std::string_view name, std::string_view dirName=
"")
const = 0;
39 virtual unsigned int nBinsY(std::string_view , std::string_view =
"")
const {
return 0; }
41 virtual unsigned int nBinsZ(std::string_view , std::string_view =
"")
const {
return 0; }
45 virtual axesLimits_t yLimits(std::string_view , std::string_view =
"")
const {
return std::make_pair(std::numeric_limits<float>::quiet_NaN(),std::numeric_limits<float>::quiet_NaN());}
49 virtual std::string
xTitle(std::string_view name, std::string_view dirName=
"")
const = 0;
51 virtual std::string
yTitle(std::string_view name, std::string_view dirName=
"")
const = 0;
53 virtual std::string
zTitle(std::string_view name, std::string_view dirName=
"")
const = 0;
Interface class to get the histogram definition for a named histogram in a given directory.
DeclareInterfaceID(IHistogramDefinitionSvc, 1, 0)
virtual SingleHistogramDefinition definition(std::string_view name, std::string_view dirName="") const =0
Return a histogram definition, retrieved by histogram identifier (and directory name,...
virtual std::string title(std::string_view name, std::string_view dirName="") const =0
Return Histogram title by histogram identifier (and directory name, if supplied).
virtual std::string xTitle(std::string_view name, std::string_view dirName="") const =0
Return x-axis title by histogram identifier (and directory name, if supplied).
std::pair< float, float > axesLimits_t
typedef for axes limits, (lower bound, upper bound)
virtual ~IHistogramDefinitionSvc()
Virtual destructor does nothing.
virtual std::string histoType(std::string_view name, std::string_view dirName="") const =0
Return Histogram type (TH1, TH2 etc) by histogram identifier (and directory name, if supplied).
virtual axesLimits_t yLimits(std::string_view, std::string_view="") const
Return y axes (lo,hi) by histogram identifier (and directory name, if supplied). Default returns (nan...
virtual axesLimits_t zLimits(std::string_view name, std::string_view dirName="") const =0
Return z axes (lo,hi) by histogram identifier (and directory name, if supplied).
virtual std::string yTitle(std::string_view name, std::string_view dirName="") const =0
Return y-axis title by histogram identifier (and directory name, if supplied).
Formats
Format of the data source holding the histogram definition.
virtual unsigned int nBinsZ(std::string_view, std::string_view="") const
Return number of z bins by histogram identifier (and directory name, if supplied); default returns 0 ...
virtual std::string zTitle(std::string_view name, std::string_view dirName="") const =0
Return z-axis title by histogram identifier (and directory name, if supplied).
virtual unsigned int nBinsY(std::string_view, std::string_view="") const
Return number of y bins by histogram identifier (and directory name, if supplied); default returns 0 ...
virtual unsigned int nBinsX(std::string_view name, std::string_view dirName="") const =0
Return number of x bins by histogram identifier (and directory name, if supplied).
virtual axesLimits_t xLimits(std::string_view name, std::string_view dirName="") const =0
Return x axes (lo,hi) by histogram identifier (and directory name, if supplied).
Almost-a-struct for holding the single histogram definition.