Changeset View
Changeset View
Standalone View
Standalone View
EvtGenBase/EvtMNode.hh
Show First 20 Lines • Show All 41 Lines • ▼ Show 20 Lines | public: | ||||
// vector of the form A_{\lambda this} and sum over allowed angular | // vector of the form A_{\lambda this} and sum over allowed angular | ||||
// momenta of the children | // momenta of the children | ||||
virtual EvtSpinAmp amplitude( const vector<EvtVector4R>& product ) const = 0; | virtual EvtSpinAmp amplitude( const vector<EvtVector4R>& product ) const = 0; | ||||
// get the 4 vector associated with this node | // get the 4 vector associated with this node | ||||
EvtVector4R get4vector( const vector<EvtVector4R>& product ) const; | EvtVector4R get4vector( const vector<EvtVector4R>& product ) const; | ||||
// get twice the spin of the particle | // get twice the spin of the particle | ||||
int getspin() const { return _twospin; } | int getspin() const { return m_twospin; } | ||||
EvtSpinType::spintype getspintype() const | EvtSpinType::spintype getspintype() const | ||||
{ | { | ||||
return EvtPDL::getSpinType( _id ); | return EvtPDL::getSpinType( m_id ); | ||||
} | } | ||||
// get the id of this node | // get the id of this node | ||||
EvtId getid() const { return _id; } | EvtId getid() const { return m_id; } | ||||
// return which particles this is a combination of | // return which particles this is a combination of | ||||
const vector<int>& getresonance() const { return _resonance; } | const vector<int>& getresonance() const { return m_resonance; } | ||||
void setparent( EvtMNode* parent ) { _parent = parent; } | void setparent( EvtMNode* parent ) { m_parent = parent; } | ||||
EvtMNode* getparent() const { return _parent; } | EvtMNode* getparent() const { return m_parent; } | ||||
// get the number of children that this node has | // get the number of children that this node has | ||||
virtual int getnchild() const = 0; | virtual int getnchild() const = 0; | ||||
// return the value of the resonance shape | // return the value of the resonance shape | ||||
virtual EvtComplex line( const vector<EvtVector4R>& product ) const = 0; | virtual EvtComplex line( const vector<EvtVector4R>& product ) const = 0; | ||||
// return a pointer node | // return a pointer node | ||||
virtual EvtMNode* duplicate() const = 0; | virtual EvtMNode* duplicate() const = 0; | ||||
protected: | protected: | ||||
// store the EvtId of the particle (just in case we need it to access | // store the EvtId of the particle (just in case we need it to access | ||||
// further informatoin about it) | // further informatoin about it) | ||||
EvtId _id; | EvtId m_id; | ||||
// store TWICE the spin of this resonance (this is to deal with spin 1/2 | // store TWICE the spin of this resonance (this is to deal with spin 1/2 | ||||
int _twospin; | int m_twospin; | ||||
// store the particles that form this resonance, this should match up | // store the particles that form this resonance, this should match up | ||||
// with the child nodes from below, and is calculated internally | // with the child nodes from below, and is calculated internally | ||||
vector<int> _resonance; | vector<int> m_resonance; | ||||
// store the parent node of this one | // store the parent node of this one | ||||
EvtMNode* _parent; | EvtMNode* m_parent; | ||||
}; | }; | ||||
#endif | #endif |