Back to home page

sPhenix code displayed by LXR

 
 

    


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

0001 #ifndef G4HISTOS_G4ROOTSCINTILLATORSLATCONTAINER_H
0002 #define G4HISTOS_G4ROOTSCINTILLATORSLATCONTAINER_H
0003 
0004 #include <phool/PHObject.h>
0005 
0006 #include <iostream>  // for cout, ostream
0007 #include <limits>
0008 
0009 class PHG4ScintillatorSlat;
0010 class G4RootScintillatorSlat;
0011 class TClonesArray;
0012 
0013 class G4RootScintillatorSlatContainer : public PHObject
0014 {
0015  public:
0016   G4RootScintillatorSlatContainer();
0017   ~G4RootScintillatorSlatContainer() override;
0018 
0019   void identify(std::ostream& os = std::cout) const override;
0020   void Reset() override;
0021 
0022   G4RootScintillatorSlat* AddSlat(const PHG4ScintillatorSlat& slat);
0023 
0024   void set_idet(const int i) { idet = i; }
0025   int get_idet() const { return idet; }
0026 
0027   void set_etotal(const float e) { etotal = e; }
0028   float get_etotal() const { return etotal; }
0029 
0030   void set_eion(const float e) { eion = e; }
0031   float get_eion() const { return eion; }
0032 
0033   void set_leakage(const float f) { leakage = f; }
0034   float get_leakage() const { return leakage; }
0035 
0036   void set_event(const int i) { event = i; }
0037   int get_event() const { return event; }
0038 
0039  protected:
0040   int idet{std::numeric_limits<int>::min()};
0041   float etotal{std::numeric_limits<float>::quiet_NaN()};
0042   float eion{std::numeric_limits<float>::quiet_NaN()};
0043   float leakage{std::numeric_limits<float>::quiet_NaN()};
0044   int event{0};
0045   TClonesArray* SnglSlats{nullptr};
0046 
0047   ClassDefOverride(G4RootScintillatorSlatContainer, 1)
0048 };
0049 
0050 #endif