Back to home page

sPhenix code displayed by LXR

 
 

    


File indexing completed on 2025-08-06 08:17:37

0001 // Tell emacs that this is a C++ source
0002 //  -*- C++ -*-.
0003 #ifndef EPD_EPDRECO_H__
0004 #define EPD_EPDRECO_H__
0005 
0006 //===========================================================
0007 /// \author Ejiro Umaka
0008 //===========================================================
0009 
0010 #include <fun4all/SubsysReco.h>
0011 
0012 #include <array>
0013 #include <string>  // for string
0014 
0015 class CDBTTree;
0016 class PHCompositeNode;
0017 
0018 class EpdReco : public SubsysReco
0019 {
0020  public:
0021   EpdReco(const std::string &name = "EpdReco");
0022   ~EpdReco() override;
0023   int InitRun(PHCompositeNode *topNode) override;
0024   int process_event(PHCompositeNode *topNode) override;
0025 
0026  private:
0027   void CreateNodes(PHCompositeNode *topNode);
0028   float GetTilePhi(int thisphi);
0029   float GetTilePhi0(int thisphi0);
0030   float GetTileR(int thisr);
0031   float GetTileZ(int thisz);
0032   void FillTilePhiArray();
0033   void FillTilePhi0Array();
0034 
0035   CDBTTree *cdbttree{nullptr};
0036   bool m_overrideCalibName{false};
0037   bool m_overrideFieldName{false};
0038 
0039   std::string m_fieldname;
0040   std::string m_calibName;
0041   std::string m_Detector{"SEPD"};
0042   std::string m_TowerInfoNodeName_calib{"TOWERINFO_CALIB_SEPD"};
0043 
0044   std::array<float, 24> tilephi{};
0045   std::array<float, 12> tilephi0{};
0046 };
0047 
0048 #endif  // EPD_EPDRECO_H