Common base class for variable processors. More...
#include <VarProcessor.h>
Classes | |
class | Config |
Helper class for discriminator computer set-up procedure. More... | |
class | ConfigCtx |
class | ConfIterator |
Iterator to loop over the input/output variable configuration. More... | |
struct | Dummy |
class | LoopCtx |
Hold context information for looping processors. More... | |
struct | ValueIterator |
Public Types | |
enum | LoopStatus { kStop, kNext, kReset, kSkip } |
typedef Dummy * | PluginFunctionPrototype() |
Public Member Functions | |
void | configure (ConfigCtx &config) |
called from the discriminator computer to configure processor More... | |
void | deriv (double *input, int *conf, double *output, int *outConf, int *loop, LoopCtx &ctx, unsigned int offset, unsigned int in, unsigned int out, std::vector< double > &deriv) const |
run the processor evaluation pass on this processor and compute derivatives More... | |
void | eval (double *input, int *conf, double *output, int *outConf, int *loop, LoopCtx &loopCtx, unsigned int offset) const |
run the processor evaluation pass on this processor More... | |
virtual LoopStatus | loop (double *output, int *outConf, unsigned int nOutput, LoopCtx &ctx, unsigned int &nOffset) const |
virtual | ~VarProcessor () |
Public Member Functions inherited from PhysicsTools::ProcessRegistry< Base_t, CalibBase_t, Parent_t >::Factory | |
template<> | |
VarProcessor * | create (const char *name, const Calibration::VarProcessor *calib, const MVAComputer *parent) |
template<> | |
VarProcessor * | create (const char *, const Calibration::VarProcessor *, const MVAComputer *) |
Protected Types | |
typedef ProcessRegistry< VarProcessor, Calibration::VarProcessor, const MVAComputer > | Registry |
Protected Member Functions | |
virtual void | configure (ConfIterator iter, unsigned int n)=0 |
virtual configure method, implemented in actual processor More... | |
virtual ConfigCtx::Context * | configureLoop (ConfigCtx::Context *ctx, ConfigCtx::iterator begin, ConfigCtx::iterator cur, ConfigCtx::iterator end) |
virtual loop configure method More... | |
virtual std::vector< double > | deriv (ValueIterator iter, unsigned int n) const |
virtual derivative evaluation method, implemented in actual processor More... | |
virtual void | eval (ValueIterator iter, unsigned int n) const =0 |
virtual evaluation method, implemented in actual processor More... | |
VarProcessor (const char *name, const Calibration::VarProcessor *calib, const MVAComputer *computer) | |
Protected Attributes | |
const MVAComputer * | computer |
Private Attributes | |
BitSet | inputVars |
bit set to select the input variables to be passed to this processor More... | |
unsigned int | nInputVars |
Additional Inherited Members | |
Static Public Member Functions inherited from PhysicsTools::ProcessRegistry< Base_t, CalibBase_t, Parent_t >::Factory | |
static Base_t * | create (const char *name, const CalibBase_t *calib, Parent_t *parent=0) |
Common base class for variable processors.
This base class for variable processors manages the common interface to the global discriminator class and how the individual variable processors are interconnected.
Definition at line 36 of file VarProcessor.h.
typedef Dummy* PhysicsTools::VarProcessor::PluginFunctionPrototype() |
Definition at line 141 of file VarProcessor.h.
|
protected |
Definition at line 313 of file VarProcessor.h.
|
virtual |
Definition at line 42 of file VarProcessor.cc.
References inputVars, and nInputVars.
|
protected |
Definition at line 39 of file VarProcessor.cc.
void PhysicsTools::VarProcessor::configure | ( | ConfigCtx & | config | ) |
called from the discriminator computer to configure processor
Definition at line 47 of file VarProcessor.cc.
References DMR_cfg::config, inputVars, PhysicsTools::BitSet::iter(), loop(), nInputVars, and PhysicsTools::BitSet::size().
Referenced by PhysicsTools::MVAComputer::setup().
|
protectedpure virtual |
virtual configure method, implemented in actual processor
|
protectedvirtual |
virtual loop configure method
Definition at line 74 of file VarProcessor.cc.
void PhysicsTools::VarProcessor::deriv | ( | double * | input, |
int * | conf, | ||
double * | output, | ||
int * | outConf, | ||
int * | loop, | ||
LoopCtx & | ctx, | ||
unsigned int | offset, | ||
unsigned int | in, | ||
unsigned int | out, | ||
std::vector< double > & | deriv | ||
) | const |
run the processor evaluation pass on this processor and compute derivatives
Definition at line 105 of file VarProcessor.cc.
References cms::cuda::assert(), gather_cfg::cout, relativeConstraints::empty, eval(), ntuplemaker::fill, mps_fire::i, recoMuon::in, input, inputVars, createfilelist::int, PhysicsTools::BitSet::iter(), dqmiolumiharvest::j, dqmdumpme::k, loop(), visualization-live-secondInstance_cfg::m, makeMuonMisalignmentScenario::matrix, dqmiodumpmetadata::n, nInputVars, hltrates_dqm_sourceclient-live_cfg::offset, MillePedeFileConverter_cfg::out, convertSQLitetoXML_cfg::output, AlCaHLTBitMon_ParallelJobs::p, submitPVResolutionJobs::q, findQualityFiles::size, AlCaHLTBitMon_QueryRunRegistry::string, and edm::typeDemangle().
|
inlineprotectedvirtual |
virtual derivative evaluation method, implemented in actual processor
Definition at line 330 of file VarProcessor.h.
|
inline |
run the processor evaluation pass on this processor
Definition at line 114 of file VarProcessor.h.
References input, inputVars, PhysicsTools::BitSet::iter(), loop(), nInputVars, hltrates_dqm_sourceclient-live_cfg::offset, and convertSQLitetoXML_cfg::output.
Referenced by deriv().
|
protectedpure virtual |
virtual evaluation method, implemented in actual processor
|
inlinevirtual |
Definition at line 134 of file VarProcessor.h.
References kStop.
Referenced by configure(), deriv(), and eval().
|
protected |
Definition at line 333 of file VarProcessor.h.
|
private |
bit set to select the input variables to be passed to this processor
Definition at line 337 of file VarProcessor.h.
Referenced by configure(), deriv(), eval(), and ~VarProcessor().
|
private |
Definition at line 338 of file VarProcessor.h.
Referenced by configure(), deriv(), eval(), and ~VarProcessor().