Back to home page

sPhenix code displayed by LXR

 
 

    


File indexing completed on 2025-08-06 08:18:13

0001 /**
0002  * @file trackbase/TrkrHitv1.h
0003  * @author D. McGlinchey, Tony Frawley
0004  * @brief Derived class v1 for hit object
0005  */
0006 #ifndef TRACKBASE_TRKRHITV1_H
0007 #define TRACKBASE_TRKRHITV1_H
0008 
0009 #include "TrkrHit.h"
0010 
0011 #include <phool/PHObject.h>
0012 
0013 #include <iostream>
0014 
0015 /**
0016  * @brief Inherited class v1 for hit object
0017  *
0018  */
0019 class TrkrHitv1 : public TrkrHit
0020 {
0021  public:
0022   //! ctor
0023   explicit TrkrHitv1() = default;
0024 
0025   //! dtor
0026   ~TrkrHitv1() override = default;
0027 
0028   // PHObject virtual overloads
0029   void identify(std::ostream& os = std::cout) const override
0030   {
0031     os << "TrkrHitV1 class with adc = " << m_adc << std::endl;
0032   }
0033   void Reset() override {}
0034   int isValid() const override { return 0; }
0035 
0036   //! import PHObject CopyFrom, in order to avoid clang warning
0037   using PHObject::CopyFrom;
0038 
0039   //! copy content from base class
0040   void CopyFrom(const TrkrHit&) override;
0041 
0042   //! copy content from base class
0043   void CopyFrom(TrkrHit* source) override
0044   {
0045     CopyFrom(*source);
0046   }
0047 
0048   void addEnergy(const double edep) override { m_edep += edep; }
0049   double getEnergy() const override { return m_edep; }
0050   void setAdc(const unsigned int adc) override { m_adc = adc; }
0051   unsigned int getAdc() const override;
0052 
0053  protected:
0054   double m_edep = 0;
0055   unsigned int m_adc = 0;
0056   ClassDefOverride(TrkrHitv1, 1);
0057 };
0058 
0059 #endif  // TRACKBASE_TRKRHITV1_H