StRoot  1
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
StTpcDedxPidAlgorithm.h
1 
5 /***************************************************************************
6  *
7  * $Id: StTpcDedxPidAlgorithm.h,v 2.10 2014/01/15 21:01:42 fisyak Exp $
8  *
9  * Author: Thomas Ullrich, Sep 1999
10  ***************************************************************************
11  *
12  * Description:
13  *
14  ***************************************************************************
15  *
16  * $Log: StTpcDedxPidAlgorithm.h,v $
17  * Revision 2.10 2014/01/15 21:01:42 fisyak
18  * change default from kTruncatedMeanId => kLikelihoodFitId
19  *
20  * Revision 2.9 2010/08/31 20:15:11 fisyak
21  * Clean up
22  *
23  * Revision 2.8 2002/03/26 23:09:17 ullrich
24  * Added destructor.
25  *
26  * Revision 2.7 2002/02/22 22:56:52 jeromel
27  * Doxygen basic documentation in all header files. None of this is required
28  * for QM production.
29  *
30  * Revision 2.6 2000/03/02 12:43:51 ullrich
31  * Method can be passed as argument to constructor. Default
32  * method is truncated mean.
33  *
34  * Revision 2.5 1999/12/21 15:09:14 ullrich
35  * Modified to cope with new compiler version on Sun (CC5.0).
36  *
37  * Revision 2.4 1999/12/02 16:35:40 ullrich
38  * Added method to return the stored dE/dx traits
39  *
40  * Revision 2.3 1999/11/29 15:33:34 ullrich
41  * Changed Macro for SUN CC
42  *
43  * Revision 2.2 1999/10/28 22:27:04 ullrich
44  * Adapted new StArray version. First version to compile on Linux and Sun.
45  *
46  * Revision 2.1 1999/10/13 19:43:55 ullrich
47  * Initial Revision
48  *
49  **************************************************************************/
50 #ifndef StTpcDedxPidAlgorithm_hh
51 #define StTpcDedxPidAlgorithm_hh
52 #include <vector>
53 #include "StFunctional.h"
54 #include "StEnumerations.h"
55 #include "Rtypes.h"
56 #if !defined(ST_NO_NAMESPACES)
57 using std::vector;
58 #endif
59 
60 class StDedxPidTraits;
61 
63 public:
64  StTpcDedxPidAlgorithm(StDedxMethod = kLikelihoodFitId);
66 
67  StParticleDefinition* operator() (const StTrack&, const StSPtrVecTrackPidTraits&);
68 
69  const StDedxPidTraits* traits() const { return mTraits; }
70  Double_t numberOfSigma(const StParticleDefinition*) const;
71 
72 private:
73  const StDedxPidTraits* mTraits;
74  const StTrack* mTrack;
75  StDedxMethod mDedxMethod;
76 #if defined(ST_NO_TEMPLATE_DEF_ARGS)
77  vector<StParticleDefinition*,
78  allocator<StParticleDefinition*> > mParticles;
79 #else
80  vector<StParticleDefinition*> mParticles;
81 #endif
82 };
83 #endif
84 
85