Back to home page

sPhenix code displayed by LXR

 
 

    


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

0001 /*!
0002  * \file EventRhov1.h
0003  * \brief PHObject to store rho and sigma for calorimeter towers on an event-by-event basis. Options for rho calculation are AREA and MULT or NONE. Copy of EventRhov1 with a differnet name
0004  * \author Tanner Mengel <tmengel@bnl.gov>
0005  * \version $Verison: 2.0.1 $
0006  * \date $Date: 02/01/2024. $
0007  */
0008 
0009 #ifndef JETBACKGROUND_EVENTRHOV1_H
0010 #define JETBACKGROUND_EVENTRHOV1_H
0011 
0012 #include "EventRho.h"
0013 
0014 class EventRhov1 : public EventRho
0015 {
0016  public:
0017   EventRhov1();
0018   ~EventRhov1() override = default;
0019 
0020   void identify(std::ostream &os = std::cout) const override;
0021   void Reset() override {}  // new in v1
0022   int isValid() const override { return 1; }
0023 
0024   // setters
0025   void set_rho(float rho) override { m_tower_rho = rho; }
0026   void set_sigma(float sigma) override { m_tower_sigma = sigma; }
0027   void set_method(EventRho::Method method) override;
0028 
0029   // getters
0030   float get_rho() override { return m_tower_rho; }
0031   float get_sigma() override { return m_tower_sigma; }
0032   EventRho::Method get_method() override { return m_rho_method_type; }
0033 
0034   // static method to string conversion
0035   static std::string get_method_string(EventRho::Method method);  // new in v1
0036 
0037  private:
0038   float m_tower_rho{0};                                        // momentum density
0039   float m_tower_sigma{0};                                      // sigma of momentum density
0040   EventRho::Method m_rho_method_type{EventRho::Method::NONE};  // method of rho calculation
0041 
0042   ClassDefOverride(EventRhov1, 1);
0043 };
0044 
0045 #endif  // JETBACKGROUND_EVENTRHOV1_H