2 #ifndef MEtXYcorrectParameters_h 3 #define MEtXYcorrectParameters_h 26 Definitions(
const std::vector<std::string>& fVar,
const std::vector<std::string>& fParVar,
const std::string& fFormula);
52 Record() : mNvar(0),mMin(0),mMax(0), mParameters(0) {}
53 Record(
unsigned fNvar,
const std::vector<float>& fXMin,
const std::vector<float>& fXMax,
const std::vector<float>& fParameters) : mNvar(fNvar),mMin(fXMin),mMax(fXMax),mParameters(fParameters) {}
56 float xMin(
unsigned fVar)
const {
return mMin[fVar]; }
57 float xMax(
unsigned fVar)
const {
return mMax[fVar]; }
59 float parameter(
unsigned fIndex)
const {
return mParameters[fIndex]; }
60 std::vector<float>
parameters()
const {
return mParameters; }
79 const std::vector<MEtXYcorrectParameters::Record>& fRecords)
85 unsigned size(
unsigned fVar)
const;
86 int binIndex(
const std::vector<float>& fX)
const;
87 int neighbourBin(
unsigned fIndex,
unsigned fVar,
bool fNext)
const;
88 std::vector<float>
binCenters(
unsigned fVar)
const;
98 std::vector<MEtXYcorrectParameters::Record>
mRecords;
123 correctionsShift_.clear();
127 void push_back( key_type
i, value_type
const & j, label_type
const & flav =
"" );
142 void validKeys(std::vector<key_type> &
keys )
const;
148 std::vector<std::string> &
outputs );
150 key_type getShiftMcFlavBin(
std::string const & Flav );
151 key_type getShiftDyFlavBin(
std::string const & Flav );
152 key_type getShiftTTJetsFlavBin(
std::string const & Flav );
153 key_type getShiftWJetsFlavBin(
std::string const & Flav );
154 key_type getShiftDataFlavBin(
std::string const & Flav );
156 static bool isShiftMC( key_type k);
157 static bool isShiftDY( key_type k);
158 static bool isShiftTTJets( key_type k);
159 static bool isShiftWJets( key_type k);
160 static bool isShiftData( key_type k);
166 static std::string findShiftMCflavor( key_type k );
167 static std::string findShiftDYflavor( key_type k );
168 static std::string findShiftTTJetsFlavor( key_type k );
169 static std::string findShiftWJetsFlavor( key_type k );
170 static std::string findShiftDataFlavor( key_type k );
std::string binVar(unsigned fIndex) const
int neighbourBin(unsigned fIndex, unsigned fVar, bool fNext) const
float parameter(unsigned fIndex) const
std::vector< float > mParameters
std::vector< pair_type > collection_type
std::vector< MEtXYcorrectParameters::Record > mRecords
std::pair< key_type, value_type > pair_type
const Definitions & definitions() const
std::vector< float > mMin
float xMax(unsigned fVar) const
unsigned nParameters() const
std::string MetAxis() const
std::vector< unsigned > mParVar
int binIndex(const std::vector< float > &fX) const
float xMiddle(unsigned fVar) const
void printFile(const std::string &fFileName) const
MEtXYcorrectParameters const & operator[](std::string const &label) const
const Record & record(unsigned fBin) const
MEtXYcorrectParametersCollection()
T operator[](int i) const
std::vector< std::string > mBinVar
unsigned parVar(unsigned fIndex) const
const char * levelName(LogLevel)
MEtXYcorrectParameters::Definitions mDefinitions
std::vector< std::string > binVar() const
#define COND_SERIALIZABLE
Record(unsigned fNvar, const std::vector< float > &fXMin, const std::vector< float > &fXMax, const std::vector< float > &fParameters)
bool operator<(DTCELinkId const &lhs, DTCELinkId const &rhs)
std::vector< float > mMax
float xMin(unsigned fVar) const
std::string formula() const
MEtXYcorrectParameters(const MEtXYcorrectParameters::Definitions &fDefinitions, const std::vector< MEtXYcorrectParameters::Record > &fRecords)
std::vector< float > parameters() const
std::vector< unsigned > parVar() const
std::vector< float > binCenters(unsigned fVar) const
MEtXYcorrectParameters value_type
collection_type correctionsShift_