|
ATLAS Offline Software
|
Go to the documentation of this file.
42 for (std::size_t form = 0,
end =
m_cuts.size(); form !=
end; ++ form)
60 : m_outputStream (
"output"),
61 m_hist (0), m_formSvc (0), m_skim (0)
69 AlgSelect (
const std::string& val_outputStream,
const std::string&
cut)
70 : m_outputStream (val_outputStream),
71 m_hist (0), m_formSvc (0), m_skim (0)
76 m_cuts.push_back (
cut);
102 histName (
const std::string& val_histName)
125 return StatusCode::SUCCESS;
143 for (std::size_t form = 0,
end =
m_cuts.size(); form !=
end; ++ form)
146 m_hist->GetXaxis()->SetBinLabel (1 + form,
m_cuts[form].c_str());
155 return StatusCode::SUCCESS;
168 for (std::size_t form = 0; form !=
m_cuts.size() &&
weight != 0; ++ form)
177 myweight =
m_index[form]->value (0);
193 return StatusCode::SUCCESS;
virtual StatusCode initialize()
effects: do everything that needs to be done before running the algorithm, e.g.
void addCut(const std::string &cut)
effects: add another cut guarantee: strong failures: out of memory II requires: !cut....
std::vector< std::string > m_cuts
description: the list of formulas used
virtual void addOutput(TObject *output_swallow)=0
effects: add an object to the output.
virtual StatusCode setupJob(Job &job)
effects: give the algorithm a chance to intialize the job with anything this algorithm needs.
NTupleSvc * m_skim
description: the skimming service we are using
std::string m_histName
description: the name of the cut-flow histogram
const std::string & outputStream() const
description: the name of the output stream guarantee: no-fail invariant: !outputStream....
FormulaSvc * formulas(EL::IWorker *worker)
returns: the formula service for this worker guarantee: strong failures: formula service not configur...
void testInvariant() const
effects: test the invariant of this object guarantee: no-fail
#define RCU_REQUIRE_SOFT(x)
MD::FormulaSvc * m_formSvc
description: the formula service we are using
::StatusCode StatusCode
StatusCode definition for legacy code.
std::string m_outputStream
description: members directly corresponding to accessors
cut
This script demonstrates how to call a C++ class from Python Also how to use PyROOT is shown.
This module defines the arguments passed from the BATCH driver to the BATCH worker.
IWorker * wk() const
description: the worker that is controlling us guarantee: no-fail
ClassImp(EL::AlgSelect) namespace EL
const std::string & histName() const
description: the histogram name guarantee: no-fail / strong failures: out of memory II
virtual StatusCode execute()
effects: process the next event guarantee: basic failures: algorithm dependent rationale: the virtual...
AlgSelect()
effects: standard default constructor guarantee: strong failures: out of memory II rationale: this sh...
void useFormulas(EL::Job &job)
effects: register the formula service for this job guarantee: strong failures: out of memory I
#define RCU_CHANGE_INVARIANT(x)
#define RCU_THROW_MSG(message)
std::vector< const MD::Formula * > m_index
description: the indices to the formulas
void setFilterPassed(bool passed=true)
effects: take the current event if passed is set, otherwise perform a no-op guarantee: no-fail
#define RCU_READ_INVARIANT(x)
TH1 * m_hist
description: the histogram we are filling
NTupleSvc * getNTupleSvc(IWorker *worker, const std::string &outputStream, const std::string &treeName="")
effects: get the skimming algorithm for the given output for this worker guarantee: strong failures: ...
#define RCU_NEW_INVARIANT(x)