#include <SensitiveDetector.h>
|
void | AssignSD (const std::string &vname) |
|
Definition at line 19 of file SensitiveDetector.h.
SensitiveDetector::~SensitiveDetector |
( |
| ) |
|
|
override |
void SensitiveDetector::AssignSD |
( |
const std::string & |
vname | ) |
|
|
private |
Definition at line 45 of file SensitiveDetector.cc.
Referenced by SensitiveDetector().
46 G4LogicalVolumeStore* theStore = G4LogicalVolumeStore::GetInstance();
47 for (
auto& lv : *theStore) {
48 if (vname == lv->GetName()) {
49 lv->SetSensitiveDetector(
this);
virtual void SensitiveDetector::clearHits |
( |
| ) |
|
|
pure virtual |
Implemented in CaloSD, PPSPixelSD, FP420SD, TotemSD, MuonSensitiveDetector, PPSDiamondSD, FiberSD, TotemRPSD, TkAccumulatingSensitiveDetector, CaloTrkProcessing, TimingSD, HFChamberSD, and HFWedgeSD.
TrackInformation * SensitiveDetector::cmsTrackInformation |
( |
const G4Track * |
aTrack | ) |
|
|
protected |
Definition at line 92 of file SensitiveDetector.cc.
References info().
Referenced by TkAccumulatingSensitiveDetector::createHit(), MuonSensitiveDetector::createHit(), CaloSD::createNewHit(), CaloSD::findBoundaryCrossingParent(), CaloSD::getResponseWt(), TimingSD::getStepInfo(), CaloSD::getTrackID(), CaloSD::setTrackID(), TkAccumulatingSensitiveDetector::update(), and CaloSD::update().
95 edm::LogWarning(
"SensitiveDetector") <<
" no TrackInformation available for trackID= " << aTrack->GetTrackID();
96 throw SimG4Exception(
"SimG4CoreSensitiveDetector: cannot handle hits for " + GetName());
Log< level::Warning, false > LogWarning
Local3DPoint SensitiveDetector::ConvertToLocal3DPoint |
( |
const G4ThreeVector & |
point | ) |
const |
|
inlineprotected |
Definition at line 46 of file SensitiveDetector.h.
Referenced by TkAccumulatingSensitiveDetector::createHit(), MuonSensitiveDetector::createHit(), TimingSD::EndOfEvent(), FinalStepPosition(), MuonSensitiveDetector::FinalStepPositionVsParent(), InitialStepPosition(), MuonSensitiveDetector::InitialStepPositionVsParent(), LocalPostStepPosition(), LocalPreStepPosition(), TotemRPSD::stepInfo(), PPSDiamondSD::stepInfo(), and TkAccumulatingSensitiveDetector::updateHit().
*vegas h *****************************************************used in the default bin number in original ***version of VEGAS is ***a higher bin number might help to derive a more precise ***grade subtle point
Point3DBase< float, LocalTag > Local3DPoint
void SensitiveDetector::EndOfEvent |
( |
G4HCofThisEvent * |
eventHC | ) |
|
|
override |
const std::vector<std::string>& SensitiveDetector::getNames |
( |
| ) |
const |
|
inline |
void SensitiveDetector::Initialize |
( |
G4HCofThisEvent * |
eventHC | ) |
|
|
override |
bool SensitiveDetector::isCaloSD |
( |
| ) |
const |
|
inline |
Local3DPoint SensitiveDetector::LocalPostStepPosition |
( |
const G4Step * |
step | ) |
const |
|
protected |
Local3DPoint SensitiveDetector::LocalPreStepPosition |
( |
const G4Step * |
step | ) |
const |
|
protected |
void SensitiveDetector::NaNTrap |
( |
const G4Step * |
step | ) |
const |
|
protected |
Definition at line 106 of file SensitiveDetector.cc.
References edm::isNotFinite().
Referenced by CaloSD::ProcessHits().
107 const G4Track* CurrentTrk = aStep->GetTrack();
108 const G4ThreeVector& CurrentPos = CurrentTrk->GetPosition();
109 double xyz = CurrentPos.x() + CurrentPos.y() + CurrentPos.z();
110 const G4ThreeVector& CurrentMom = CurrentTrk->GetMomentum();
111 xyz += CurrentMom.x() + CurrentMom.y() + CurrentMom.z();
114 const G4VPhysicalVolume* pCurrentVol = aStep->GetPreStepPoint()->GetPhysicalVolume();
115 const G4String& NameOfVol = pCurrentVol->GetName();
116 throw SimG4Exception(
"SimG4CoreSensitiveDetector: Corrupted Event - NaN detected in volume " + NameOfVol);
constexpr bool isNotFinite(T x)
G4bool SensitiveDetector::ProcessHits |
( |
G4Step * |
step, |
|
|
G4TouchableHistory * |
tHistory |
|
) |
| |
|
overridepure virtual |
Implemented in CaloSD, FP420SD, PPSPixelSD, TotemSD, PPSDiamondSD, TotemRPSD, MuonSensitiveDetector, CaloTrkProcessing, FiberSD, TkAccumulatingSensitiveDetector, TimingSD, HFChamberSD, and HFWedgeSD.
virtual uint32_t SensitiveDetector::setDetUnitId |
( |
const G4Step * |
step | ) |
|
|
pure virtual |
Implemented in CaloSD, FP420SD, PPSPixelSD, TotemSD, PPSDiamondSD, FiberSD, HCalSD, TotemRPSD, MuonSensitiveDetector, CaloTrkProcessing, TkAccumulatingSensitiveDetector, ECalSD, HcalTB02SD, CastorSD, HFChamberSD, HFWedgeSD, DreamSD, HGCSD, HFNoseSD, HGCalSD, HGCScintSD, EcalTBH4BeamSD, HcalTB06BeamSD, MtdSD, BHMSD, BscSD, ZdcSD, HGCalTB16SD01, Bcm1fSD, PltSD, AHCalSD, and TotemT2ScintSD.
Referenced by TimingSD::getStepInfo().
void SensitiveDetector::setNames |
( |
const std::vector< std::string > & |
hnames | ) |
|
|
protected |
bool SensitiveDetector::m_isCalo |
|
private |
std::vector<std::string> SensitiveDetector::m_namesOfSD |
|
private |