CMS 3D CMS Logo

List of all members | Classes | Public Member Functions | Static Public Member Functions | Private Types | Private Attributes
TauDiscriminantCutMultiplexerT< TauType, TauTypeRef, ParentClass > Class Template Reference
Inheritance diagram for TauDiscriminantCutMultiplexerT< TauType, TauTypeRef, ParentClass >:

Classes

struct  DiscriminantCutEntry
 

Public Member Functions

void beginEvent (const edm::Event &event, const edm::EventSetup &eventSetup) override
 
reco::SingleTauDiscriminatorContainer discriminate (const TauTypeRef &) const override
 
 TauDiscriminantCutMultiplexerT (const edm::ParameterSet &pset)
 
 ~TauDiscriminantCutMultiplexerT () override
 

Static Public Member Functions

static void fillDescriptions (edm::ConfigurationDescriptions &descriptions)
 

Private Types

typedef std::map< int, std::vector< std::unique_ptr< DiscriminantCutEntry > > > DiscriminantCutMap
 

Private Attributes

DiscriminantCutMap cuts_
 
edm::FileInPath inputFileName_
 
bool isInitialized_
 
bool loadMVAfromDB_
 
std::string moduleLabel_
 
std::unique_ptr< const TFormula > mvaOutput_normalization_
 
std::string mvaOutputNormalizationName_
 
uint n_raws_
 
int raw_category_idx_ = -1
 
int raw_discriminator_idx_ = -1
 
edm::InputTag toMultiplex_
 
edm::EDGetTokenT< reco::TauDiscriminatorContainertoMultiplex_token
 
edm::Handle< reco::TauDiscriminatorContainertoMultiplexHandle_
 
int verbosity_
 

Detailed Description

template<class TauType, class TauTypeRef, class ParentClass>
class TauDiscriminantCutMultiplexerT< TauType, TauTypeRef, ParentClass >

Definition at line 38 of file TauDiscriminantCutMultiplexer.cc.

Member Typedef Documentation

◆ DiscriminantCutMap

template<class TauType , class TauTypeRef , class ParentClass >
typedef std::map<int, std::vector<std::unique_ptr<DiscriminantCutEntry> > > TauDiscriminantCutMultiplexerT< TauType, TauTypeRef, ParentClass >::DiscriminantCutMap
private

Definition at line 64 of file TauDiscriminantCutMultiplexer.cc.

Constructor & Destructor Documentation

◆ TauDiscriminantCutMultiplexerT()

template<class TauType , class TauTypeRef , class ParentClass >
TauDiscriminantCutMultiplexerT< TauType, TauTypeRef, ParentClass >::TauDiscriminantCutMultiplexerT ( const edm::ParameterSet pset)
explicit

Definition at line 135 of file TauDiscriminantCutMultiplexer.cc.

137  : ParentClass(cfg),
138  moduleLabel_(cfg.getParameter<std::string>("@module_label")),
140  isInitialized_(false) {
141  toMultiplex_ = cfg.getParameter<edm::InputTag>("toMultiplex");
142  toMultiplex_token = this->template consumes<reco::TauDiscriminatorContainer>(toMultiplex_);
143 
144  verbosity_ = cfg.getParameter<int>("verbosity");
145 
146  loadMVAfromDB_ = cfg.getParameter<bool>("loadMVAfromDB");
147  if (!loadMVAfromDB_) {
148  inputFileName_ = cfg.getParameter<edm::FileInPath>("inputFileName");
149  }
150  if (verbosity_)
151  std::cout << moduleLabel_ << " loadMVA = " << loadMVAfromDB_ << std::endl;
152  mvaOutputNormalizationName_ = cfg.getParameter<std::string>("mvaOutput_normalization");
153 
154  // Setup our cut map, first raw values then working points
155  typedef std::vector<edm::ParameterSet> VPSet;
156  typedef std::vector<std::string> VString;
157  typedef std::vector<double> VDouble;
158  VString rawValueConfig = cfg.getParameter<VString>("rawValues");
159  for (uint i = 0; i < rawValueConfig.size(); i++) {
160  if (rawValueConfig[i] == "discriminator")
162  else if (rawValueConfig[i] == "category")
164  else
165  throw cms::Exception("TauDiscriminantCutMultiplexerT")
166  << " Configuration Parameter 'rawValues' containes unknown values. Must be 'discriminator' or 'category'!!\n";
167  }
168  n_raws_ = rawValueConfig.size();
169  VPSet mapping = cfg.getParameter<VPSet>("mapping");
170  for (auto const& mappingEntry : mapping) {
171  unsigned category = mappingEntry.getParameter<uint32_t>("category");
172  std::vector<std::unique_ptr<DiscriminantCutEntry>> cutWPs;
173  std::string categoryname = mappingEntry.getParameter<std::string>("cut");
174  bool localWPs = false;
175  bool wpsAsDouble = false;
176  if (mappingEntry.exists("workingPoints")) {
177  localWPs = true;
178  if (mappingEntry.existsAs<VDouble>("workingPoints")) {
179  wpsAsDouble = true;
180  } else if (mappingEntry.existsAs<VString>("workingPoints")) {
181  wpsAsDouble = false;
182  } else {
183  throw cms::Exception("TauDiscriminantCutMultiplexerT")
184  << " Configuration Parameter 'workingPoints' must be filled with cms.string or cms.double!!\n";
185  }
186  } else if (cfg.exists("workingPoints")) {
187  localWPs = false;
188  if (cfg.existsAs<VDouble>("workingPoints")) {
189  wpsAsDouble = true;
190  } else if (cfg.existsAs<VString>("workingPoints")) {
191  wpsAsDouble = false;
192  } else {
193  throw cms::Exception("TauDiscriminantCutMultiplexerT")
194  << " Configuration Parameter 'workingPoints' must be filled with cms.string or cms.double!!\n";
195  }
196  } else {
197  throw cms::Exception("TauDiscriminantCutMultiplexerT")
198  << " Undefined Configuration Parameter 'workingPoints' !!\n";
199  }
200  if (wpsAsDouble) {
201  VDouble workingPoints;
202  if (localWPs)
203  workingPoints = mappingEntry.getParameter<VDouble>("workingPoints");
204  else
205  workingPoints = cfg.getParameter<VDouble>("workingPoints");
206  for (auto const& wp : workingPoints) {
207  std::unique_ptr<DiscriminantCutEntry> cut{new DiscriminantCutEntry()};
208  cut->cutValue_ = wp;
210  cutWPs.push_back(std::move(cut));
211  }
212  } else {
213  VString workingPoints;
214  if (localWPs)
215  workingPoints = mappingEntry.getParameter<VString>("workingPoints");
216  else
217  workingPoints = cfg.getParameter<VString>("workingPoints");
218  for (auto const& wp : workingPoints) {
219  std::unique_ptr<DiscriminantCutEntry> cut{new DiscriminantCutEntry()};
220  cut->cutName_ = categoryname + wp;
221  std::string cutVariable_string = mappingEntry.getParameter<std::string>("variable");
222  cut->cutVariable_.reset(new StringObjectFunction<TauType>(cutVariable_string));
224  cutWPs.push_back(std::move(cut));
225  }
226  }
227  cuts_[category] = std::move(cutWPs);
228  }
229 
230  verbosity_ = cfg.getParameter<int>("verbosity");
231  if (verbosity_)
232  std::cout << "constructed " << moduleLabel_ << std::endl;
233 }

References taus_updatedMVAIds_cff::category, looper::cfg, gather_cfg::cout, TkAlMuonSelectors_cfi::cut, TauDiscriminantCutMultiplexerT< TauType, TauTypeRef, ParentClass >::cuts_, Exception, mps_fire::i, TauDiscriminantCutMultiplexerT< TauType, TauTypeRef, ParentClass >::inputFileName_, TauDiscriminantCutMultiplexerT< TauType, TauTypeRef, ParentClass >::DiscriminantCutEntry::kFixedCut, TauDiscriminantCutMultiplexerT< TauType, TauTypeRef, ParentClass >::DiscriminantCutEntry::kVariableCut, TauDiscriminantCutMultiplexerT< TauType, TauTypeRef, ParentClass >::loadMVAfromDB_, taus_updatedMVAIds_cff::mapping, TauDiscriminantCutMultiplexerT< TauType, TauTypeRef, ParentClass >::moduleLabel_, eostools::move(), TauDiscriminantCutMultiplexerT< TauType, TauTypeRef, ParentClass >::mvaOutputNormalizationName_, TauDiscriminantCutMultiplexerT< TauType, TauTypeRef, ParentClass >::n_raws_, TauDiscriminantCutMultiplexerT< TauType, TauTypeRef, ParentClass >::raw_category_idx_, TauDiscriminantCutMultiplexerT< TauType, TauTypeRef, ParentClass >::raw_discriminator_idx_, AlCaHLTBitMon_QueryRunRegistry::string, TauDiscriminantCutMultiplexerT< TauType, TauTypeRef, ParentClass >::toMultiplex_, TauDiscriminantCutMultiplexerT< TauType, TauTypeRef, ParentClass >::toMultiplex_token, parallelization::uint, TauDiscriminantCutMultiplexerT< TauType, TauTypeRef, ParentClass >::verbosity_, HistogramManager_cfi::VPSet(), PDWG_TauSkim_cff::workingPoints, and pfClustersFromHGC3DClusters_cfi::wp.

◆ ~TauDiscriminantCutMultiplexerT()

template<class TauType , class TauTypeRef , class ParentClass >
TauDiscriminantCutMultiplexerT< TauType, TauTypeRef, ParentClass >::~TauDiscriminantCutMultiplexerT ( )
override

Definition at line 236 of file TauDiscriminantCutMultiplexer.cc.

236 {}

Member Function Documentation

◆ beginEvent()

template<class TauType , class TauTypeRef , class ParentClass >
void TauDiscriminantCutMultiplexerT< TauType, TauTypeRef, ParentClass >::beginEvent ( const edm::Event event,
const edm::EventSetup eventSetup 
)
override

Definition at line 239 of file TauDiscriminantCutMultiplexer.cc.

240  {
241  if (verbosity_)
242  std::cout << " begin! " << moduleLabel_ << " " << isInitialized_ << std::endl;
243  if (!isInitialized_) {
244  //Only open the file once and we can close it when this routine is done
245  // since all objects gotten from the file will have been copied
246  std::unique_ptr<TFile> inputFile;
247  if (!mvaOutputNormalizationName_.empty()) {
248  if (!loadMVAfromDB_) {
249  inputFile = openInputFile(inputFileName_);
250  mvaOutput_normalization_ = loadObjectFromFile<TFormula>(*inputFile, mvaOutputNormalizationName_);
251  } else {
252  auto temp = loadTFormulaFromDB(
253  es, mvaOutputNormalizationName_, Form("%s_mvaOutput_normalization", moduleLabel_.data()), verbosity_);
255  }
256  }
257  for (auto const& cutWPs : cuts_) {
258  for (auto const& cut : cutWPs.second) {
259  if (cut->mode_ == DiscriminantCutEntry::kVariableCut) {
260  if (!loadMVAfromDB_) {
261  if (not inputFile) {
262  inputFile = openInputFile(inputFileName_);
263  }
264  if (verbosity_)
265  std::cout << "Loading from file" << inputFileName_ << std::endl;
266  cut->cutFunction_ = loadObjectFromFile<TGraph>(*inputFile, cut->cutName_);
267  } else {
268  if (verbosity_)
269  std::cout << "Loading from DB" << std::endl;
270  cut->cutFunction_ = loadTGraphFromDB(es, cut->cutName_, verbosity_);
271  }
272  }
273  }
274  }
275  isInitialized_ = true;
276  }
277 
278  evt.getByToken(toMultiplex_token, toMultiplexHandle_);
279 }

References gather_cfg::cout, TkAlMuonSelectors_cfi::cut, edm::Event::getByToken(), dtResolutionTest_cfi::inputFile, eostools::move(), and groupFilesInBlocks::temp.

◆ discriminate()

template<class TauType , class TauTypeRef , class ParentClass >
reco::SingleTauDiscriminatorContainer TauDiscriminantCutMultiplexerT< TauType, TauTypeRef, ParentClass >::discriminate ( const TauTypeRef &  tau) const
override

Definition at line 282 of file TauDiscriminantCutMultiplexer.cc.

283  {
284  if (verbosity_) {
285  std::cout << "<TauDiscriminantCutMultiplexerT::discriminate>:" << std::endl;
286  std::cout << " moduleLabel = " << moduleLabel_ << std::endl;
287  }
288 
290  result.rawValues.resize(n_raws_);
291  double disc_result = (*toMultiplexHandle_)[tau].rawValues.at(0);
292  if (verbosity_) {
293  std::cout << "disc_result = " << disc_result << std::endl;
294  }
295  if (raw_discriminator_idx_ >= 0)
296  result.rawValues[raw_discriminator_idx_] = disc_result;
298  disc_result = mvaOutput_normalization_->Eval(disc_result);
299  if (verbosity_) {
300  std::cout << "disc_result (normalized) = " << disc_result << std::endl;
301  }
302  }
303  double key_result = 0.0;
304  if ((*toMultiplexHandle_)[tau].rawValues.size() == 2) {
305  key_result = (*toMultiplexHandle_)[tau].rawValues.at(1);
306  if (raw_category_idx_ >= 0)
307  result.rawValues[raw_category_idx_] = key_result;
308  }
309  typename DiscriminantCutMap::const_iterator cutWPsIter = cuts_.find(std::round(key_result));
310 
311  // Return null if it doesn't exist
312  if (cutWPsIter == cuts_.end()) {
313  return result;
314  }
315  // See if the discriminator passes our cuts
316  for (auto const& cutIter : cutWPsIter->second) {
317  bool passesCuts = false;
318  if (cutIter->mode_ == DiscriminantCutEntry::kFixedCut) {
319  passesCuts = (disc_result > cutIter->cutValue_);
320  if (verbosity_) {
321  std::cout << "cutValue (fixed) = " << cutIter->cutValue_ << " --> passesCuts = " << passesCuts << std::endl;
322  }
323  } else if (cutIter->mode_ == DiscriminantCutEntry::kVariableCut) {
324  double cutVariable = (*cutIter->cutVariable_)(*tau);
325  double xMin, xMax, dummy;
326  cutIter->cutFunction_->GetPoint(0, xMin, dummy);
327  cutIter->cutFunction_->GetPoint(cutIter->cutFunction_->GetN() - 1, xMax, dummy);
328  const double epsilon = 1.e-3;
329  if (cutVariable < (xMin + epsilon))
330  cutVariable = xMin + epsilon;
331  else if (cutVariable > (xMax - epsilon))
332  cutVariable = xMax - epsilon;
333  double cutValue = cutIter->cutFunction_->Eval(cutVariable);
334  passesCuts = (disc_result > cutValue);
335  if (verbosity_) {
336  std::cout << "cutValue (@" << cutVariable << ") = " << cutValue << " --> passesCuts = " << passesCuts
337  << std::endl;
338  }
339  }
340  result.workingPoints.push_back(passesCuts);
341  }
342  return result;
343 }

References gather_cfg::cout, geometryDiff::epsilon, PDWG_TauSkim_cff::rawValues, mps_fire::result, metsig::tau, multiplicitycorr_cfi::xMax, and photonAnalyzer_cfi::xMin.

◆ fillDescriptions()

template<class TauType , class TauTypeRef , class ParentClass >
void TauDiscriminantCutMultiplexerT< TauType, TauTypeRef, ParentClass >::fillDescriptions ( edm::ConfigurationDescriptions descriptions)
static

Definition at line 364 of file TauDiscriminantCutMultiplexer.cc.

365  {
366  // recoTauDiscriminantCutMultiplexer
368  desc.add<edm::InputTag>("toMultiplex", edm::InputTag("fixme"));
369  desc.add<int>("verbosity", 0);
370 
371  {
372  edm::ParameterSet pset_mapping;
373  pset_mapping.addParameter<unsigned int>("category", 0);
374  pset_mapping.addParameter<std::string>("cut", "fixme");
375  edm::ParameterSetDescription desc_mapping;
376  desc_mapping.add<unsigned int>("category", 0);
377  desc_mapping.add<std::string>("cut");
378  // it seems the parameter string "variable" exists only when workingPoints are string
379  // see hpsPFTauDiscriminationByVLooseIsolationMVArun2v1DBdR03oldDMwLT in RecoTauTag/Configuration/python/HPSPFTaus_cff.py
380  desc_mapping.addOptional<std::string>("variable")
381  ->setComment("the parameter is required when \"workingPoints\" are string");
382  std::vector<edm::ParameterSet> vpsd_mapping;
383  vpsd_mapping.push_back(pset_mapping);
384  desc.addVPSet("mapping", desc_mapping, vpsd_mapping);
385  }
386 
387  std::vector<std::string> defaultRaws{"discriminator"};
388  desc.add<std::vector<std::string>>("rawValues", defaultRaws);
389  std::vector<double> defaultWP{0.0};
390  desc.addNode(edm::ParameterDescription<std::vector<double>>("workingPoints", defaultWP, true) xor
391  edm::ParameterDescription<std::vector<std::string>>("workingPoints", true));
392  desc.add<edm::FileInPath>("inputFileName", edm::FileInPath("RecoTauTag/RecoTau/data/emptyMVAinputFile"));
393  desc.add<bool>("loadMVAfromDB", true);
394  ParentClass::fillProducerDescriptions(desc); // inherited from the base
395  desc.add<std::string>("mvaOutput_normalization", "");
396  descriptions.add(getDefaultConfigString<TauType>(), desc);
397 }

References edm::ConfigurationDescriptions::add(), edm::ParameterSetDescription::add(), edm::ParameterSet::addParameter(), submitPVResolutionJobs::desc, HLT_FULL_cff::InputTag, and AlCaHLTBitMon_QueryRunRegistry::string.

Member Data Documentation

◆ cuts_

template<class TauType , class TauTypeRef , class ParentClass >
DiscriminantCutMap TauDiscriminantCutMultiplexerT< TauType, TauTypeRef, ParentClass >::cuts_
private

◆ inputFileName_

template<class TauType , class TauTypeRef , class ParentClass >
edm::FileInPath TauDiscriminantCutMultiplexerT< TauType, TauTypeRef, ParentClass >::inputFileName_
private

◆ isInitialized_

template<class TauType , class TauTypeRef , class ParentClass >
bool TauDiscriminantCutMultiplexerT< TauType, TauTypeRef, ParentClass >::isInitialized_
private

Definition at line 73 of file TauDiscriminantCutMultiplexer.cc.

◆ loadMVAfromDB_

template<class TauType , class TauTypeRef , class ParentClass >
bool TauDiscriminantCutMultiplexerT< TauType, TauTypeRef, ParentClass >::loadMVAfromDB_
private

◆ moduleLabel_

template<class TauType , class TauTypeRef , class ParentClass >
std::string TauDiscriminantCutMultiplexerT< TauType, TauTypeRef, ParentClass >::moduleLabel_
private

◆ mvaOutput_normalization_

template<class TauType , class TauTypeRef , class ParentClass >
std::unique_ptr<const TFormula> TauDiscriminantCutMultiplexerT< TauType, TauTypeRef, ParentClass >::mvaOutput_normalization_
private

Definition at line 71 of file TauDiscriminantCutMultiplexer.cc.

◆ mvaOutputNormalizationName_

template<class TauType , class TauTypeRef , class ParentClass >
std::string TauDiscriminantCutMultiplexerT< TauType, TauTypeRef, ParentClass >::mvaOutputNormalizationName_
private

◆ n_raws_

template<class TauType , class TauTypeRef , class ParentClass >
uint TauDiscriminantCutMultiplexerT< TauType, TauTypeRef, ParentClass >::n_raws_
private

◆ raw_category_idx_

template<class TauType , class TauTypeRef , class ParentClass >
int TauDiscriminantCutMultiplexerT< TauType, TauTypeRef, ParentClass >::raw_category_idx_ = -1
private

◆ raw_discriminator_idx_

template<class TauType , class TauTypeRef , class ParentClass >
int TauDiscriminantCutMultiplexerT< TauType, TauTypeRef, ParentClass >::raw_discriminator_idx_ = -1
private

◆ toMultiplex_

template<class TauType , class TauTypeRef , class ParentClass >
edm::InputTag TauDiscriminantCutMultiplexerT< TauType, TauTypeRef, ParentClass >::toMultiplex_
private

◆ toMultiplex_token

template<class TauType , class TauTypeRef , class ParentClass >
edm::EDGetTokenT<reco::TauDiscriminatorContainer> TauDiscriminantCutMultiplexerT< TauType, TauTypeRef, ParentClass >::toMultiplex_token
private

◆ toMultiplexHandle_

template<class TauType , class TauTypeRef , class ParentClass >
edm::Handle<reco::TauDiscriminatorContainer> TauDiscriminantCutMultiplexerT< TauType, TauTypeRef, ParentClass >::toMultiplexHandle_
private

Definition at line 76 of file TauDiscriminantCutMultiplexer.cc.

◆ verbosity_

template<class TauType , class TauTypeRef , class ParentClass >
int TauDiscriminantCutMultiplexerT< TauType, TauTypeRef, ParentClass >::verbosity_
private
TauDiscriminantCutMultiplexerT::raw_category_idx_
int raw_category_idx_
Definition: TauDiscriminantCutMultiplexer.cc:68
taus_updatedMVAIds_cff.category
category
Definition: taus_updatedMVAIds_cff.py:31
PDWG_TauSkim_cff.rawValues
rawValues
Definition: PDWG_TauSkim_cff.py:13
mps_fire.i
i
Definition: mps_fire.py:428
TauDiscriminantCutMultiplexerT::isInitialized_
bool isInitialized_
Definition: TauDiscriminantCutMultiplexer.cc:73
edm::ParameterSetDescription::add
ParameterDescriptionBase * add(U const &iLabel, T const &value)
Definition: ParameterSetDescription.h:95
StringObjectFunction
Definition: StringObjectFunction.h:16
TauDiscriminantCutMultiplexerT::cuts_
DiscriminantCutMap cuts_
Definition: TauDiscriminantCutMultiplexer.cc:65
TkAlMuonSelectors_cfi.cut
cut
Definition: TkAlMuonSelectors_cfi.py:5
metsig::tau
Definition: SignAlgoResolutions.h:49
pfClustersFromHGC3DClusters_cfi.wp
wp
Definition: pfClustersFromHGC3DClusters_cfi.py:20
gather_cfg.cout
cout
Definition: gather_cfg.py:144
HLT_FULL_cff.InputTag
InputTag
Definition: HLT_FULL_cff.py:89353
TauDiscriminantCutMultiplexerT::DiscriminantCutEntry::kVariableCut
Definition: TauDiscriminantCutMultiplexer.cc:61
edm::ParameterSetDescription
Definition: ParameterSetDescription.h:52
TauDiscriminantCutMultiplexerT::inputFileName_
edm::FileInPath inputFileName_
Definition: TauDiscriminantCutMultiplexer.cc:52
TauDiscriminantCutMultiplexerT::loadMVAfromDB_
bool loadMVAfromDB_
Definition: TauDiscriminantCutMultiplexer.cc:51
groupFilesInBlocks.temp
list temp
Definition: groupFilesInBlocks.py:142
parallelization.uint
uint
Definition: parallelization.py:124
geometryDiff.epsilon
int epsilon
Definition: geometryDiff.py:26
photonAnalyzer_cfi.xMin
xMin
Definition: photonAnalyzer_cfi.py:82
edm::FileInPath
Definition: FileInPath.h:64
edm::ConfigurationDescriptions::add
void add(std::string const &label, ParameterSetDescription const &psetDescription)
Definition: ConfigurationDescriptions.cc:57
TauDiscriminantCutMultiplexerT::toMultiplex_token
edm::EDGetTokenT< reco::TauDiscriminatorContainer > toMultiplex_token
Definition: TauDiscriminantCutMultiplexer.cc:77
TauDiscriminantCutMultiplexerT::raw_discriminator_idx_
int raw_discriminator_idx_
Definition: TauDiscriminantCutMultiplexer.cc:67
TauDiscriminantCutMultiplexerT::mvaOutput_normalization_
std::unique_ptr< const TFormula > mvaOutput_normalization_
Definition: TauDiscriminantCutMultiplexer.cc:71
AlCaHLTBitMon_QueryRunRegistry.string
string
Definition: AlCaHLTBitMon_QueryRunRegistry.py:256
edm::ParameterSet
Definition: ParameterSet.h:47
PDWG_TauSkim_cff.workingPoints
workingPoints
Definition: PDWG_TauSkim_cff.py:15
TauDiscriminantCutMultiplexerT::moduleLabel_
std::string moduleLabel_
Definition: TauDiscriminantCutMultiplexer.cc:49
TauDiscriminantCutMultiplexerT::toMultiplex_
edm::InputTag toMultiplex_
Definition: TauDiscriminantCutMultiplexer.cc:75
edm::ParameterSet::addParameter
void addParameter(std::string const &name, T const &value)
Definition: ParameterSet.h:135
dtResolutionTest_cfi.inputFile
inputFile
Definition: dtResolutionTest_cfi.py:14
TauDiscriminantCutMultiplexerT::mvaOutputNormalizationName_
std::string mvaOutputNormalizationName_
Definition: TauDiscriminantCutMultiplexer.cc:70
looper.cfg
cfg
Definition: looper.py:297
TauDiscriminantCutMultiplexerT::toMultiplexHandle_
edm::Handle< reco::TauDiscriminatorContainer > toMultiplexHandle_
Definition: TauDiscriminantCutMultiplexer.cc:76
submitPVResolutionJobs.desc
string desc
Definition: submitPVResolutionJobs.py:251
HistogramManager_cfi.VPSet
def VPSet(*args)
Definition: HistogramManager_cfi.py:401
TauDiscriminantCutMultiplexerT::DiscriminantCutEntry::kFixedCut
Definition: TauDiscriminantCutMultiplexer.cc:61
eostools.move
def move(src, dest)
Definition: eostools.py:511
Exception
Definition: hltDiff.cc:246
multiplicitycorr_cfi.xMax
xMax
Definition: multiplicitycorr_cfi.py:5
TauDiscriminantCutMultiplexerT::verbosity_
int verbosity_
Definition: TauDiscriminantCutMultiplexer.cc:79
mps_fire.result
result
Definition: mps_fire.py:311
dummy
Definition: DummySelector.h:38
edm::ParameterDescription
Definition: ParameterDescription.h:110
taus_updatedMVAIds_cff.mapping
mapping
Definition: taus_updatedMVAIds_cff.py:29
edm::InputTag
Definition: InputTag.h:15
TauDiscriminantCutMultiplexerT::n_raws_
uint n_raws_
Definition: TauDiscriminantCutMultiplexer.cc:66
reco::SingleTauDiscriminatorContainer
Definition: TauDiscriminatorContainer.h:9