Main Page   Namespace List   Class Hierarchy   Compound List   File List   Compound Members   File Members  

PDT Class Reference

list of particle info and access methods. More...

#include <PDT.h>

Inheritance diagram for PDT:

HepPDT List of all members.

Public Methods

 PDT ()
 constructor: just an empty table. More...

virtual ~PDT ()
PDatalookUp (long) const
 return entry pointer given particle id. More...

PDatalookUp (const char *)
 return entry pointer given particle name. More...

PDatagetParticleAt (unsigned) const
 return entry at given index (arbitrary ordering). More...

int count () const
 return number of entries. More...

unsigned getIndexOf ( PData * )
 return index of a table entry acc. More...

unsigned getIndexOf (long id)
PDataaddParticle (const char* pname, const char* aname,long id, int spin, int charge, float mass, float width=0.)
 create entries for a particle and its antiparticle. More...

PDataaddParticle (const char* pname, long id, int spin, int charge, float mass, float width=0.)
 create an entry for a particle that is its own antiparticle. More...

void addDecay (const char* pname, float bf, const char * decayer, const char* child1, const char* child2=0, const char* child3=0, const char* child4=0, const char* child5=0)
 add a decay channel to a particle entry. More...

void addDecayer (Decayer*)
 add a decayer to the table. More...

void setInteraction (const char*)
 set the interaction name for the following entries. More...

void addInteractor (Interactor*)
 add an interactor to the table, replacing any with the same name. More...

virtual void printOn ( std::ostream & ) const
 generate formatted table of entries. More...


Static Public Methods

PDT* createDefault (Interactor* int1 =0, Interactor* int2 =0)
 create a default table (stuff wired in). If interactors apperear define them. More...


Private Types

typedef std::vector<PData*> PData_list
typedef std::vector<Decayer*> Decayer_list
typedef std::vector<Interactor*> Interactor_list

Private Methods

PDatafirst () const

Private Attributes

PData_list particles
Decayer_list decayers
Interactor_list interactors
Interactortype

Detailed Description

list of particle info and access methods.

Definition at line 21 of file PDT.h.


Member Typedef Documentation

typedef std::vector<Decayer*> PDT::Decayer_list [private]
 

Definition at line 79 of file PDT.h.

typedef std::vector<Interactor*> PDT::Interactor_list [private]
 

Definition at line 80 of file PDT.h.

typedef std::vector<PData*> PDT::PData_list [private]
 

Definition at line 78 of file PDT.h.


Constructor & Destructor Documentation

PDT::PDT ( ) [inline]
 

constructor: just an empty table.

Definition at line 27 of file PDT.h.

Referenced by createDefault().

PDT::~PDT ( ) [virtual]
 

Definition at line 74 of file PDT.cxx.


Member Function Documentation

void PDT::addDecay ( const char * pname,
float bf,
const char * decayerName,
const char * child1,
const char * child2 = 0,
const char * child3 = 0,
const char * child4 = 0,
const char * child5 = 0 )
 

add a decay channel to a particle entry.

Definition at line 27 of file PDT.cxx.

Referenced by HepPDT::setDecays().

void PDT::addDecayer ( Decayer * aDecayer )
 

add a decayer to the table.

Definition at line 109 of file PDT.cxx.

Referenced by createDefault(), and HepPDT::setDecays().

void PDT::addInteractor ( Interactor * anInteractor )
 

add an interactor to the table, replacing any with the same name.

Definition at line 144 of file PDT.cxx.

Referenced by HepPDT::HepPDT(), createDefault(), and setInteraction().

PData * PDT::addParticle ( const char * pname,
long id,
int spin,
int charge,
float mass,
float width = 0. )
 

create an entry for a particle that is its own antiparticle.

Definition at line 174 of file PDT.cxx.

PData * PDT::addParticle ( const char * pname,
const char * aname,
long id,
int spin,
int charge,
float mass,
float width = 0. )
 

create entries for a particle and its antiparticle.

Definition at line 163 of file PDT.cxx.

Referenced by HepPDT::createTheParticles(), and lookUp().

int PDT::count ( ) const [inline]
 

return number of entries.

Definition at line 41 of file PDT.h.

Referenced by getIndexOf().

PDT * PDT::createDefault ( Interactor * emint = 0,
Interactor * hadint = 0 ) [static]
 

create a default table (stuff wired in). If interactors apperear define them.

Definition at line 25 of file CreateDefault.cxx.

PData * PDT::first ( ) const [inline, private]
 

Definition at line 86 of file PDT.h.

unsigned PDT::getIndexOf ( long id )
 

Definition at line 100 of file PDT.cxx.

unsigned PDT::getIndexOf ( PData * look )
 

return index of a table entry acc.

Definition at line 95 of file PDT.cxx.

PData * PDT::getParticleAt ( unsigned i ) const
 

return entry at given index (arbitrary ordering).

Definition at line 90 of file PDT.cxx.

PData * PDT::lookUp ( const char * name )
 

return entry pointer given particle name.

Definition at line 184 of file PDT.cxx.

PData * PDT::lookUp ( long id ) const
 

return entry pointer given particle id.

Definition at line 203 of file PDT.cxx.

Referenced by GParticle::GParticle(), addDecay(), SetBeam::execute(), GheishaInteractor::interact(), EGSInteractor::interact(), and ShowerDetector::score().

void PDT::printOn ( std::ostream & cout ) const [virtual]
 

generate formatted table of entries.

Definition at line 214 of file PDT.cxx.

Referenced by lookUp(), operator<<(), and BaseApp::printPDT().

void PDT::setInteraction ( const char * name )
 

set the interaction name for the following entries.

Definition at line 126 of file PDT.cxx.

Referenced by HepPDT::createTheParticles().


Member Data Documentation

Decayer_list PDT::decayers [private]
 

Definition at line 83 of file PDT.h.

Interactor_list PDT::interactors [private]
 

Definition at line 84 of file PDT.h.

PData_list PDT::particles [private]
 

Definition at line 81 of file PDT.h.

Interactor * PDT::type [private]
 

Definition at line 88 of file PDT.h.


The documentation for this class was generated from the following files:
Generated at Mon Nov 26 18:18:41 2001 by doxygen1.2.3 written by Dimitri van Heesch, © 1997-2000