14 #include "TDatabasePDG.h" 
   29   TNamed ( name,name ),fTypePlus ( 0 ),fTypeMinus ( 0 ),fCriterion ( 
loose )
 
   36     TDatabasePDG* pdg = TDatabasePDG::Instance();
 
   39     if ( sType.Index ( 
"+" ) >0  || sType==
"p+" || sType==
"proton" ) {
 
   43     } 
else if ( sType.Index ( 
"-" ) >0  || sType==
"anti-p-" || sType==
"antiproton" ) {
 
   68   } 
else if ( crit==
"veryloose" ) {
 
   70   } 
else if ( crit==
"loose" ) {
 
   72   } 
else if ( crit==
"tight" ) {
 
   74   } 
else if ( crit==
"verytight" ) {
 
   76   } 
else if ( crit==
"variable" ) {
 
   78   } 
else if ( crit==
"all" ) {
 
   81     cerr << GetName() << 
": Unknown criterion " << crit.Data() << endl;
 
  105   for ( Int_t 
i=0; 
i<
n; 
i++ ) {
 
  132   TDatabasePDG* pdt = TDatabasePDG::Instance();
 
  133   Int_t theCode = thePart->PdgCode();
 
  137   if ( name.Index ( 
"-" ) >0 || name.Index ( 
"+" ) >0 || abs ( theCode ) ==2212 ) { theCode = -theCode; }
 
  139   return pdt->GetParticle ( theCode );
 
  145   if ( b == 0 ) { 
return; }
 
Double_t GetCharge() const 
void Select(RhoCandList &l)
criterion fCriterion
Particle type to accept. 
virtual Bool_t Accept(RhoCandidate *)=0
TParticlePDG * fTypeMinus
Particle type to accept. 
TParticlePDG * CPConjugate(TParticlePDG *aPart)
void SetType(const TParticlePDG *pdt)
RhoParticleSelectorBase(const char *name="VAbsPidSelector", const char *type=0)
virtual ~RhoParticleSelectorBase()
void Select(RhoParticleSelectorBase *pidmgr)
void SetMass(Double_t mass)
void SetTypeAndMass(RhoCandidate *b)
virtual void SetCriterion(const char *crit)
void Put(const RhoCandidate *, Int_t i=-1)