DAS  3.0
Das Analysis System
applyDimuonTriggerStrategy.cc File Reference
#include <cassert>
#include <cstdlib>
#include <iostream>
#include <filesystem>
#include <vector>
#include "Core/Objects/interface/Event.h"
#include "Core/Objects/interface/Lepton.h"
#include "Core/CommonTools/interface/binnings.h"
#include "Core/CommonTools/interface/DASOptions.h"
#include "Core/CommonTools/interface/GenericSFApplier.h"
#include "Core/CommonTools/interface/toolbox.h"
#include <TFile.h>
#include <TH1.h>
#include <TString.h>
#include "Math/VectorUtil.h"
#include <darwin.h>
#include "Core/Muons/interface/toolbox.h"
+ Include dependency graph for applyDimuonTriggerStrategy.cc:

Classes

class  TriggerApplier
 

Namespaces

 DAS
 
 DAS::Muon
 

Functions

bool PassTriggerSelection (const Trigger &trg, const vector< RecMuon > &recMuons, int year)
 
void applyDimuonTriggerStrategy (const vector< fs::path > &inputs, const fs::path &output, const pt::ptree &config, const int steering, const DT::Slice slice={1, 0})
 
int main (int argc, char *argv[])
 

Function Documentation

◆ main()

int main ( int  argc,
char *  argv[] 
)
181 {
182  try {
184 
185  vector<fs::path> inputs;
186  fs::path output;
187 
188  auto options = DAS::Options(
189  "Apply scale factors for the `HLT_Mu1?_TrkIsoVVL_Mu?_TrkIsoVVL_DZ_Mass*` "
190  "triggers. For UL, two working points are available: choose the tight WP "
191  "for tight ID & ISO; or medium WP for medium ID & ISO; else do not use any.",
193  options.inputs("inputs", &inputs, "input ROOT file(s) or directory")
194  .output("output", &output, "output ROOT file")
195  .arg<string>("efficiency", "corrections.muons.trigger_eff",
196  "`/path/to/file.root:histname` "
197  "(`/dev/null` for the filename to only apply selection)");
198  const auto& config = options(argc, argv);
199  const auto& slice = options.slice();
200  const int steering = options.steering();
201 
202  DAS::Muon::applyDimuonTriggerStrategy(inputs, output, config, steering, slice);
203  }
204  catch (boost::exception& e) {
205  DE::Diagnostic(e);
206  return EXIT_FAILURE;
207  }
208 
209  return EXIT_SUCCESS;
210 }
Darwin::Tools::fill
@ fill
activate -f to fill the tree
Definition: Options.h:27
DYToLL_M-50_13TeV_pythia8_cff_GEN_SIM_RECOBEFMIX_DIGI_L1_DIGI2RAW_L1Reco_RECO.options
options
Definition: DYToLL_M-50_13TeV_pythia8_cff_GEN_SIM_RECOBEFMIX_DIGI_L1_DIGI2RAW_L1Reco_RECO.py:41
Darwin::Exceptions::Diagnostic
void Diagnostic(const boost::exception &e)
Definition: exceptions.h:116
Darwin::Tools::split
@ split
activate -k and -j to define slice
Definition: Options.h:26
Darwin::Tools::syst
@ syst
activate -s to systematic uncertainties
Definition: Options.h:29
DAS::Muon::applyDimuonTriggerStrategy
void applyDimuonTriggerStrategy(const vector< fs::path > &inputs, const fs::path &output, const pt::ptree &config, const int steering, const DT::Slice slice={1, 0})
Definition: applyDimuonTriggerStrategy.cc:124
Darwin::Tools::StandardInit
void StandardInit()
Definition: FileUtils.cc:25
Ntupliser_cfg.config
config
Definition: Ntupliser_cfg.py:260
jercExample.inputs
def inputs
Definition: jercExample.py:118
DAS::Options
Darwin::Tools::Options Options(const char *, int=Darwin::Tools::none)
Constructs Darwin options with the correct commit information.
Definition: DASOptions.cc:14