CMS 3D CMS Logo

Classes | Public Member Functions | Public Attributes

TaggingVariablePlotter::VariableConfig Struct Reference

List of all members.

Classes

struct  Plot

Public Member Functions

 VariableConfig (const std::string &name, const edm::ParameterSet &pSet, const bool &update, const std::string &category, const std::string &label, const bool &mc)

Public Attributes

std::string label
bool logScale
double max
double min
unsigned int nBins
std::vector< Plotplots
reco::TaggingVariableName var

Detailed Description

Definition at line 42 of file TaggingVariablePlotter.h.


Constructor & Destructor Documentation

TaggingVariablePlotter::VariableConfig::VariableConfig ( const std::string &  name,
const edm::ParameterSet pSet,
const bool &  update,
const std::string &  category,
const std::string &  label,
const bool &  mc 
)

Definition at line 7 of file TaggingVariablePlotter.cc.

References category(), Exception, edm::ParameterSet::exists(), edm::ParameterSet::getParameter(), TaggingVariablePlotter::VariableConfig::Plot::histo, TaggingVariablePlotter::VariableConfig::Plot::index, label, reco::btau::lastTaggingVariable, logScale, max, min, nBins, EcalCondTools::plot(), plots, reco::TaggingVariableDescription, update, and var.

                                                                             :
        var(getTaggingVariableName(name)),
        nBins(pSet.getParameter<unsigned int>("nBins")),
        min(pSet.getParameter<double>("min")),
        max(pSet.getParameter<double>("max"))
{
        if (var == btau::lastTaggingVariable)
                throw cms::Exception("Configuration")
                        << "Tagging variable \"" << name
                        << "\" does not exist." << endl;

        if (pSet.exists("logScale"))
                logScale = pSet.getParameter<bool>("logScale");
        else
                logScale = false;

        std::vector<unsigned int> indices;
        if (pSet.exists("indices"))
                indices = pSet.getParameter< vector<unsigned int> >("indices");
        else
                indices.push_back(0);

        for(std::vector<unsigned int>::const_iterator iter = indices.begin();
            iter != indices.end(); ++iter) {
                Plot plot;
                plot.histo.reset(new FlavourHistograms<double>(
                                                               name + (*iter ? Form("%d", *iter) : "")
                                                               + (category.empty() ? ""
                                                                  : ("_" + category)),
                        TaggingVariableDescription[var], nBins, min, max,
                        false, logScale, true, "b", update,label,mc));
                plot.index = *iter;
                plots.push_back(plot);
        }
}

Member Data Documentation

Definition at line 57 of file TaggingVariablePlotter.h.

Referenced by VariableConfig().

Definition at line 49 of file TaggingVariablePlotter.h.

Referenced by VariableConfig().

Definition at line 48 of file TaggingVariablePlotter.h.

Referenced by VariableConfig().

Definition at line 48 of file TaggingVariablePlotter.h.

Referenced by VariableConfig().

Definition at line 47 of file TaggingVariablePlotter.h.

Referenced by VariableConfig().

Definition at line 56 of file TaggingVariablePlotter.h.

Referenced by VariableConfig().

Definition at line 46 of file TaggingVariablePlotter.h.

Referenced by VariableConfig().