Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

PdtEntry Class Reference

#include <PdtEntry.h>

List of all members.

Public Member Functions

void addDecay (float bf, vector< PdtEntry * > *kids)
void addDecay (float bf, vector< PdtEntry * > *kids)
float charge () const
float charge () const
const PdtEntryconjugate () const
const PdtEntryconjugate () const
const vector< DecayMode * > * decayList () const
const vector< DecayMode * > * decayList () const
PdtGeant::GeantType geantId () const
PdtGeant::GeantType geantId () const
float lifetime () const
float lifetime () const
PdtLund::LundType lundId () const
PdtLund::LundType lundId () const
float mass () const
float mass () const
const char * name () const
const char * name () const
bool operator< (const PdtEntry &) const
bool operator< (const PdtEntry &) const
bool operator== (const PdtEntry &) const
bool operator== (const PdtEntry &) const
PdtPdg::PdgType pdgId () const
PdtPdg::PdgType pdgId () const
 PdtEntry (const char *name, PdtPdg::PdgType code, float spin, float charge, float mass, float width=0, float massCut=0)
 PdtEntry (const char *name, PdtGeant::GeantType code, float spin, float charge, float mass, float width=0, float massCut=0)
 PdtEntry (const char *name, PdtLund::LundType code, float spin, float charge, float mass, float width=0, float massCut=0)
 PdtEntry (const char *name, PdtPdg::PdgType code, float spin, float charge, float mass, float width=0, float massCut=0)
 PdtEntry (const char *name, PdtGeant::GeantType code, float spin, float charge, float mass, float width=0, float massCut=0)
 PdtEntry (const char *name, PdtLund::LundType code, float spin, float charge, float mass, float width=0, float massCut=0)
PdtPid::PidType pidId () const
PdtPid::PidType pidId () const
PdtPid::PidNeutralType pidNeutId () const
PdtPid::PidNeutralType pidNeutId () const
void printBFOn (std::ostream &str) const
void printBFOn (std::ostream &str) const
void printOn (std::ostream &str) const
void printOn (std::ostream &str) const
float spin () const
float spin () const
float sumBR () const
float sumBR () const
float width () const
float width () const
float widthCut () const
float widthCut () const
virtual ~PdtEntry ()
virtual ~PdtEntry ()

Protected Attributes

float _charge
const PdtEntry_conjugate
const PdtEntry_conjugate
vector< DecayMode * > * _decayList
vector< DecayMode * > * _decayList
PdtGeant::GeantType _geantId
float _lifetime
PdtLund::LundType _lundId
float _mass
char * _name
char * _name
PdtPdg::PdgType _pdgId
PdtPid::PidType _pidId
PdtPid::PidNeutralType _pidNeutId
float _spin
float _sumBR
float _width
float _widthCut


Constructor & Destructor Documentation

PdtEntry::PdtEntry const char *  name,
PdtLund::LundType  code,
float  spin,
float  charge,
float  mass,
float  width = 0,
float  massCut = 0
 

00048                                                             :
00049   _name(new char[strlen(name) + 1]),
00050   _mass(mass),
00051   _width(width),
00052   _lifetime( (width>0.0) ? (HBARC / width) : FLT_MAX ),
00053   _spin(spin),
00054   _charge(charge),
00055   _widthCut( (massCut > 0.0) ? massCut : 2.0*width ),
00056   _sumBR(0.0),
00057   _decayList(new vector<DecayMode*>),
00058   _lundId(code),
00059   _pdgId(Pdt::pdgId(code)),
00060   _geantId(Pdt::geantId(code)),
00061   _pidId(Pdt::pidId(code)),
00062   _pidNeutId(Pdt::pidNeutId(code)),
00063   _conjugate(0)
00064 { strcpy(_name, name); }

PdtEntry::PdtEntry const char *  name,
PdtGeant::GeantType  code,
float  spin,
float  charge,
float  mass,
float  width = 0,
float  massCut = 0
 

00068                                                             :
00069   _name(new char[strlen(name) + 1]),
00070   _mass(mass),
00071   _width(width),
00072   _lifetime( (width>0.0) ? (HBARC / width) : FLT_MAX ),
00073   _spin(spin),
00074   _charge(charge),
00075   _widthCut( (massCut > 0.0) ? massCut : 2.0*width ),
00076   _sumBR(0.0),
00077   _decayList(new vector<DecayMode*>),
00078   _lundId(Pdt::lundId(code)),
00079   _pdgId(Pdt::pdgId(code)),
00080   _geantId(code),
00081   _pidId(Pdt::pidId(code)),
00082   _pidNeutId(Pdt::pidNeutId(code)),
00083   _conjugate(0)
00084 { strcpy(_name, name); }

PdtEntry::PdtEntry const char *  name,
PdtPdg::PdgType  code,
float  spin,
float  charge,
float  mass,
float  width = 0,
float  massCut = 0
 

00087                                                             :
00088   _name(new char[strlen(name) + 1]),
00089   _mass(mass),
00090   _width(width),
00091   _lifetime( (width>0.0) ? (HBARC / width) : FLT_MAX ),
00092   _spin(spin),
00093   _charge(charge),
00094   _widthCut( (massCut > 0.0) ? massCut : 2.0*width ),
00095   _sumBR(0.0),
00096   _decayList(new vector<DecayMode*>),
00097   _lundId(Pdt::lundId(code)),
00098   _pdgId(code),
00099   _geantId(Pdt::geantId(code)),
00100   _pidId(Pdt::pidId(code)),
00101   _pidNeutId(Pdt::pidNeutId(code)),
00102   _conjugate(0)
00103 { strcpy(_name, name); }

PdtEntry::~PdtEntry  )  [virtual]
 

00165 {
00166   vector<DecayMode*>::iterator iter=_decayList->begin();
00167   while ( iter != _decayList->end() ) { delete *iter; ++iter; }
00168   _decayList->clear(); 
00169   delete _decayList;
00170   delete [] _name;
00171 }

PdtEntry::PdtEntry const char *  name,
PdtLund::LundType  code,
float  spin,
float  charge,
float  mass,
float  width = 0,
float  massCut = 0
 

PdtEntry::PdtEntry const char *  name,
PdtGeant::GeantType  code,
float  spin,
float  charge,
float  mass,
float  width = 0,
float  massCut = 0
 

PdtEntry::PdtEntry const char *  name,
PdtPdg::PdgType  code,
float  spin,
float  charge,
float  mass,
float  width = 0,
float  massCut = 0
 

virtual PdtEntry::~PdtEntry  )  [virtual]
 


Member Function Documentation

void PdtEntry::addDecay float  bf,
vector< PdtEntry * > *  kids
 

void PdtEntry::addDecay float  bf,
vector< PdtEntry * > *  kids
 

00106 {
00107   _decayList->push_back(new DecayMode(bf, kids));
00108   _sumBR += bf;
00109 }

float PdtEntry::charge void   )  const [inline]
 

00054 {return _charge;}

float PdtEntry::charge  )  const [inline]
 

00054 {return _charge;}

const PdtEntry* PdtEntry::conjugate  )  const
 

const PdtEntry * PdtEntry::conjugate  )  const
 

00175 {
00176   if ( ! _conjugate ) {
00177     const_cast<PdtEntry*>(this)->_conjugate = Pdt::conjugate( this );
00178   }
00179   return _conjugate ;
00180 }

const vector<DecayMode*>* PdtEntry::decayList  )  const [inline]
 

00061 { return _decayList; }

const vector<DecayMode*>* PdtEntry::decayList  )  const [inline]
 

00061 { return _decayList; }

PdtGeant::GeantType PdtEntry::geantId  )  const [inline]
 

00065 { return _geantId; };

PdtGeant::GeantType PdtEntry::geantId  )  const [inline]
 

00065 { return _geantId; };

float PdtEntry::lifetime  )  const [inline]
 

00058 {return _lifetime;}

float PdtEntry::lifetime  )  const [inline]
 

00058 {return _lifetime;}

PdtLund::LundType PdtEntry::lundId  )  const [inline]
 

00063 { return _lundId;};

PdtLund::LundType PdtEntry::lundId  )  const [inline]
 

00063 { return _lundId;};

float PdtEntry::mass void   )  const [inline]
 

00055 {return _mass;}

float PdtEntry::mass void   )  const [inline]
 

00055 {return _mass;}

const char* PdtEntry::name void   )  const [inline]
 

00053 {return _name;}

const char* PdtEntry::name  )  const [inline]
 

00053 {return _name;}

bool PdtEntry::operator< const PdtEntry  )  const
 

bool PdtEntry::operator< const PdtEntry  )  const
 

00189 {
00190   return (_lundId < theOther._lundId || 
00191           (_lundId == theOther._lundId && _geantId < theOther._geantId));
00192 }

bool PdtEntry::operator== const PdtEntry  )  const
 

bool PdtEntry::operator== const PdtEntry  )  const
 

00184 {
00185   return (theOther._lundId==_lundId && theOther._geantId==_geantId);
00186 }

PdtPdg::PdgType PdtEntry::pdgId  )  const [inline]
 

00064 { return _pdgId; }

PdtPdg::PdgType PdtEntry::pdgId  )  const [inline]
 

00064 { return _pdgId; }

PdtPid::PidType PdtEntry::pidId  )  const [inline]
 

00066 { return _pidId; };

PdtPid::PidType PdtEntry::pidId  )  const [inline]
 

00066 { return _pidId; };

PdtPid::PidNeutralType PdtEntry::pidNeutId  )  const [inline]
 

00067 { return _pidNeutId; };

PdtPid::PidNeutralType PdtEntry::pidNeutId  )  const [inline]
 

00067 { return _pidNeutId; };

void PdtEntry::printBFOn std::ostream str  )  const
 

void PdtEntry::printBFOn std::ostream str  )  const
 

00158 {
00159   int l = _decayList->size();
00160   for (int i=0; i<l; i++)
00161     (*_decayList)[i]->printOn(str);
00162 }

void PdtEntry::printOn std::ostream str  )  const
 

void PdtEntry::printOn std::ostream str  )  const
 

00113 {
00114   // pkg coordinator:  we need to see if form() really is part of
00115   // iostream.  In any case, i've recoded things below simply to
00116   // avoid it.  Perhaps this is good enough.
00117   //
00118   
00119   //   str.form("%6d %-8s %8g ", (int) _lundId, _name, _mass);
00120   //   Not sure if the is exactly the same as using form(), but on
00121   //   sun, it's claimed that you get %g behavior from ios as default.
00122   //   I'm ignoring the left-field justification for now.
00123   //
00124   str << setw(6) << (int) _lundId << " " << setw(8) << _name << " "
00125       << setw(8) << _mass << " ";
00126   
00127   if (_width > 0.0)
00128     str << " " << _width;
00129   else 
00130     str << "Stable      ";
00131   str << setw(3) << _spin << "   " << setw(2) <<_charge
00132       << "   ";
00133   if (_width > 0.0)
00134     str << " " << _lifetime << endl;
00135   else
00136     str << " Stable\n";
00137 }

float PdtEntry::spin  )  const [inline]
 

00059 {return _spin;}

float PdtEntry::spin  )  const [inline]
 

00059 {return _spin;}

float PdtEntry::sumBR  )  const [inline]
 

00060 {return _sumBR;}

float PdtEntry::sumBR  )  const [inline]
 

00060 {return _sumBR;}

float PdtEntry::width void   )  const [inline]
 

00056 {return _width;}

float PdtEntry::width  )  const [inline]
 

00056 {return _width;}

float PdtEntry::widthCut  )  const [inline]
 

00057 {return _widthCut;}

float PdtEntry::widthCut  )  const [inline]
 

00057 {return _widthCut;}


Member Data Documentation

float PdtEntry::_charge [protected]
 

const PdtEntry* PdtEntry::_conjugate [protected]
 

const PdtEntry* PdtEntry::_conjugate [protected]
 

vector<DecayMode*>* PdtEntry::_decayList [protected]
 

vector<DecayMode*>* PdtEntry::_decayList [protected]
 

PdtGeant::GeantType PdtEntry::_geantId [protected]
 

float PdtEntry::_lifetime [protected]
 

PdtLund::LundType PdtEntry::_lundId [protected]
 

float PdtEntry::_mass [protected]
 

char* PdtEntry::_name [protected]
 

char* PdtEntry::_name [protected]
 

PdtPdg::PdgType PdtEntry::_pdgId [protected]
 

PdtPid::PidType PdtEntry::_pidId [protected]
 

PdtPid::PidNeutralType PdtEntry::_pidNeutId [protected]
 

float PdtEntry::_spin [protected]
 

float PdtEntry::_sumBR [protected]
 

float PdtEntry::_width [protected]
 

float PdtEntry::_widthCut [protected]
 


The documentation for this class was generated from the following files:
Generated on Wed Feb 2 16:38:48 2011 for BOSS6.5.5 by  doxygen 1.3.9.1