Back to home page

sPhenix code displayed by LXR

 
 

    


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

0001 // Tell emacs that this is a C++ source
0002 //  -*- C++ -*-.
0003 #ifndef PROTOTYPE2_CALOCALIBRATION_H
0004 #define PROTOTYPE2_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 InitRun(PHCompositeNode *topNode);
0024 
0025   int process_event(PHCompositeNode *topNode);
0026 
0027   void CreateNodeTree(PHCompositeNode *topNode);
0028 
0029   std::string get_calib_tower_node_prefix() const
0030   {
0031     return _calib_tower_node_prefix;
0032   }
0033 
0034   void set_calib_tower_node_prefix(const std::string &calibTowerNodePrefix)
0035   {
0036     _calib_tower_node_prefix = calibTowerNodePrefix;
0037   }
0038 
0039   std::string get_raw_tower_node_prefix() const
0040   {
0041     return _raw_tower_node_prefix;
0042   }
0043 
0044   void set_raw_tower_node_prefix(const std::string &rawTowerNodePrefix)
0045   {
0046     _raw_tower_node_prefix = rawTowerNodePrefix;
0047   }
0048 
0049   //! Get the parameters for readonly
0050   const PHParameters &GetCalibrationParameters() const { return _calib_params; }
0051 
0052   //! Get the parameters for update. Useful fields are listed in
0053   //! SetDefaultParameters();
0054   PHParameters &GetCalibrationParameters() { return _calib_params; }
0055 
0056   //! Overwrite the parameter. Useful fields are listed in
0057   //! SetDefaultParameters();
0058   void SetCalibrationParameters(const PHParameters &calib_params)
0059   {
0060     _calib_params = calib_params;
0061   }
0062 
0063  private:
0064   RawTowerContainer *_calib_towers;
0065   RawTowerContainer *_raw_towers;
0066 
0067   std::string detector;
0068   std::string RawTowerNodeName;
0069   std::string CaliTowerNodeName;
0070 
0071   std::string _calib_tower_node_prefix;
0072   std::string _raw_tower_node_prefix;
0073 
0074   PHParameters _calib_params;
0075 
0076   //! load the default parameter to param
0077   void SetDefaultParameters(PHParameters &param);
0078 };
0079 
0080 #endif