00001 00005 /*************************************************************************** 00006 * 00007 * $Id: StTpcDedxPidAlgorithm.h,v 2.9 2010/08/31 20:15:11 fisyak Exp $ 00008 * 00009 * Author: Thomas Ullrich, Sep 1999 00010 *************************************************************************** 00011 * 00012 * Description: 00013 * 00014 *************************************************************************** 00015 * 00016 * $Log: StTpcDedxPidAlgorithm.h,v $ 00017 * Revision 2.9 2010/08/31 20:15:11 fisyak 00018 * Clean up 00019 * 00020 * Revision 2.8 2002/03/26 23:09:17 ullrich 00021 * Added destructor. 00022 * 00023 * Revision 2.7 2002/02/22 22:56:52 jeromel 00024 * Doxygen basic documentation in all header files. None of this is required 00025 * for QM production. 00026 * 00027 * Revision 2.6 2000/03/02 12:43:51 ullrich 00028 * Method can be passed as argument to constructor. Default 00029 * method is truncated mean. 00030 * 00031 * Revision 2.5 1999/12/21 15:09:14 ullrich 00032 * Modified to cope with new compiler version on Sun (CC5.0). 00033 * 00034 * Revision 2.4 1999/12/02 16:35:40 ullrich 00035 * Added method to return the stored dE/dx traits 00036 * 00037 * Revision 2.3 1999/11/29 15:33:34 ullrich 00038 * Changed Macro for SUN CC 00039 * 00040 * Revision 2.2 1999/10/28 22:27:04 ullrich 00041 * Adapted new StArray version. First version to compile on Linux and Sun. 00042 * 00043 * Revision 2.1 1999/10/13 19:43:55 ullrich 00044 * Initial Revision 00045 * 00046 **************************************************************************/ 00047 #ifndef StTpcDedxPidAlgorithm_hh 00048 #define StTpcDedxPidAlgorithm_hh 00049 #include <vector> 00050 #include "StFunctional.h" 00051 #include "StEnumerations.h" 00052 #include "Rtypes.h" 00053 #if !defined(ST_NO_NAMESPACES) 00054 using std::vector; 00055 #endif 00056 00057 class StDedxPidTraits; 00058 00059 class StTpcDedxPidAlgorithm : public StPidAlgorithm { 00060 public: 00061 StTpcDedxPidAlgorithm(StDedxMethod = kTruncatedMeanId); 00062 ~StTpcDedxPidAlgorithm() {} 00063 00064 StParticleDefinition* operator() (const StTrack&, const StSPtrVecTrackPidTraits&); 00065 00066 const StDedxPidTraits* traits() const { return mTraits; } 00067 Double_t numberOfSigma(const StParticleDefinition*) const; 00068 00069 private: 00070 const StDedxPidTraits* mTraits; 00071 const StTrack* mTrack; 00072 StDedxMethod mDedxMethod; 00073 #if defined(ST_NO_TEMPLATE_DEF_ARGS) 00074 vector<StParticleDefinition*, 00075 allocator<StParticleDefinition*> > mParticles; 00076 #else 00077 vector<StParticleDefinition*> mParticles; 00078 #endif 00079 }; 00080 #endif 00081 00082
1.5.9