#include <SimG4CMS/Forward/interface/CastorSD.h>
Public Member Functions | |
CastorSD (const std::string &, const SensitiveDetectorCatalog &clg, edm::ParameterSet const &, const SimTrackManager *) | |
uint32_t | setDetUnitId (const G4Step *step) override |
void | setNumberingScheme (CastorNumberingScheme *scheme) |
~CastorSD () override | |
Public Member Functions inherited from CaloSD | |
CaloSD (const std::string &aSDname, const SensitiveDetectorCatalog &clg, edm::ParameterSet const &p, const SimTrackManager *, float timeSlice=1., bool ignoreTkID=false) | |
void | clear () override |
void | clearHits () override |
void | DrawAll () override |
void | EndOfEvent (G4HCofThisEvent *eventHC) override |
void | fillHits (edm::PCaloHitContainer &, const std::string &) override |
void | Initialize (G4HCofThisEvent *HCE) override |
bool | isItFineCalo (const G4VTouchable *touch) |
void | PrintAll () override |
G4bool | ProcessHits (G4Step *step, G4TouchableHistory *) override |
bool | ProcessHits (G4GFlashSpot *aSpot, G4TouchableHistory *) override |
void | reset () override |
~CaloSD () override | |
Public Member Functions inherited from SensitiveCaloDetector | |
SensitiveCaloDetector (const std::string &iname, const SensitiveDetectorCatalog &clg) | |
Public Member Functions inherited from SensitiveDetector | |
void | EndOfEvent (G4HCofThisEvent *eventHC) override |
const std::vector< std::string > & | getNames () const |
void | Initialize (G4HCofThisEvent *eventHC) override |
bool | isCaloSD () const |
SensitiveDetector (const std::string &iname, const SensitiveDetectorCatalog &, bool calo) | |
~SensitiveDetector () override | |
Public Member Functions inherited from Observer< const BeginOfRun *> | |
Observer () | |
void | slotForUpdate (const BeginOfRun * iT) |
virtual | ~Observer () |
Public Member Functions inherited from Observer< const BeginOfEvent *> | |
Observer () | |
void | slotForUpdate (const BeginOfEvent * iT) |
virtual | ~Observer () |
Public Member Functions inherited from Observer< const BeginOfTrack *> | |
Observer () | |
void | slotForUpdate (const BeginOfTrack * iT) |
virtual | ~Observer () |
Public Member Functions inherited from Observer< const EndOfTrack *> | |
Observer () | |
void | slotForUpdate (const EndOfTrack * iT) |
virtual | ~Observer () |
Public Member Functions inherited from Observer< const EndOfEvent *> | |
Observer () | |
void | slotForUpdate (const EndOfEvent * iT) |
virtual | ~Observer () |
Protected Member Functions | |
double | getEnergyDeposit (const G4Step *) override |
bool | getFromLibrary (const G4Step *) override |
Protected Member Functions inherited from CaloSD | |
bool | checkHit () |
CaloG4Hit * | createNewHit (const G4Step *, const G4Track *) |
virtual void | endEvent () |
virtual double | EnergyCorrected (const G4Step &step, const G4Track *) |
virtual bool | filterHit (CaloG4Hit *, double) |
unsigned int | findBoundaryCrossingParent (const G4Track *track, bool markParentAsSaveable=true) |
double | getAttenuation (const G4Step *aStep, double birk1, double birk2, double birk3) const |
virtual uint16_t | getDepth (const G4Step *) |
int | getNumberOfHits () |
double | getResponseWt (const G4Track *) |
virtual int | getTrackID (const G4Track *) |
bool | hitExists (const G4Step *) |
void | ignoreRejection () |
virtual void | initEvent (const BeginOfEvent *) |
virtual void | initRun () |
void | printDetectorLevels (const G4VTouchable *) const |
void | processHit (const G4Step *step) |
void | resetForNewPrimary (const G4Step *) |
void | setNumberCheckedHits (int val) |
void | setParameterized (bool val) |
G4ThreeVector | setToGlobal (const G4ThreeVector &, const G4VTouchable *) const |
G4ThreeVector | setToLocal (const G4ThreeVector &, const G4VTouchable *) const |
virtual int | setTrackID (const G4Step *) |
void | setUseMap (bool val) |
std::string | shortreprID (const CaloHitID &ID) |
std::string | shortreprID (const CaloG4Hit *hit) |
void | update (const BeginOfRun *) override |
This routine will be called when the appropriate signal arrives. More... | |
void | update (const BeginOfEvent *) override |
This routine will be called when the appropriate signal arrives. More... | |
void | update (const BeginOfTrack *trk) override |
This routine will be called when the appropriate signal arrives. More... | |
void | update (const EndOfTrack *trk) override |
This routine will be called when the appropriate signal arrives. More... | |
void | update (const ::EndOfEvent *) override |
void | updateHit (CaloG4Hit *) |
Protected Member Functions inherited from SensitiveDetector | |
TrackInformation * | cmsTrackInformation (const G4Track *aTrack) |
Local3DPoint | ConvertToLocal3DPoint (const G4ThreeVector &point) const |
Local3DPoint | FinalStepPosition (const G4Step *step, coordinates) const |
Local3DPoint | InitialStepPosition (const G4Step *step, coordinates) const |
Local3DPoint | LocalPostStepPosition (const G4Step *step) const |
Local3DPoint | LocalPreStepPosition (const G4Step *step) const |
void | NaNTrap (const G4Step *step) const |
void | setNames (const std::vector< std::string > &) |
Protected Member Functions inherited from Observer< const EndOfEvent *> | |
virtual void | update (const EndOfEvent *)=0 |
This routine will be called when the appropriate signal arrives. More... | |
Private Member Functions | |
uint32_t | rotateUnitID (uint32_t, const G4Track *, const CastorShowerEvent &) |
Private Attributes | |
double | energyThresholdSL |
G4LogicalVolume * | lvC3EF |
G4LogicalVolume * | lvC3HF |
G4LogicalVolume * | lvC4EF |
G4LogicalVolume * | lvC4HF |
G4LogicalVolume * | lvCAST |
double | non_compensation_factor |
CastorNumberingScheme * | numberingScheme |
CastorShowerLibrary * | showerLibrary |
bool | useShowerLibrary |
Additional Inherited Members | |
Protected Types inherited from SensitiveDetector | |
enum | coordinates { WorldCoordinates, LocalCoordinates } |
Static Protected Member Functions inherited from CaloSD | |
static std::string | printableDecayChain (const std::vector< unsigned int > &decayChain) |
Protected Attributes inherited from CaloSD | |
CaloG4Hit * | currentHit |
CaloHitID | currentID |
float | edepositEM |
float | edepositHAD |
double | eminHit |
double | energyCut |
G4ThreeVector | entranceLocal |
G4ThreeVector | entrancePoint |
bool | forceSave |
float | incidentEnergy |
double | kmaxIon |
double | kmaxNeutron |
double | kmaxProton |
G4ThreeVector | posGlobal |
CaloHitID | previousID |
bool | suppressHeavy |
double | tmaxHit |
Description: Stores hits of Castor in appropriate container
Usage: Used in sensitive detector builder
Definition at line 33 of file CastorSD.h.
CastorSD::CastorSD | ( | const std::string & | name, |
const SensitiveDetectorCatalog & | clg, | ||
edm::ParameterSet const & | p, | ||
const SimTrackManager * | manager | ||
) |
Definition at line 31 of file CastorSD.cc.
References g4SimHits_cfi::CastorShowerLibrary, energyThresholdSL, edm::ParameterSet::getParameter(), lvC3EF, lvC3HF, lvC4EF, lvC4HF, lvCAST, Skims_PA_cff::name, non_compensation_factor, AlCaHLTBitMon_ParallelJobs::p, setNumberingScheme(), CaloSD::setParameterized(), showerLibrary, and useShowerLibrary.
|
override |
|
overrideprotectedvirtual |
Reimplemented from CaloSD.
Definition at line 92 of file CastorSD.cc.
References a, funct::abs(), HLT_2022v12_cff::beta, ALCARECOTkAlJpsiMuMu_cff::charge, ztail::d, TrackInformation::getCastorHitPID(), TrackInformation::hasCastorHit(), G4TrackToParticleID::isStableHadronIon(), lvC3EF, lvC3HF, lvC4EF, lvC4HF, SiStripPI::max, SiStripPI::min, non_compensation_factor, pi, alignCSCRings::r, L1EGammaClusterEmuProducer_cfi::scale, TrackInformation::setCastorHitPID(), mathSSE::sqrt(), and funct::tan().
|
overrideprotectedvirtual |
Reimplemented from CaloSD.
Definition at line 361 of file CastorSD.cc.
References funct::abs(), CaloSD::currentID, dot(), CaloSD::edepositEM, CaloSD::edepositHAD, energyThresholdSL, funct::false, CastorShowerLibrary::getShowerHits(), TrackInformation::hasCastorHit(), hfClusterShapes_cfi::hits, mps_fire::i, G4TrackToParticleID::isGammaElectronPositron(), G4TrackToParticleID::isStableHadronIon(), lvCAST, M_PI, non_compensation_factor, CaloSD::processHit(), dttmaxenums::R, CaloSD::resetForNewPrimary(), rotateUnitID(), L1EGammaClusterEmuProducer_cfi::scale, TrackInformation::setCastorHitPID(), CaloHitID::setID(), CaloSD::setTrackID(), showerLibrary, mathSSE::sqrt(), theta(), protons_cff::time, funct::true, and useShowerLibrary.
|
private |
Definition at line 299 of file CastorSD.cc.
References printConversionInfo::aux, CastorShowerEvent::getPrimPhi(), createfilelist::int, M_PI, fileinputsource_cfi::sec, HLT_2022v12_cff::track, and reco::btau::trackPhi.
Referenced by getFromLibrary().
|
overridevirtual |
Implements CaloSD.
Definition at line 283 of file CastorSD.cc.
References CastorNumberingScheme::getUnitID(), and numberingScheme.
void CastorSD::setNumberingScheme | ( | CastorNumberingScheme * | scheme | ) |
Definition at line 289 of file CastorSD.cc.
References numberingScheme, and generator_cfi::scheme.
Referenced by CastorSD().
|
private |
Definition at line 52 of file CastorSD.h.
Referenced by CastorSD(), and getFromLibrary().
|
private |
Definition at line 48 of file CastorSD.h.
Referenced by CastorSD(), and getEnergyDeposit().
|
private |
Definition at line 48 of file CastorSD.h.
Referenced by CastorSD(), and getEnergyDeposit().
|
private |
Definition at line 48 of file CastorSD.h.
Referenced by CastorSD(), and getEnergyDeposit().
|
private |
Definition at line 48 of file CastorSD.h.
Referenced by CastorSD(), and getEnergyDeposit().
|
private |
Definition at line 49 of file CastorSD.h.
Referenced by CastorSD(), and getFromLibrary().
|
private |
Definition at line 53 of file CastorSD.h.
Referenced by CastorSD(), getEnergyDeposit(), and getFromLibrary().
|
private |
Definition at line 46 of file CastorSD.h.
Referenced by setDetUnitId(), and setNumberingScheme().
|
private |
Definition at line 47 of file CastorSD.h.
Referenced by CastorSD(), getFromLibrary(), and ~CastorSD().
|
private |
Definition at line 51 of file CastorSD.h.
Referenced by CastorSD(), and getFromLibrary().