MpdBbcHitProducer.h 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495
  1. // -------------------------------------------------------------------------
  2. // ----- MpdBbcHitproducer header file -----
  3. // -------------------------------------------------------------------------
  4. #ifndef CBMHYPHITPRODUCER_H
  5. #define CBMHYPHITPRODUCER_H 1
  6. #include <map>
  7. #include <iostream>
  8. #include "FairTask.h"
  9. #include "TH1F.h"
  10. #include "TH2F.h"
  11. #include "TList.h"
  12. #include "TFile.h"
  13. #include "MpdBbcHit.h"
  14. #include "TVector3.h"
  15. class TClonesArray;
  16. class TObjectArray;
  17. class MpdBbcHitProducer : public FairTask
  18. {
  19. public:
  20. /** Default constructor **/
  21. MpdBbcHitProducer(const char* fileGeo);
  22. /** Destructor **/
  23. ~MpdBbcHitProducer();
  24. /** Virtual method Init **/
  25. virtual InitStatus Init();
  26. /** Virtual method Exec **/
  27. virtual void Exec(Option_t* opt);
  28. MpdBbcHit* AddHit(Int_t trackID, Int_t detID, Float_t energy);
  29. void CreateStructure();
  30. void virtual FinishTask();
  31. void virtual Finish();
  32. void MakeHists();
  33. private:
  34. /** Input array of MpdBbcPoints **/
  35. TClonesArray* fPointArray;
  36. /** Output array of MpdBbcHit **/
  37. TClonesArray* fDigiArray;
  38. TObjArray *fVolumeArray;
  39. /** Geo file to use **/
  40. TString fFileGeo;
  41. Float_t eneThr;
  42. //_____ Histograms_____________
  43. TList *hlist;
  44. TH1F *fZ;
  45. TH1F *fR;
  46. TH2F *fXY;
  47. TH2F *fXY_small;
  48. TH2F *fXY_big;
  49. TH2F *fRphi;
  50. typedef std::map<Int_t, Float_t> mapper;
  51. mapper emcX, emcY, emcZ, emcTheta, emcPhi, emcTau;
  52. /* map<Int_t, Float_t> emcX; */
  53. /* map<Int_t, Float_t> emcY; */
  54. /* map<Int_t, Float_t> emcZ; */
  55. /* map<Int_t, Float_t> emcTheta; */
  56. /* map<Int_t, Float_t> emcPhi; */
  57. /* map<Int_t, Float_t> emcTau; */
  58. ClassDef(MpdBbcHitProducer,1);
  59. };
  60. #endif