Rivet::PVertex Class Reference

Get the position of the primary vertex of an event. More...

`#include <PVertex.hh>`

Inheritance diagram for Rivet::PVertex:

## Public Member Functions

const Vector3 | position () const
| Get the primary vertex position.
Standard constructors and destructors.
| PVertex ()
| The default constructor.
virtual const Projection * | clone () const
| Clone on the heap.
Public Member Functions inherited from Rivet::Projection
bool | before (const Projection &p) const
virtual const std::set< PdgIdPair > | beamPairs () const
virtual std::string | name () const
| Get the name of the projection.
Projection & | addPdgIdPair (PdgId beam1, PdgId 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 ()
| The default constructor.
virtual | ~Projection ()
| The destructor.
Public Member Functions inherited from Rivet::ProjectionApplier
| ProjectionApplier ()
| Constructor.
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
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

void | project (const Event &e)
| Do the projection.
int | compare (const Projection &UNUSED(p)) const
| Compare projections.
Protected Member Functions inherited from Rivet::Projection
virtual int | compare (const Projection &p) const =0
Cmp< Projection > | mkNamedPCmp (const Projection &otherparent, const std::string &pname) const
Cmp< Projection > | mkPCmp (const Projection &otherparent, const std::string &pname) const
Protected Member Functions inherited from Rivet::ProjectionApplier
Log & | getLog () const
ProjectionHandler & | getProjHandler () const
| Get a reference to the ProjectionHandler for this thread.
template<typename PROJ >
const PROJ & | addProjection (const PROJ &proj, const std::string &name)

## Detailed Description

Get the position of the primary vertex of an event.

HepMC doesn't reliably return the signal process vertex, so we have to use the "decay vertex" of the beam particles. This gives the right position, within experimental resolution, but ISR effects can mean that the actual vertex is not right. Hence, we don't expose the HepMC GenVertex directly - if it were available, people might try to e.g. look at the of the vertex children, which would be extremely unreliable.

Deprecated:
  This should hardly ever be required for MC studies, and is not necessarily reliable!

The documentation for this class was generated from the following files:

- include/Rivet/Projections/PVertex.hh
- src/Projections/PVertex.cc