StHbtPythia6DstReader.h 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. #ifndef StHbtPythia6DstReader_hh
  2. #define StHbtPythia6DstReader_hh
  3. #include "StMaker.h"
  4. #include "StChain.h"
  5. #include "StHbtMaker/Base/StHbtEventReader.hh"
  6. #include "StHbtMaker/Base/StHbtEventCut.h"
  7. #include "StHbtMaker/Base/StHbtTrackCut.h"
  8. #include "StHbtMaker/Base/StHbtV0Cut.h"
  9. #include "TPythia6.h"
  10. //_________________
  11. class StHbtPythia6DstReader : public StHbtEventReader {
  12. public:
  13. //genVersion: 0-all events, 1-select identical pairs
  14. StHbtPythia6DstReader(TPythia6* pythiaDst, Int_t genVersion = 0);
  15. ~StHbtPythia6DstReader();
  16. StHbtEvent* ReturnHbtEvent();
  17. void RandomGeneration(StHbtEvent *mHbtEvent);
  18. void PrimaryTrackGeneration(StHbtEvent *mHbtEvent);
  19. void V0Generation(StHbtEvent *mHbtEvent);
  20. Double_t dedxMean(Double_t mass, Double_t momentum);
  21. int Init(const char* ReadWrite, StHbtString& Message);
  22. void Finish();
  23. void clear();
  24. void SetParticleId(Int_t partId);
  25. private:
  26. Int_t mGenVersion;
  27. TPythia6* mPythiaDst; //Generated event
  28. Int_t mEventCounter;
  29. long mEventTries;
  30. Int_t mPartId;
  31. Int_t mSelPartNum;
  32. Bool_t mEventIsGood;
  33. ClassDef(StHbtPythia6DstReader, 1)
  34. };
  35. inline void StHbtPythia6DstReader::SetParticleId(Int_t partId) {
  36. mPartId = partId; }
  37. #endif