Back to home page

sPhenix code displayed by LXR

 
 

    


File indexing completed on 2025-08-06 08:19:02

0001 // Tell emacs that this is a C++ source
0002 //  -*- C++ -*-.
0003 #ifndef G4DETECTORS_PHG4SCINTILLATORSLAT_H
0004 #define G4DETECTORS_PHG4SCINTILLATORSLAT_H
0005 
0006 #include "PHG4ScintillatorSlatDefs.h"
0007 
0008 #include <g4main/PHG4HitDefs.h>
0009 #include <phool/PHObject.h>
0010 #include <cmath>
0011 #include <map>
0012 #include <set>
0013 
0014 class PHG4ScintillatorSlat : public PHObject
0015 {
0016  public:
0017   ~PHG4ScintillatorSlat() override {}
0018 
0019   // from PHObject
0020   void identify(std::ostream& os = std::cout) const override
0021   {
0022     os << "PHG4ScintillatorSlat base class" << std::endl;
0023   }
0024 
0025   virtual void add_edep(const double /*edep*/, const double /*e*/, const double /*light_yield*/) { return; }
0026 
0027   virtual void set_key(const PHG4ScintillatorSlatDefs::keytype) { return; }
0028   virtual void add_hit_key(PHG4HitDefs::keytype) { return; }
0029 
0030   virtual short get_column() const { return -1; }
0031   virtual short get_row() const { return -1; }
0032   virtual PHG4ScintillatorSlatDefs::keytype get_key() const { return 0xFFFFFFFF; }
0033 
0034   virtual double get_edep() const { return NAN; }
0035   virtual double get_eion() const { return NAN; }
0036   virtual double get_light_yield() const { return NAN; }
0037   virtual std::pair<std::set<PHG4HitDefs::keytype>::const_iterator, std::set<PHG4HitDefs::keytype>::const_iterator> get_hit_ids() const = 0;
0038 
0039  protected:
0040   PHG4ScintillatorSlat() {}
0041   ClassDefOverride(PHG4ScintillatorSlat, 1)
0042 };
0043 
0044 #endif