00001 #ifndef Tracker_SiChargeDivider_H 00002 #define Tracker_SiChargeDivider_H 00003 00004 #include "SimTracker/SiStripDigitizer/interface/EnergyDepositUnit.h" 00005 #include "SimDataFormats/TrackingHit/interface/PSimHit.h" 00006 #include "Geometry/TrackerGeometryBuilder/interface/StripGeomDetUnit.h" 00007 00008 #include "SimGeneral/HepPDTRecord/interface/ParticleDataTable.h" 00009 00010 #include <vector> 00014 class SiChargeDivider{ 00015 public: 00016 typedef std::vector< EnergyDepositUnit > ionization_type; 00017 virtual ~SiChargeDivider() { } 00018 virtual ionization_type divide(const PSimHit&, const LocalVector&, double, const StripGeomDetUnit& det ) = 0; 00019 virtual void setParticleDataTable(const ParticleDataTable * pdt) = 0; 00020 }; 00021 00022 00023 #endif