Back to home page

sPhenix code displayed by LXR

 
 

    


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

0001 /*!
0002  * \file EventRho.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.
0004  * \author Tanner Mengel <tmengel@bnl.gov>
0005  * \version $Verison: 2.0.1 $
0006  * \date $Date: 02/01/2024. Revised 09/19/2024$
0007  */
0008 
0009 #ifndef JETBACKGROUND_EVENTRHO_H
0010 #define JETBACKGROUND_EVENTRHO_H
0011 
0012 #include <jetbase/Jet.h>
0013 
0014 #include <phool/PHObject.h>
0015 
0016 #include <iostream>
0017 
0018 class EventRho : public PHObject
0019 {
0020  public:
0021   // enum for method of rho calculation
0022   enum Method
0023   {
0024     NONE = 0,
0025     AREA = 1,
0026     MULT = 2
0027   };
0028 
0029   ~EventRho() override {};
0030 
0031   void identify(std::ostream &os = std::cout) const override { os << "EventRho base class" << std::endl; };
0032   int isValid() const override { return 0; }
0033 
0034   // setters
0035   virtual void set_rho(float /*rho*/) {}
0036   virtual void set_sigma(float /*sigma*/) {}
0037   virtual void set_method(EventRho::Method /*rho_method*/) {}
0038 
0039   // getters
0040   virtual float get_rho() { return 0; }
0041   virtual float get_sigma() { return 0; }
0042   virtual EventRho::Method get_method() { return Method::NONE; }
0043 
0044  protected:
0045   EventRho() {}  // ctor
0046 
0047  private:
0048   ClassDefOverride(EventRho, 1);
0049 };
0050 
0051 #endif  // JETBACKGROUND_EVENTRHO_H