MpdCpcHitProducer.h 1.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293
  1. // -------------------------------------------------------------------------
  2. // ----- MpdCpcHitproducer 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 "MpdCpcHit.h"
  14. #include "TVector3.h"
  15. class TClonesArray;
  16. class TObjectArray;
  17. class MpdCpcHitProducer : public FairTask
  18. {
  19. public:
  20. /** Default constructor **/
  21. MpdCpcHitProducer(const char* fileGeo);
  22. /** Destructor **/
  23. ~MpdCpcHitProducer();
  24. /** Virtual method Init **/
  25. virtual InitStatus Init();
  26. /** Virtual method Exec **/
  27. virtual void Exec(Option_t* opt);
  28. MpdCpcHit* 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. virtual void SetParContainers();
  35. /** Input array of MpdCpcPoints **/
  36. TClonesArray* fPointArray;
  37. /** Output array of MpdCpcHit **/
  38. TClonesArray* fDigiArray;
  39. TObjArray *fVolumeArray;
  40. /** Geo file to use **/
  41. TString fFileGeo;
  42. Float_t eneThr;
  43. //_____ Histograms_____________
  44. TList *hlist;
  45. TH1F *fZ;
  46. TH1F *fR;
  47. TH2F *fXY;
  48. TH2F *fRphi;
  49. typedef std::map<Int_t, Float_t> mapper;
  50. mapper emcX, emcY, emcZ, emcTheta, emcPhi, emcTau;
  51. /* map<Int_t, Float_t> emcX; */
  52. /* map<Int_t, Float_t> emcY; */
  53. /* map<Int_t, Float_t> emcZ; */
  54. /* map<Int_t, Float_t> emcTheta; */
  55. /* map<Int_t, Float_t> emcPhi; */
  56. /* map<Int_t, Float_t> emcTau; */
  57. ClassDef(MpdCpcHitProducer,1);
  58. };
  59. #endif