12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879 |
- /***************************************************************************
- *
- * $Id:
- *
- * Author: Mike Lisa, Ohio State, lisa@mps.ohio-state.edu
- ***************************************************************************
- *
- * Description: part of STAR HBT Framework: StHbtMaker package
- * a simple particle cut that selects on phasespace, #hits, DCA, and PID
- *
- ***************************************************************************
- *
- * $Log:
- **************************************************************************/
- #ifndef mikesTrackCut_hh
- #define mikesTrackCut_hh
- //#ifndef StMaker_H
- //#include "StMaker.h"
- //#endif
- #include "StHbtMaker/Base/StHbtTrackCut.h"
- class mikesTrackCut : public StHbtTrackCut {
- public:
- mikesTrackCut();
- //~mikesTrackCut();
- virtual bool Pass(const StHbtTrack*);
- virtual StHbtString Report();
- void SetNSigmaPion(const float& lo, const float& hi);
- void SetNSigmaKaon(const float& lo, const float& hi);
- void SetNSigmaProton(const float& lo, const float& hi);
- void SetNHits(const int& lo, const int& hi);
- void SetPt(const float& lo, const float& hi);
- void SetRapidity(const float& lo, const float& hi);
- void SetDCA(const float& lo, const float& hi);
- void SetCharge(const int&);
- private: // here are the quantities I want to cut on...
- int mCharge;
- float mNSigmaPion[2];
- float mNSigmaKaon[2];
- float mNSigmaProton[2];
- int mNHits[2];
- float mPt[2];
- float mRapidity[2];
- float mDCA[2];
- long mNTracksPassed;
- long mNTracksFailed;
- #ifdef __ROOT__
- ClassDef(mikesTrackCut, 1)
- #endif
- };
- inline void mikesTrackCut::SetNSigmaPion(const float& lo, const float& hi){mNSigmaPion[0]=lo; mNSigmaPion[1]=hi;}
- inline void mikesTrackCut::SetNSigmaKaon(const float& lo, const float& hi){mNSigmaKaon[0]=lo; mNSigmaKaon[1]=hi;}
- inline void mikesTrackCut::SetNSigmaProton(const float& lo, const float& hi){mNSigmaProton[0]=lo; mNSigmaProton[1]=hi;}
- inline void mikesTrackCut::SetNHits(const int& lo, const int& hi){mNHits[0]=lo;mNHits[1]=hi;}
- inline void mikesTrackCut::SetPt(const float& lo, const float& hi){mPt[0]=lo; mPt[1]=hi;}
- inline void mikesTrackCut::SetRapidity(const float& lo,const float& hi){mRapidity[0]=lo; mRapidity[1]=hi;}
- inline void mikesTrackCut::SetDCA(const float& lo,const float& hi){mDCA[0]=lo; mDCA[1]=hi;}
- inline void mikesTrackCut::SetCharge(const int& ch){mCharge = ch;}
- #endif
|