![]() |
Rivet
3.1.0
|
Common base class for Projection and Analysis, used for internal polymorphism. More...
#include <ProjectionApplier.hh>
Public Member Functions | |
ProjectionApplier () | |
Constructor. | |
void | markAsOwned () const |
Mark this object as owned by a proj-handler. | |
Metadata functions | |
virtual std::string | name () const =0 |
Get the name of this Projection or Analysis class. | |
Projection "getting" functions | |
std::set< ConstProjectionPtr > | getProjections () const |
Get the contained projections, including recursion. | |
bool | hasProjection (const std::string &name) const |
Does this applier have a projection registered under the name name? | |
template<typename PROJ > | |
const PROJ & | getProjection (const std::string &name) const |
template<typename PROJ > | |
const PROJ & | get (const std::string &name) const |
const Projection & | getProjection (const std::string &name) const |
Projection applying functions | |
template<typename PROJ > | |
const PROJ & | applyProjection (const Event &evt, const Projection &proj) const |
Apply the supplied projection on event evt. More... | |
template<typename PROJ > | |
const PROJ & | apply (const Event &evt, const Projection &proj) const |
template<typename PROJ > | |
const PROJ & | applyProjection (const Event &evt, const PROJ &proj) const |
Apply the supplied projection on event evt. More... | |
template<typename PROJ > | |
const PROJ & | apply (const Event &evt, const PROJ &proj) const |
template<typename PROJ > | |
const PROJ & | applyProjection (const Event &evt, const std::string &name) const |
template<typename PROJ > | |
const PROJ & | apply (const Event &evt, const std::string &name) const |
template<typename PROJ > | |
const PROJ & | apply (const std::string &name, const Event &evt) const |
Protected Member Functions | |
Log & | getLog () const |
ProjectionHandler & | getProjHandler () const |
Get a reference to the ProjectionHandler for this thread. | |
Projection registration functions | |
template<typename PROJ > | |
const PROJ & | declareProjection (const PROJ &proj, const std::string &name) |
Register a contained projection. More... | |
template<typename PROJ > | |
const PROJ & | declare (const PROJ &proj, const std::string &name) |
Register a contained projection (user-facing version) More... | |
template<typename PROJ > | |
const PROJ & | declare (const std::string &name, const PROJ &proj) |
Register a contained projection (user-facing, arg-reordered version) More... | |
Common base class for Projection and Analysis, used for internal polymorphism.
Empty interface used for storing Projection and Analysis pointers in the same container (used by the ProjectionHandler)
|
inline |
Apply the supplied projection on event evt (user-facing alias).
Referenced by Rivet::ALICE::V0Trigger< MODE >::project().
|
inline |
Apply the supplied projection on event evt (user-facing alias).
|
inline |
Apply the supplied projection on event evt (user-facing alias).
References name().
|
inline |
Apply the supplied projection on event evt (convenience arg-reordering alias).
References name().
|
inline |
Apply the supplied projection on event evt.
|
inline |
Apply the supplied projection on event evt.
|
inline |
Apply the named projection on event evt.
|
inlineprotected |
Register a contained projection (user-facing version)
References declareProjection().
Referenced by Rivet::CentralityProjection::add(), Rivet::VetoedFinalState::addVetoOnThisFinalState(), Rivet::BeamThrust::BeamThrust(), Rivet::CentralEtHCM::CentralEtHCM(), Rivet::CentralityEstimator::CentralityEstimator(), Rivet::ChargedLeptons::ChargedLeptons(), Rivet::ALICE::CLMultiplicity< INNER >::CLMultiplicity(), Rivet::DISDiffHadron::DISDiffHadron(), Rivet::DISFinalState::DISFinalState(), Rivet::DISKinematics::DISKinematics(), Rivet::DISLepton::DISLepton(), Rivet::GammaGammaKinematics::GammaGammaKinematics(), Rivet::GammaGammaLeptons::GammaGammaLeptons(), Rivet::GeneratedCentrality::GeneratedCentrality(), Rivet::HadronicFinalState::HadronicFinalState(), Rivet::HeavyHadrons::HeavyHadrons(), Rivet::Hemispheres::Hemispheres(), Rivet::LeadingParticlesFinalState::LeadingParticlesFinalState(), Rivet::LossyFinalState< ConstRandomFilter >::LossyFinalState(), Rivet::MC_pPbMinBiasTrigger::MC_pPbMinBiasTrigger(), Rivet::MC_SumETFwdPbCentrality::MC_SumETFwdPbCentrality(), Rivet::ATLAS::MinBiasTrigger::MinBiasTrigger(), Rivet::MissingMomentum::MissingMomentum(), Rivet::NeutralFinalState::NeutralFinalState(), Rivet::NonHadronicFinalState::NonHadronicFinalState(), Rivet::ParisiTensor::ParisiTensor(), Rivet::PercentileProjection::PercentileProjection(), Rivet::PrimaryHadrons::PrimaryHadrons(), Rivet::CentralityBinner< T, MDist >::setProjection(), Rivet::SmearedJets::SmearedJets(), Rivet::SmearedMET::SmearedMET(), Rivet::SmearedParticles::SmearedParticles(), Rivet::Spherocity::Spherocity(), Rivet::ATLAS::SumET_PB_Centrality::SumET_PB_Centrality(), Rivet::ATLAS::SumET_PBPB_Centrality::SumET_PBPB_Centrality(), Rivet::TauFinder::TauFinder(), Rivet::Thrust::Thrust(), Rivet::TriggerCDFRun0Run1::TriggerCDFRun0Run1(), Rivet::TriggerCDFRun2::TriggerCDFRun2(), Rivet::UndressBeamLeptons::UndressBeamLeptons(), Rivet::ALICE::V0AndTrigger::V0AndTrigger(), Rivet::ALICE::V0Trigger< MODE >::V0Trigger(), Rivet::VetoedFinalState::VetoedFinalState(), and Rivet::VisibleFinalState::VisibleFinalState().
|
inlineprotected |
Register a contained projection (user-facing, arg-reordered version)
References declareProjection(), and name().
|
inlineprotected |
Register a contained projection.
The type of the argument is used to instantiate a new projection internally: this new object is applied to events rather than the argument object. Hence you are advised to only use locally-scoped Projection objects in your Projection and Analysis constructors, and to avoid polymorphism (e.g. handling ConcreteProjection
via a pointer or reference to type Projection
) since this will screw up the internal type management.
Referenced by declare().
|
inline |
Get the named projection, specifying return type via a template argument (user-facing alias).
References name().
|
inline |
Get the named projection, specifying return type via a template argument.
References Rivet::ProjectionHandler::getProjection(), and getProjHandler().
Referenced by Rivet::pcmp().
|
inline |
Get the named projection (non-templated, so returns as a reference to a Projection base class).
References Rivet::ProjectionHandler::getProjection(), and getProjHandler().