1 #ifndef ValueQuantity_h 2 #define ValueQuantity_h 6 #include "boost/unordered_map.hpp" 72 const std::map<ValueQuantityType, std::string>
name_value = {
326 }
else if (x >
max()) {
338 }
else if (x >
max()) {
348 double min()
override {
return min_value.at(
_type);}
349 double max()
override {
return max_value.at(
_type);}
380 int nbins()
override {
return _flags.size();}
381 double min()
override {
return 0;}
382 double max()
override {
return _flags.size();}
387 std::vector<std::string> vnames;
388 for (std::vector<flag::Flag>::const_iterator
389 it=_flags.begin(); it!=_flags.end(); ++it)
390 vnames.push_back(it->_name);
411 double min()
override {
return 1;}
412 double max()
override {
return _n+1;}
433 _n(n), _binning(binning)
441 int nbins()
override {
return (_n + _binning - 1) / _binning;}
442 double min()
override {
return 1;}
443 double max()
override {
return _n+1;}
447 return (l + _binning - 1) / _binning;
466 int nbins()
override {
return _runs.size();}
467 double min()
override {
return 0;}
468 double max()
override {
return _runs.size();}
472 std::vector<std::string>
labels;
473 for (uint32_t
i=0;
i<_runs.size();
i++)
475 sprintf(name,
"%d", _runs[
i]);
476 labels.push_back(name);
483 for (uint32_t
i=0;
i<_runs.size();
i++)
492 <<
"run number doens't exist " <<
run;
516 int nbins()
override {
return _nevents;}
517 double min()
override {
return 0.5;}
518 double max()
override {
return _nevents+0.5;}
530 {this->
setup(vtypes);}
533 virtual void setup(std::vector<uint32_t>
const& vtypes)
535 std::cout <<
"SIZE = " << vtypes.size() << std::endl;
536 for (uint32_t
i=0;
i<vtypes.size();
i++)
537 _types.insert(std::make_pair((uint32_t)vtypes[
i], i));
541 return _types[(uint32_t)v];
548 int nbins()
override {
return _types.size();}
549 double min()
override {
return 0;}
550 double max()
override {
return _types.size();}
554 typedef boost::unordered_map<uint32_t, int>
TypeMap;
560 std::vector<std::string>
labels(_types.size());
561 std::cout <<
"SIZE = " << _types.size() << std::endl;
562 for(
auto const&
v : _types)
570 std::vector<uint32_t> vtypes;
571 for(
auto const&
p : _types)
573 vtypes.push_back(
p.first);
576 std::sort(vtypes.begin(), vtypes.end());
ValueQuantity(ValueQuantityType type, bool isLog=false)
const std::map< ValueQuantityType, int > nbins_value
virtual void setBits(TH1 *o)
virtual std::string name()
std::string name() override
int getValue(int l) override
LumiSectionCoarse(int n, int binning)
uint32_t getBin(int run) override
FlagQuantity(std::vector< flag::Flag > const &flags)
std::vector< std::string > getLabels() override
uint32_t getBin(int v) override
void setBits(TH1 *o) override
def setup(process, global_tag, zero_tesla=False)
LumiSectionCoarse * makeCopy() override
std::vector< Variable::Flags > flags
virtual void setup(std::vector< uint32_t > const &vtypes)
virtual void setLS(TH1 *o)
int getValue(int run) override
const std::map< ValueQuantityType, double > min_value
uint32_t getBin(int l) override
~ValueQuantity() override
std::string name() override
int getValue(int f) override
FlagQuantity * makeCopy() override
boost::unordered_map< uint32_t, int > TypeMap
std::vector< flag::Flag > _flags
std::string name() override
int getValue(int x) override
int getValue(int v) override
std::string ogtype2string(constants::OrbitGapType type)
void setMax(double x) override
std::vector< std::string > getLabels() override
const std::map< ValueQuantityType, std::string > name_value
EventType * makeCopy() override
void setMax(double x) override
std::string name() override
EventType(std::vector< uint32_t > const &vtypes)
QuantityType type() override
int getValue(int l) override
uint32_t getBin(int l) override
const std::map< ValueQuantityType, double > max_value
std::string name() override
LumiSection * makeCopy() override
~LumiSectionCoarse() override
RunNumber(std::vector< int > runs)
std::vector< std::string > getLabels() override
uint32_t getBin(int f) override
ValueQuantity * makeCopy() override
double getValue(double x) override
std::string name() override