Back to home page

sPhenix code displayed by LXR

 
 

    


File indexing completed on 2025-12-19 09:24:41

0001 // Tell emacs that this is a C++ source
0002 //  -*- C++ -*-.
0003 #ifndef PROTOTYPE3_CALOCALIBRATION_H
0004 #define PROTOTYPE3_CALOCALIBRATION_H
0005 
0006 //* Unpacks raw HCAL PRDF files *//
0007 // Abhisek Sen
0008 
0009 #include <fun4all/SubsysReco.h>
0010 
0011 #include <phparameter/PHParameters.h>
0012 
0013 #include <string>
0014 
0015 class PHCompositeNode;
0016 class RawTowerContainer;
0017 
0018 class CaloCalibration : public SubsysReco
0019 {
0020  public:
0021   CaloCalibration(const std::string &name);
0022 
0023   int Init(PHCompositeNode *topNode);
0024 
0025   int InitRun(PHCompositeNode *topNode);
0026 
0027   int process_event(PHCompositeNode *topNode);
0028 
0029   int End(PHCompositeNode *topNode);
0030 
0031   void CreateNodeTree(PHCompositeNode *topNode);
0032 
0033   std::string get_calib_tower_node_prefix() const
0034   {
0035     return _calib_tower_node_prefix;
0036   }
0037 
0038   void set_calib_tower_node_prefix(const std::string &calibTowerNodePrefix)
0039   {
0040     _calib_tower_node_prefix = calibTowerNodePrefix;
0041   }
0042 
0043   std::string get_raw_tower_node_prefix() const
0044   {
0045     return _raw_tower_node_prefix;
0046   }
0047 
0048   void set_raw_tower_node_prefix(const std::string &rawTowerNodePrefix)
0049   {
0050     _raw_tower_node_prefix = rawTowerNodePrefix;
0051   }
0052 
0053   //! Get the parameters for readonly
0054   const PHParameters &GetCalibrationParameters() const { return _calib_params; }
0055 
0056   //! Get the parameters for update. Useful fields are listed in
0057   //! SetDefaultParameters();
0058   PHParameters &GetCalibrationParameters() { return _calib_params; }
0059 
0060   //! Overwrite the parameter. Useful fields are listed in
0061   //! SetDefaultParameters();
0062   void SetCalibrationParameters(const PHParameters &calib_params)
0063   {
0064     _calib_params = calib_params;
0065   }
0066 
0067  private:
0068   RawTowerContainer *_calib_towers;
0069   RawTowerContainer *_raw_towers;
0070 
0071   std::string detector;
0072   std::string RawTowerNodeName;
0073   std::string CaliTowerNodeName;
0074 
0075   std::string _calib_tower_node_prefix;
0076   std::string _raw_tower_node_prefix;
0077 
0078   PHParameters _calib_params;
0079 
0080   //! load the default parameter to param
0081   void SetDefaultParameters(PHParameters &param);
0082 };
0083 
0084 #endif