ROOTPWA
Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | Static Private Attributes | List of all members
rpwa::productionVertex Class Reference

#include <productionVertex.h>

Inheritance diagram for rpwa::productionVertex:
rpwa::interactionVertex rpwa::diffractiveDissVertex rpwa::leptoProductionVertex

Public Member Functions

 productionVertex ()
virtual ~productionVertex ()
virtual const TLorentzVector & referenceLzVec () const =0
 returns Lorentz-vector that defines z-axis for angular distributions
virtual const particlePtrXParticle () const =0
 returns X particle
virtual std::complex< double > productionAmp () const
 returns production amplitude
virtual void setXFlavorQN ()=0
 general interface to set flavor quantum numbers of X (baryon nmb., S, C, B) based on production mechanism
virtual bool initKinematicsData (const TClonesArray &names)=0
 general interface to initialize input data format
virtual bool readKinematicsData (const TClonesArray &momenta)=0
 general interface to read input data
virtual bool revertMomenta ()=0
 general interface to reset momenta to the values of last event read
virtual std::string name () const
 returns label used in graph visualization, reporting, and key file
interactionVertexPtr clone (const bool cloneInParticles=false, const bool cloneOutParticles=false) const
 < creates deep copy of interaction vertex; must not be virtual
virtual void clear ()
bool operator== (const interactionVertex &rhsVert)
bool operator!= (const interactionVertex &rhsVert)
virtual bool addInParticle (const particlePtr &part)
 adds an incoming particle to vertex
virtual bool addOutParticle (const particlePtr &part)
 adds an outgoing particle to vertex
void transformOutParticles (const TLorentzRotation &L)
 applies Lorentz-transformation to outgoing particles
unsigned int nmbInParticles () const
 returns number of incoming particles
unsigned int nmbOutParticles () const
 returns number of outgoing particles
std::vector< particlePtr > & inParticles ()
 returns array of incoming particles
const std::vector< particlePtr > & inParticles () const
 returns array of incoming particles
std::vector< particlePtr > & outParticles ()
 returns array of outgoing particles
const std::vector< particlePtr > & outParticles () const
 returns array of outgoing particles
virtual std::ostream & print (std::ostream &out) const
 prints vertex parameters in human-readable form
virtual std::ostream & dump (std::ostream &out) const
 prints all vertex data in human-readable form
virtual std::ostream & printPointers (std::ostream &out) const
 prints particle pointers strored in vertex

Static Public Member Functions

static bool debug ()
 returns debug flag
static void setDebug (const bool debug=true)
 sets debug flag

Protected Member Functions

virtual interactionVertexdoClone (const bool cloneInParticles, const bool cloneOutParticles) const
 helper function to use covariant return types with smart pointers; needed for public clone()
virtual bool isEqualTo (const interactionVertex &vert) const
 returns whether vert is equal to this by checking equality of all member variables
void cloneInParticles ()
 clones all incoming particles
void cloneOutParticles ()
 clones all outgoing particles

Protected Attributes

std::vector< particlePtr_inParticles
 array of pointers to incoming particles
std::vector< particlePtr_outParticles
 array of pointers to outgoing particles

Static Private Attributes

static bool _debug = false
 if set to true, debug messages are printed

Detailed Description

Definition at line 61 of file productionVertex.h.

Constructor & Destructor Documentation

productionVertex::productionVertex ( )

Definition at line 49 of file productionVertex.cc.

References _debug.

productionVertex::~productionVertex ( )
virtual

Definition at line 57 of file productionVertex.cc.

Member Function Documentation

bool interactionVertex::addInParticle ( const particlePtr part)
virtualinherited
bool interactionVertex::addOutParticle ( const particlePtr part)
virtualinherited
void interactionVertex::clear ( )
virtualinherited
interactionVertexPtr rpwa::interactionVertex::clone ( const bool  cloneInParticles = false,
const bool  cloneOutParticles = false 
) const
inlineinherited
void interactionVertex::cloneInParticles ( )
protectedinherited
void interactionVertex::cloneOutParticles ( )
protectedinherited
static bool rpwa::productionVertex::debug ( )
inlinestatic

returns debug flag

Reimplemented from rpwa::interactionVertex.

Reimplemented in rpwa::leptoProductionVertex, and rpwa::diffractiveDissVertex.

Definition at line 83 of file productionVertex.h.

References _debug.

Referenced by setDebug().

interactionVertex * interactionVertex::doClone ( const bool  cloneInParticles,
const bool  cloneOutParticles 
) const
protectedvirtualinherited
ostream & interactionVertex::dump ( std::ostream &  out) const
virtualinherited
virtual bool rpwa::productionVertex::initKinematicsData ( const TClonesArray &  names)
pure virtual

general interface to initialize input data format

Implemented in rpwa::leptoProductionVertex, and rpwa::diffractiveDissVertex.

std::vector<particlePtr>& rpwa::interactionVertex::inParticles ( )
inlineinherited
const std::vector<particlePtr>& rpwa::interactionVertex::inParticles ( ) const
inlineinherited

returns array of incoming particles

Definition at line 89 of file interactionVertex.h.

References rpwa::interactionVertex::_inParticles.

bool interactionVertex::isEqualTo ( const interactionVertex vert) const
protectedvirtualinherited
virtual std::string rpwa::productionVertex::name ( ) const
inlinevirtual

returns label used in graph visualization, reporting, and key file

Reimplemented from rpwa::interactionVertex.

Reimplemented in rpwa::leptoProductionVertex, and rpwa::diffractiveDissVertex.

Definition at line 81 of file productionVertex.h.

unsigned int rpwa::interactionVertex::nmbInParticles ( ) const
inlineinherited

returns number of incoming particles

Definition at line 84 of file interactionVertex.h.

References rpwa::interactionVertex::_inParticles.

Referenced by rpwa::interactionVertex::cloneInParticles(), and rpwa::interactionVertex::isEqualTo().

unsigned int rpwa::interactionVertex::nmbOutParticles ( ) const
inlineinherited
bool rpwa::interactionVertex::operator!= ( const interactionVertex rhsVert)
inlineinherited

Definition at line 77 of file interactionVertex.h.

bool rpwa::interactionVertex::operator== ( const interactionVertex rhsVert)
inlineinherited

Definition at line 76 of file interactionVertex.h.

References rpwa::interactionVertex::isEqualTo().

std::vector<particlePtr>& rpwa::interactionVertex::outParticles ( )
inlineinherited
const std::vector<particlePtr>& rpwa::interactionVertex::outParticles ( ) const
inlineinherited

returns array of outgoing particles

Definition at line 90 of file interactionVertex.h.

References rpwa::interactionVertex::_outParticles.

ostream & interactionVertex::print ( std::ostream &  out) const
virtualinherited
ostream & interactionVertex::printPointers ( std::ostream &  out) const
virtualinherited
virtual std::complex<double> rpwa::productionVertex::productionAmp ( ) const
inlinevirtual

returns production amplitude

Reimplemented in rpwa::diffractiveDissVertex, and rpwa::leptoProductionVertex.

Definition at line 72 of file productionVertex.h.

virtual bool rpwa::productionVertex::readKinematicsData ( const TClonesArray &  momenta)
pure virtual

general interface to read input data

Implemented in rpwa::leptoProductionVertex, and rpwa::diffractiveDissVertex.

virtual const TLorentzVector& rpwa::productionVertex::referenceLzVec ( ) const
pure virtual

returns Lorentz-vector that defines z-axis for angular distributions

Implemented in rpwa::diffractiveDissVertex, and rpwa::leptoProductionVertex.

virtual bool rpwa::productionVertex::revertMomenta ( )
pure virtual

general interface to reset momenta to the values of last event read

Implemented in rpwa::leptoProductionVertex, and rpwa::diffractiveDissVertex.

static void rpwa::productionVertex::setDebug ( const bool  debug = true)
inlinestatic

sets debug flag

Reimplemented from rpwa::interactionVertex.

Reimplemented in rpwa::leptoProductionVertex, and rpwa::diffractiveDissVertex.

Definition at line 84 of file productionVertex.h.

References _debug, and debug().

virtual void rpwa::productionVertex::setXFlavorQN ( )
pure virtual

general interface to set flavor quantum numbers of X (baryon nmb., S, C, B) based on production mechanism

Implemented in rpwa::diffractiveDissVertex, and rpwa::leptoProductionVertex.

void interactionVertex::transformOutParticles ( const TLorentzRotation &  L)
inherited

applies Lorentz-transformation to outgoing particles

Definition at line 148 of file interactionVertex.cc.

References rpwa::interactionVertex::_outParticles, i, and rpwa::interactionVertex::nmbOutParticles().

virtual const particlePtr& rpwa::productionVertex::XParticle ( ) const
pure virtual

returns X particle

Implemented in rpwa::diffractiveDissVertex, and rpwa::leptoProductionVertex.

Member Data Documentation

bool productionVertex::_debug = false
staticprivate

if set to true, debug messages are printed

Definition at line 89 of file productionVertex.h.

Referenced by debug(), productionVertex(), and setDebug().

std::vector<particlePtr> rpwa::interactionVertex::_inParticles
protectedinherited
std::vector<particlePtr> rpwa::interactionVertex::_outParticles
protectedinherited

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