FairRoot/PandaRoot
RhoParticleSelectorBase.h
Go to the documentation of this file.
1 #ifndef RHOPARTICLESELECTORBASE_H
2 #define RHOPARTICLESELECTORBASE_H
3 // //
5 // RhoParticleSelectorBase //
6 // //
7 // Selector classes for particle identification //
8 // Particle masses are set from the TDatabasePDG class //
9 // //
10 // Author: Marcel Kunze, RUB, Feb. 99 //
11 // Copyright (C) 1999-2001, Ruhr-University Bochum. //
12 // Ralf Kliemt, HIM/GSI Feb.2013 (Cleanup & Restructuring) //
13 // //
15 
16 #include <iostream>
17 
18 #include "TNamed.h"
19 
20 class RhoCandidate;
21 class RhoCandList;
22 class PndPidCandidate;
23 class TParticlePDG;
24 
26 
27 class RhoParticleSelectorBase : public TNamed
28 {
29 
30  public:
31 
32  //Constructor
33  RhoParticleSelectorBase ( const char* name="VAbsPidSelector",const char* type = 0 );
34  //Destructor
35  virtual ~RhoParticleSelectorBase();
36 
37  //operations
38  virtual Bool_t Accept ( RhoCandidate* ) = 0;
39  virtual Bool_t Accept ( PndPidCandidate* ) = 0;
40 
41  virtual void SetCriterion ( const char* crit );
42  void SetCriterion ( criterion crit );
43  void Select ( RhoCandList& l );
44  void Select ( RhoCandList& in,RhoCandList& out );
45 
46  protected:
47  TParticlePDG* CPConjugate ( TParticlePDG* aPart );
48 
49  void SetTypeAndMass ( RhoCandidate* b );
50 
51  TParticlePDG* fTypePlus;
52  TParticlePDG* fTypeMinus;
54 
55  public:
56  ClassDef ( RhoParticleSelectorBase,1 ) // Particle Selector base class
57 };
58 
59 #endif
TTree * b
criterion fCriterion
Particle type to accept.
virtual Bool_t Accept(RhoCandidate *)=0
TParticlePDG * fTypeMinus
Particle type to accept.
TParticlePDG * CPConjugate(TParticlePDG *aPart)
RhoParticleSelectorBase(const char *name="VAbsPidSelector", const char *type=0)
TFile * out
Definition: reco_muo.C:20
void SetTypeAndMass(RhoCandidate *b)
TString name
virtual void SetCriterion(const char *crit)