#include <DISKinematics.hh>
Definition at line 16 of file DISKinematics.hh.
Public Member Functions | |
DISKinematics () | |
The default constructor. | |
virtual const Projection * | clone () const |
Clone on the heap. | |
double | Q2 () const |
The ![]() | |
double | W2 () const |
The ![]() | |
double | x () const |
The Bjorken ![]() | |
double | y () const |
The Inelasticity ![]() | |
double | s () const |
The centre of mass energy ![]() | |
const LorentzTransform & | boostHCM () const |
The LorentzRotation needed to boost a particle to the hadronic CM frame. | |
const LorentzTransform & | boostBreit () const |
The LorentzRotation needed to boost a particle to the hadronic Breit frame. | |
const Particle & | beamHadron () const |
The incoming Hadron beam particle. | |
bool | before (const Projection &p) const |
virtual const std::set< BeamPair > | beamPairs () const |
virtual std::string | name () const |
Get the name of the projection. | |
Projection & | addBeamPair (const ParticleName &beam1, const ParticleName &beam2) |
Add a colliding beam pair. | |
Log & | getLog () const |
Get a Log object based on the getName() property of the calling projection object. | |
void | setName (const std::string &name) |
Used by derived classes to set their name. | |
Projection "getting" functions | |
std::set< ConstProjectionPtr > | getProjections () const |
Get the contained projections, including recursion. | |
template<typename PROJ> | |
const PROJ & | getProjection (const std::string &name) const |
Get the named projection, specifying return type via a template argument. | |
const Projection & | getProjection (const std::string &name) const |
Projection applying functions | |
template<typename PROJ> | |
const PROJ & | applyProjection (const Event &evt, const PROJ &proj) const |
Apply the supplied projection on event. | |
template<typename PROJ> | |
const PROJ & | applyProjection (const Event &evt, const Projection &proj) const |
Apply the supplied projection on event. | |
template<typename PROJ> | |
const PROJ & | applyProjection (const Event &evt, const std::string &name) const |
Apply the named projection on event. | |
Protected Member Functions | |
virtual void | project (const Event &e) |
Perform the projection operation on the supplied event. | |
virtual int | compare (const Projection &p) const |
Compare with other projections. | |
Cmp< Projection > | mkNamedPCmp (const Projection &otherparent, const std::string &pname) const |
Cmp< Projection > | mkPCmp (const Projection &otherparent, const std::string &pname) const |
ProjectionHandler & | getProjHandler () const |
Get a reference to the ProjectionHandler for this thread. | |
Projection registration functions | |
template<typename PROJ> | |
const PROJ & | addProjection (const PROJ &proj, const std::string &name) |
const Projection & | _addProjection (const Projection &proj, const std::string &name) |
Untemplated function to do the work... | |
Protected Attributes | |
bool | _allowProjReg |
Flag to forbid projection registration in analyses until the init phase. | |
Private Attributes | |
double | _theQ2 |
The ![]() | |
double | _theW2 |
The ![]() | |
double | _theX |
The Bjorken ![]() | |
double | _theY |
The Inelasticity ![]() | |
double | _theS |
The centre of mass energy ![]() | |
Particle | _inHadron |
LorentzTransform | _hcm |
The LorentzRotation needed to boost a particle to the hadronic CM frame. | |
LorentzTransform | _breit |
The LorentzRotation needed to boost a particle to the hadronic Breit frame. | |
Friends | |
class | Event |
Event is a friend. | |
class | Cmp< Projection > |
The Cmp specialization for Projection is a friend. | |
class | Projectionhandler |
DISKinematics | ( | ) | [inline] |
The default constructor.
Definition at line 21 of file DISKinematics.hh.
References ProjectionApplier::addProjection(), and Projection::setName().
Referenced by DISKinematics::clone().
00022 : _theQ2(-1.0), _theW2(-1.0), _theX(-1.0), _theY(-1.0), _theS(-1.0) 00023 { 00024 setName("DISKinematics"); 00025 //addBeamPair(ANY, hadid); 00026 addProjection(Beam(), "Beam"); 00027 addProjection(DISLepton(), "Lepton"); 00028 }
virtual const Projection* clone | ( | ) | const [inline, virtual] |
Clone on the heap.
Implements Projection.
Definition at line 31 of file DISKinematics.hh.
References DISKinematics::DISKinematics().
00031 { 00032 return new DISKinematics(*this); 00033 }
void project | ( | const Event & | e | ) | [protected, virtual] |
Perform the projection operation on the supplied event.
Implements Projection.
Definition at line 12 of file DISKinematics.cc.
References DISKinematics::_breit, DISKinematics::_hcm, DISKinematics::_inHadron, DISKinematics::_theQ2, DISKinematics::_theS, DISKinematics::_theW2, DISKinematics::_theX, DISKinematics::_theY, Rivet::angle(), Vector3::azimuthalAngle(), FourVector::azimuthalAngle(), Rivet::beams(), FourMomentum::boostVector(), LorentzTransform::combine(), Rivet::dot(), DISLepton::in(), Rivet::invariant(), Rivet::PID::isHadron(), Rivet::isZero(), FourMomentum::mass2(), Vector3::mkX(), Vector3::mkY(), Vector3::mkZ(), Particle::momentum(), DISLepton::out(), Rivet::PI, FourVector::polarAngle(), LorentzTransform::preMult(), FourMomentum::px(), DISKinematics::Q2(), LorentzTransform::setBoost(), LorentzTransform::transform(), FourVector::vector3(), and DISKinematics::x().
00012 { 00013 // Identify beam hadron 00014 const ParticlePair& inc = applyProjection<Beam>(e, "Beam").beams(); 00015 bool firstIsHadron = PID::isHadron(inc.first.pdgId()); 00016 bool secondIsHadron = PID::isHadron(inc.second.pdgId()); 00017 if (firstIsHadron && !secondIsHadron) { 00018 _inHadron = inc.first; 00019 } else if (!firstIsHadron && secondIsHadron) { 00020 _inHadron = inc.second; 00021 } else { 00022 //help! 00023 throw Error("DISKinematics projector could not find the correct beam hadron"); 00024 } 00025 00026 // Get the DIS lepton and store some of its properties 00027 const DISLepton& dislep = applyProjection<DISLepton>(e, "Lepton"); 00028 const FourMomentum pLepIn = dislep.in().momentum(); 00029 const FourMomentum pLepOut = dislep.out().momentum(); 00030 const FourMomentum pHad = _inHadron.momentum(); 00031 const FourMomentum pGamma = pLepIn - pLepOut; 00032 const FourMomentum tothad = pGamma + pHad; 00033 _theQ2 = -pGamma.mass2(); 00034 _theW2 = tothad.mass2(); 00035 _theX = Q2()/(2.0 * pGamma * pHad); 00036 _theY = (pGamma * pHad) / (pLepIn * pHad); 00037 _theS = invariant(pLepIn + pHad); 00038 00039 // Calculate boost vector for boost into HCM-system 00040 LorentzTransform tmp; 00041 tmp.setBoost(-tothad.boostVector()); 00042 00043 // Rotate so the photon is in x-z plane in HCM rest frame 00044 FourMomentum pGammaHCM = tmp.transform(pGamma); 00045 tmp.preMult(Matrix3(Vector3::mkZ(), -pGammaHCM.azimuthalAngle())); 00046 pGammaHCM = tmp.transform(pGamma); 00047 assert(isZero(dot(pGammaHCM.vector3(), Vector3::mkY()))); 00048 00049 // Rotate so the photon is along the positive z-axis 00050 const double rot_angle = pGammaHCM.polarAngle() * (pGammaHCM.px() >= 0 ? -1 : 1); 00051 tmp.preMult(Matrix3(Vector3::mkY(), rot_angle)); 00052 // Check that final HCM photon lies along +ve z as expected 00053 pGammaHCM = tmp.transform(pGamma); 00054 assert(isZero(dot(pGammaHCM.vector3(), Vector3::mkX()))); 00055 assert(isZero(dot(pGammaHCM.vector3(), Vector3::mkY()))); 00056 assert(isZero(angle(pGammaHCM.vector3(), Vector3::mkZ()))); 00057 00058 // Finally rotate so outgoing lepton at phi = 0 00059 FourMomentum pLepOutHCM = tmp.transform(pLepOut); 00060 tmp.preMult(Matrix3(Vector3::mkZ(), -pLepOutHCM.azimuthalAngle())); 00061 assert(isZero(tmp.transform(pLepOut).azimuthalAngle())); 00062 _hcm = tmp; 00063 00064 // Boost to Breit frame (use opposite convention for photon --- along *minus* z) 00065 tmp.preMult(Matrix3(Vector3::mkX(), PI)); 00066 const double bz = 1 - 2*x(); 00067 _breit = LorentzTransform(Vector3::mkZ() * bz).combine(tmp); 00068 assert(isZero(angle(_breit.transform(pGamma).vector3(), -Vector3::mkZ()))); 00069 assert(isZero(_breit.transform(pLepOut).azimuthalAngle())); 00070 }
int compare | ( | const Projection & | p | ) | const [protected, virtual] |
Compare with other projections.
Implements Projection.
Definition at line 73 of file DISKinematics.cc.
References Projection::mkNamedPCmp().
00073 { 00074 const DISKinematics& other = pcast<DISKinematics>(p); 00075 return mkNamedPCmp(other, "Lepton"); 00076 }
double Q2 | ( | ) | const [inline] |
The .
Definition at line 48 of file DISKinematics.hh.
References DISKinematics::_theQ2.
Referenced by H1_1995_S3167097::_getbin(), and DISKinematics::project().
00048 { return _theQ2; }
double W2 | ( | ) | const [inline] |
The .
Definition at line 51 of file DISKinematics.hh.
References DISKinematics::_theW2.
00051 { return _theW2; }
double x | ( | ) | const [inline] |
The Bjorken .
Definition at line 54 of file DISKinematics.hh.
References DISKinematics::_theX.
Referenced by H1_1995_S3167097::_getbin(), and DISKinematics::project().
00054 { return _theX; }
double y | ( | ) | const [inline] |
The Inelasticity .
Definition at line 57 of file DISKinematics.hh.
References DISKinematics::_theY.
00057 { return _theY; }
double s | ( | ) | const [inline] |
The centre of mass energy .
Definition at line 60 of file DISKinematics.hh.
References DISKinematics::_theS.
00060 { return _theS; }
const LorentzTransform& boostHCM | ( | ) | const [inline] |
The LorentzRotation needed to boost a particle to the hadronic CM frame.
Definition at line 65 of file DISKinematics.hh.
References DISKinematics::_hcm.
Referenced by FinalStateHCM::project().
00065 { 00066 return _hcm; 00067 }
const LorentzTransform& boostBreit | ( | ) | const [inline] |
The LorentzRotation needed to boost a particle to the hadronic Breit frame.
Definition at line 70 of file DISKinematics.hh.
References DISKinematics::_breit.
00070 { 00071 return _breit; 00072 }
const Particle& beamHadron | ( | ) | const [inline] |
The incoming Hadron beam particle.
Definition at line 75 of file DISKinematics.hh.
References DISKinematics::_inHadron.
00075 { 00076 return _inHadron; 00077 }
bool before | ( | const Projection & | p | ) | const [inherited] |
Determine whether this object should be ordered before the object p given as argument. If p is of a different class than this, the before() function of the corresponding type_info objects is used. Otherwise, if the objects are of the same class, the virtual compare(const Projection &) will be returned.
Definition at line 28 of file Projection.cc.
References Projection::compare().
Referenced by less< const Rivet::Projection * >::operator()().
00028 { 00029 const std::type_info& thisid = typeid(*this); 00030 const std::type_info& otherid = typeid(p); 00031 if (thisid == otherid) { 00032 return compare(p) < 0; 00033 } else { 00034 return thisid.before(otherid); 00035 } 00036 }
const set< BeamPair > beamPairs | ( | ) | const [virtual, inherited] |
Return the BeamConstraints for this projection, not including recursion. Derived classes should ensure that all contained projections are registered in the _projections set for the beam constraint chaining to work.
Definition at line 39 of file Projection.cc.
References Projection::_beamPairs, Projection::beamPairs(), Projection::getLog(), ProjectionApplier::getProjections(), Rivet::intersection(), and Log::TRACE.
Referenced by Projection::beamPairs().
00039 { 00040 set<BeamPair> ret = _beamPairs; 00041 set<ConstProjectionPtr> projs = getProjections(); 00042 for (set<ConstProjectionPtr>::const_iterator ip = projs.begin(); ip != projs.end(); ++ip) { 00043 ConstProjectionPtr p = *ip; 00044 getLog() << Log::TRACE << "Proj addr = " << p << endl; 00045 if (p) ret = intersection(ret, p->beamPairs()); 00046 } 00047 return ret; 00048 }
virtual std::string name | ( | ) | const [inline, virtual, inherited] |
Get the name of the projection.
Implements ProjectionApplier.
Definition at line 99 of file Projection.hh.
References Projection::_name.
Referenced by ProjectionApplier::_addProjection(), ProjectionHandler::_checkDuplicate(), ProjectionHandler::_getEquiv(), VetoedFinalState::addVetoOnThisFinalState(), Projection::getLog(), ZFinder::project(), ClusteredPhotons::project(), Projection::Projection(), ProjectionHandler::registerProjection(), and Projection::~Projection().
00099 { 00100 return _name; 00101 }
Projection& addBeamPair | ( | const ParticleName & | beam1, | |
const ParticleName & | beam2 | |||
) | [inline, inherited] |
Add a colliding beam pair.
Definition at line 105 of file Projection.hh.
References Projection::_beamPairs.
Referenced by Projection::Projection().
00105 { 00106 _beamPairs.insert(BeamPair(beam1, beam2)); 00107 return *this; 00108 }
Log& getLog | ( | ) | const [inline, inherited] |
Get a Log object based on the getName() property of the calling projection object.
Reimplemented from ProjectionApplier.
Definition at line 112 of file Projection.hh.
References Log::getLog(), and Projection::name().
Referenced by Sphericity::_calcSphericity(), Thrust::_calcThrust(), Projection::beamPairs(), FastJets::calc(), FastJets::FastJets(), FinalState::FinalState(), JetAlg::JetAlg(), ZFinder::project(), WFinder::project(), VetoedFinalState::project(), UnstableFinalState::project(), TriggerUA5::project(), TriggerCDFRun0Run1::project(), PVertex::project(), NeutralFinalState::project(), MergedFinalState::project(), LossyFinalState::project(), LeadingParticlesFinalState::project(), IsolationProjection::project(), InvMassFinalState::project(), InitialQuarks::project(), Hemispheres::project(), HadronicFinalState::project(), FoxWolframMoments::project(), FinalState::project(), ClusteredPhotons::project(), ChargedFinalState::project(), Beam::project(), Projection::Projection(), FastJets::splitJet(), Beam::sqrtS(), and Projection::~Projection().
00112 { 00113 string logname = "Rivet.Projection." + name(); 00114 return Log::getLog(logname); 00115 }
void setName | ( | const std::string & | name | ) | [inline, inherited] |
Used by derived classes to set their name.
Definition at line 118 of file Projection.hh.
References Projection::_name.
Referenced by ZFinder::_init(), WFinder::_init(), Beam::Beam(), CentralEtHCM::CentralEtHCM(), ChargedFinalState::ChargedFinalState(), ChargedLeptons::ChargedLeptons(), ClusteredPhotons::ClusteredPhotons(), DISKinematics::DISKinematics(), DISLepton::DISLepton(), FastJets::FastJets(), FinalState::FinalState(), FinalStateHCM::FinalStateHCM(), FoxWolframMoments::FoxWolframMoments(), HadronicFinalState::HadronicFinalState(), Hemispheres::Hemispheres(), IdentifiedFinalState::IdentifiedFinalState(), InitialQuarks::InitialQuarks(), IsolationProjection::IsolationProjection(), JetAlg::JetAlg(), JetShape::JetShape(), KtJets::KtJets(), LeadingParticlesFinalState::LeadingParticlesFinalState(), LossyFinalState::LossyFinalState(), MergedFinalState::MergedFinalState(), Multiplicity::Multiplicity(), NeutralFinalState::NeutralFinalState(), ParisiTensor::ParisiTensor(), PVertex::PVertex(), Sphericity::Sphericity(), SVertex::SVertex(), Thrust::Thrust(), TotalVisibleMomentum::TotalVisibleMomentum(), TriggerCDFRun0Run1::TriggerCDFRun0Run1(), TriggerUA5::TriggerUA5(), UnstableFinalState::UnstableFinalState(), and VetoedFinalState::VetoedFinalState().
Cmp<Projection> mkNamedPCmp | ( | const Projection & | otherparent, | |
const std::string & | pname | |||
) | const [protected, inherited] |
Shortcut to make a named Cmp<Projection> comparison with the *this
object automatically passed as one of the parent projections.
Referenced by ZFinder::compare(), WFinder::compare(), VetoedFinalState::compare(), TotalVisibleMomentum::compare(), Thrust::compare(), SVertex::compare(), Sphericity::compare(), ParisiTensor::compare(), NeutralFinalState::compare(), Multiplicity::compare(), MergedFinalState::compare(), LossyFinalState::compare(), LeadingParticlesFinalState::compare(), KtJets::compare(), JetShape::compare(), IsolationProjection::compare(), InvMassFinalState::compare(), IdentifiedFinalState::compare(), Hemispheres::compare(), FoxWolframMoments::compare(), FinalStateHCM::compare(), FastJets::compare(), DISLepton::compare(), DISKinematics::compare(), ClusteredPhotons::compare(), ChargedLeptons::compare(), ChargedFinalState::compare(), and CentralEtHCM::compare().
Cmp<Projection> mkPCmp | ( | const Projection & | otherparent, | |
const std::string & | pname | |||
) | const [protected, inherited] |
Shortcut to make a named Cmp<Projection> comparison with the *this
object automatically passed as one of the parent projections.
std::set<ConstProjectionPtr> getProjections | ( | ) | const [inline, inherited] |
Get the contained projections, including recursion.
Definition at line 43 of file ProjectionApplier.hh.
References ProjectionHandler::DEEP, ProjectionHandler::getChildProjections(), and ProjectionApplier::getProjHandler().
Referenced by Projection::beamPairs().
00043 { 00044 return getProjHandler().getChildProjections(*this, ProjectionHandler::DEEP); 00045 }
const PROJ& getProjection | ( | const std::string & | name | ) | const [inline, inherited] |
Get the named projection, specifying return type via a template argument.
Definition at line 50 of file ProjectionApplier.hh.
References ProjectionHandler::getProjection(), and ProjectionApplier::getProjHandler().
Referenced by VetoedFinalState::compare(), Rivet::pcmp(), and Hemispheres::project().
00050 { 00051 const Projection& p = getProjHandler().getProjection(*this, name); 00052 return pcast<PROJ>(p); 00053 }
const Projection& getProjection | ( | const std::string & | name | ) | const [inline, inherited] |
Get the named projection (non-templated, so returns as a reference to a Projection base class).
Definition at line 58 of file ProjectionApplier.hh.
References ProjectionHandler::getProjection(), and ProjectionApplier::getProjHandler().
00058 { 00059 return getProjHandler().getProjection(*this, name); 00060 }
const PROJ& applyProjection | ( | const Event & | evt, | |
const PROJ & | proj | |||
) | const [inline, inherited] |
Apply the supplied projection on event.
Definition at line 68 of file ProjectionApplier.hh.
References ProjectionApplier::_applyProjection().
Referenced by HadronicFinalState::project(), and FinalStateHCM::project().
00068 { 00069 return pcast<PROJ>(_applyProjection(evt, proj)); 00070 }
const PROJ& applyProjection | ( | const Event & | evt, | |
const Projection & | proj | |||
) | const [inline, inherited] |
Apply the supplied projection on event.
Definition at line 75 of file ProjectionApplier.hh.
References ProjectionApplier::_applyProjection().
00075 { 00076 return pcast<PROJ>(_applyProjection(evt, proj)); 00077 }
const PROJ& applyProjection | ( | const Event & | evt, | |
const std::string & | name | |||
) | const [inline, inherited] |
Apply the named projection on event.
Definition at line 82 of file ProjectionApplier.hh.
References ProjectionApplier::_applyProjection().
00082 { 00083 return pcast<PROJ>(_applyProjection(evt, name)); 00084 }
ProjectionHandler& getProjHandler | ( | ) | const [inline, protected, inherited] |
Get a reference to the ProjectionHandler for this thread.
Definition at line 95 of file ProjectionApplier.hh.
References ProjectionApplier::_projhandler.
Referenced by ProjectionApplier::_addProjection(), ProjectionApplier::getProjection(), ProjectionApplier::getProjections(), and ProjectionApplier::~ProjectionApplier().
00095 { 00096 assert(_projhandler); 00097 return *_projhandler; 00098 }
const PROJ& addProjection | ( | const PROJ & | proj, | |
const std::string & | name | |||
) | [inline, protected, inherited] |
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.
Definition at line 115 of file ProjectionApplier.hh.
References ProjectionApplier::_addProjection().
Referenced by ZFinder::_init(), WFinder::_init(), VetoedFinalState::addVetoOnThisFinalState(), CDF_2009_S8057893::CDF_2009_S8057893::init(), CentralEtHCM::CentralEtHCM(), ChargedFinalState::ChargedFinalState(), ChargedLeptons::ChargedLeptons(), ClusteredPhotons::ClusteredPhotons(), DISKinematics::DISKinematics(), DISLepton::DISLepton(), FinalState::FinalState(), FinalStateHCM::FinalStateHCM(), FoxWolframMoments::FoxWolframMoments(), HadronicFinalState::HadronicFinalState(), Hemispheres::Hemispheres(), IdentifiedFinalState::IdentifiedFinalState(), ZEUS_2001_S4815815::init(), UA5_1989_S1926373::init(), UA5_1988_S1867512::init(), UA5_1986_S1583476::init(), UA5_1982_S875503::init(), UA1_1990_S2044935::init(), STAR_2009_UE_HELEN::init(), STAR_2008_S7993412::init(), STAR_2006_S6870392::init(), STAR_2006_S6860818::init(), STAR_2006_S6500200::init(), SFM_1984_S1178091::init(), PDG_HADRON_MULTIPLICITIES_RATIOS::init(), PDG_HADRON_MULTIPLICITIES::init(), OPAL_2004_S6132243::init(), OPAL_1998_S3780481::init(), MC_ZJETS::init(), MC_WJETS::init(), MC_TTBAR::init(), MC_SUSY::init(), MC_PHOTONJETUE::init(), MC_PHOTONJETS::init(), MC_LEADINGJETS::init(), MC_JETS::init(), MC_DIPHOTON::init(), MC_DIJET::init(), JADE_OPAL_2000_S4300807::init(), H1_2000_S4129130::init(), H1_1995_S3167097::init(), H1_1994_S2919893::init(), ExampleAnalysis::init(), E735_1998_S3905616::init(), DELPHI_2002_069_CONF_603::init(), DELPHI_1995_S3137023::init(), D0_2010_S8570965::init(), D0_2010_S8566488::init(), D0_2009_S8349509::init(), D0_2009_S8320160::init(), D0_2009_S8202443::init(), D0_2008_S7863608::init(), D0_2008_S7837160::init(), D0_2008_S7719523::init(), D0_2008_S7662670::init(), D0_2008_S7554427::init(), D0_2008_S6879055::init(), D0_2007_S7075677::init(), D0_2006_S6438750::init(), D0_2004_S5992206::init(), D0_2001_S4674421::init(), D0_1998_S3711838::init(), D0_1996_S3324664::init(), D0_1996_S3214044::init(), CDF_2009_S8436959::init(), CDF_2009_S8383952::init(), CDF_2009_S8233977::init(), CDF_2008_S8095620::init(), CDF_2008_S8093652::init(), CDF_2008_S7828950::init(), CDF_2008_S7782535::init(), CDF_2008_S7541902::init(), CDF_2008_S7540469::init(), CDF_2008_NOTE_9351::init(), CDF_2008_LEADINGJETS::init(), CDF_2007_S7057202::init(), CDF_2006_S6653332::init(), CDF_2006_S6450792::init(), CDF_2005_S6217184::init(), CDF_2005_S6080774::init(), CDF_2004_S5839831::init(), CDF_2002_S4796047::init(), CDF_2001_S4751469::init(), CDF_2001_S4563131::init(), CDF_2001_S4517016::init(), CDF_2000_S4266730::init(), CDF_2000_S4155203::init(), CDF_1998_S3618439::init(), CDF_1997_S3541940::init(), CDF_1996_S3418421::init(), CDF_1996_S3349578::init(), CDF_1996_S3108457::init(), CDF_1994_S2952106::init(), CDF_1991_S2313472::init(), CDF_1990_S2089246::init(), CDF_1988_S1865951::init(), BELLE_2006_S6265367::init(), ATLAS_2010_S8591806::init(), ALEPH_2004_S5765862::init(), ALEPH_1996_S3486095::init(), ALEPH_1996_S3196992::init(), ALEPH_1991_S2435284::init(), IsolationProjection::IsolationProjection(), JetAlg::JetAlg(), JetShape::JetShape(), KtJets::KtJets(), LeadingParticlesFinalState::LeadingParticlesFinalState(), LossyFinalState::LossyFinalState(), MergedFinalState::MergedFinalState(), Multiplicity::Multiplicity(), NeutralFinalState::NeutralFinalState(), ParisiTensor::ParisiTensor(), Sphericity::Sphericity(), SVertex::SVertex(), Thrust::Thrust(), TotalVisibleMomentum::TotalVisibleMomentum(), TriggerCDFRun0Run1::TriggerCDFRun0Run1(), TriggerUA5::TriggerUA5(), and VetoedFinalState::VetoedFinalState().
00115 { 00116 const Projection& reg = _addProjection(proj, name); 00117 return dynamic_cast<const PROJ&>(reg); 00118 }
const Projection & _addProjection | ( | const Projection & | proj, | |
const std::string & | name | |||
) | [protected, inherited] |
Untemplated function to do the work...
Definition at line 33 of file ProjectionApplier.cc.
References ProjectionApplier::_allowProjReg, Log::ERROR, ProjectionApplier::getLog(), ProjectionApplier::getProjHandler(), ProjectionApplier::name(), Projection::name(), and ProjectionHandler::registerProjection().
Referenced by ProjectionApplier::addProjection().
00034 { 00035 if (!_allowProjReg) { 00036 getLog() << Log::ERROR << "Trying to register projection '" 00037 << proj.name() << "' before init phase in '" << this->name() << "'." << endl; 00038 exit(2); 00039 } 00040 const Projection& reg = getProjHandler().registerProjection(*this, proj, name); 00041 return reg; 00042 }
friend class Event [friend, inherited] |
friend class Cmp< Projection > [friend, inherited] |
friend class Projectionhandler [friend, inherited] |
Definition at line 23 of file ProjectionApplier.hh.
double _theQ2 [private] |
The .
Definition at line 82 of file DISKinematics.hh.
Referenced by DISKinematics::project(), and DISKinematics::Q2().
double _theW2 [private] |
The .
Definition at line 85 of file DISKinematics.hh.
Referenced by DISKinematics::project(), and DISKinematics::W2().
double _theX [private] |
The Bjorken .
Definition at line 88 of file DISKinematics.hh.
Referenced by DISKinematics::project(), and DISKinematics::x().
double _theY [private] |
The Inelasticity .
Definition at line 91 of file DISKinematics.hh.
Referenced by DISKinematics::project(), and DISKinematics::y().
double _theS [private] |
The centre of mass energy .
Definition at line 94 of file DISKinematics.hh.
Referenced by DISKinematics::project(), and DISKinematics::s().
Definition at line 96 of file DISKinematics.hh.
Referenced by DISKinematics::beamHadron(), and DISKinematics::project().
LorentzTransform _hcm [private] |
The LorentzRotation needed to boost a particle to the hadronic CM frame.
Definition at line 99 of file DISKinematics.hh.
Referenced by DISKinematics::boostHCM(), and DISKinematics::project().
LorentzTransform _breit [private] |
The LorentzRotation needed to boost a particle to the hadronic Breit frame.
Definition at line 102 of file DISKinematics.hh.
Referenced by DISKinematics::boostBreit(), and DISKinematics::project().
bool _allowProjReg [protected, inherited] |
Flag to forbid projection registration in analyses until the init phase.
Definition at line 141 of file ProjectionApplier.hh.
Referenced by ProjectionApplier::_addProjection(), and AnalysisHandler::init().