Back to home page

sPhenix code displayed by LXR

 
 

    


File indexing completed on 2025-08-05 08:18:08

0001 // Tell emacs that this is a C++ source
0002 //  -*- C++ -*-.
0003 // $Id: $
0004 
0005 /*!
0006  * \file PHG4HitEval.h
0007  * \brief
0008  * \author Jin Huang <jhuang@bnl.gov>
0009  * \version $Revision:   $
0010  * \date $Date: $
0011  */
0012 
0013 #ifndef G4MAIN_PHG4HITEVAL_H
0014 #define G4MAIN_PHG4HITEVAL_H
0015 
0016 #include "PHG4Hitv1.h"
0017 
0018 class PHG4Hit;
0019 class PHObject;
0020 
0021 /*!
0022  * \brief PHG4HitEval for evaluating PHG4Hitv1 in CINT readable evaluation trees
0023  */
0024 class PHG4HitEval : public PHG4Hitv1
0025 {
0026  public:
0027   PHG4HitEval();
0028 
0029   PHG4HitEval(const PHG4Hit *g4hit);
0030 
0031   ~PHG4HitEval() override {}
0032 
0033   void CopyFrom(const PHObject *phobj) override;
0034 
0035   float
0036   get_eion() const override
0037   {
0038     return eion;
0039   }
0040   void
0041   set_eion(const float f) override
0042   {
0043     eion = f;
0044   }
0045 
0046   int get_scint_id() const override
0047   {
0048     return scint_id;
0049   }
0050 
0051   void
0052   set_scint_id(const int i) override
0053   {
0054     scint_id = i;
0055   }
0056 
0057   float
0058   get_light_yield() const override
0059   {
0060     return light_yield;
0061   }
0062 
0063   void
0064   set_light_yield(float lightYield) override
0065   {
0066     light_yield = lightYield;
0067   }
0068 
0069   float
0070   get_path_length() const override
0071   {
0072     return path_length;
0073   }
0074 
0075   void
0076   set_path_length(float pathLength) override
0077   {
0078     path_length = pathLength;
0079   }
0080 
0081  protected:
0082   float eion;
0083 
0084   int scint_id;
0085 
0086   //! a number proportional to the scintillation light yield.
0087   float light_yield;
0088 
0089   //! path length of the track to the hit
0090   float path_length;
0091 
0092   ClassDefOverride(PHG4HitEval, 1)
0093 };
0094 
0095 #endif /* PHG4HITEVAL_H_ */