StO97Event.h 2.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364
  1. //
  2. // The version of the class should be changed every time
  3. // when any changes in the codes are done
  4. // Grigory Nigmatkulov: 2016/12/15
  5. //
  6. #ifndef STOSCAR97EVENT_H
  7. #define STOSCAR97EVENT_H
  8. #include <TObject.h>
  9. #include <TClonesArray.h>
  10. #include "StO97Track.h"
  11. //_________________
  12. class StO97Event : public TObject {
  13. public:
  14. //Constructor
  15. StO97Event();
  16. //Copy constructor
  17. StO97Event(const StO97Event &copy);
  18. //Assignment operator
  19. StO97Event &operator=(const StO97Event &event);
  20. //Destructor
  21. virtual ~StO97Event();
  22. //Clear option
  23. void Clear(Option_t* option= "");
  24. //Getters
  25. UInt_t GetRunId() const { return mRunId; }
  26. UInt_t GetEventNumber() const { return mEventNumber; }
  27. Int_t GetNTracks() const { return (UShort_t)mNTracks; }
  28. Float_t GetImpactPar() const { return mImpactPar; }
  29. Float_t GetEventPlaneRot() const { return mEventPlaneRot; }
  30. Float_t GetTransverseSphericity() const { return (Float_t)mTransverseSphericity * 0.01; }
  31. Float_t GetTransverseSphericity2() const { return (Float_t)mTransverseSphericity2 * 0.01; }
  32. TClonesArray *GetTracks() { return mTracks; }
  33. //Setters
  34. void SetRunId(Int_t id) { (id>0) ? mRunId=(UInt_t)id : mRunId=(UInt_t)(-1 * id); }
  35. void SetEventNumber(Int_t num) { (num>0) ? mEventNumber=(UInt_t)num : mEventNumber=(UInt_t)(-1 * num); }
  36. void SetImpactPar(Float_t impPar) { mImpactPar = impPar; }
  37. void SetEventPlaneRot(Float_t epr) { mEventPlaneRot = epr; }
  38. void SetTracks(TClonesArray *tracks) { mTracks = tracks; }
  39. void SetTransverseSphericity(Float_t x);
  40. void SetTransverseSphericity2(Float_t x);
  41. StO97Track *AddOscar97Track();
  42. private:
  43. UInt_t mRunId; //Run number: should be a unique number for the file
  44. UInt_t mEventNumber; //Event number
  45. Float_t mImpactPar; //Impact parameter (fm/c)
  46. Float_t mEventPlaneRot; //Rotation of the event plane (fixed to 0. in UrQMD)
  47. UShort_t mNTracks; //Length of recorded StO97Tracks
  48. UChar_t mTransverseSphericity; //For primary tracks with pT>0.15 GeV and |eta|<0.5
  49. UChar_t mTransverseSphericity2; //For primary tracks with pT>0.15 GeV and |eta|<1
  50. TClonesArray *mTracks; //Array of StO97Tracks
  51. ClassDef(StO97Event, 1)
  52. };
  53. #endif