CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
TagInfoPlotterFactory.cc
Go to the documentation of this file.
13 //#include "DQMOffline/RecoB/interface/Track2IPTagPlotter.h"
14 
15 using namespace std;
16 
17 BaseTagInfoPlotter* TagInfoPlotterFactory::buildPlotter(const string& dataFormatType, const std::string & tagName,
18  const EtaPtBin & etaPtBin, const edm::ParameterSet& pSet,
19  const std::string& folderName, const unsigned int& mc,
20  const bool& wf, DQMStore::IBooker & ibook)
21 {
22  if (dataFormatType == "TrackCounting") {
23  return new TrackCountingTagPlotter(folderName, etaPtBin, pSet, mc, wf, ibook);
24  } else if (dataFormatType == "TrackProbability") {
25  return new TrackProbabilityTagPlotter(folderName, etaPtBin, pSet, mc, wf, ibook);
26  } else if (dataFormatType == "SoftLepton") {
27  return new SoftLeptonTagPlotter(folderName, etaPtBin, pSet, mc, wf, ibook);
28  } else if (dataFormatType == "TrackIP") {
29  return new IPTagPlotter<reco::TrackRefVector,reco::JTATagInfo>(folderName, etaPtBin, pSet, mc, wf, ibook);
30  } else if (dataFormatType == "CandIP") {
31  return new IPTagPlotter<std::vector<reco::CandidatePtr>,reco::JetTagInfo>(folderName, etaPtBin, pSet, mc, wf, ibook);
32  } else if (dataFormatType == "TaggingVariable") {
33  return new TaggingVariablePlotter(folderName, etaPtBin, pSet, mc, wf, ibook);
34  } else if (dataFormatType == "GenericMVA") {
35  return new MVAJetTagPlotter(tagName, etaPtBin, pSet, folderName, mc, wf, ibook);
36  }
37  throw cms::Exception("Configuration")
38  << "BTagPerformanceAnalysis: Unknown ExtendedTagInfo " << dataFormatType << endl
39  << "Choose between TrackCounting, TrackProbability, SoftLepton, TrackIP, CandIP, TaggingVariable, GenericMVA\n";
40 }
BaseTagInfoPlotter * buildPlotter(const std::string &dataFormatType, const std::string &tagName, const EtaPtBin &etaPtBin, const edm::ParameterSet &pSet, const std::string &folderName, const unsigned int &mc, const bool &wf, DQMStore::IBooker &ibook)