7 modified files
lcdd/include
diff -u -r1.17 -r1.18
--- G4SensitiveDetector.hh 12 Jul 2007 18:09:00 -0000 1.17
+++ G4SensitiveDetector.hh 10 Oct 2007 22:38:09 -0000 1.18
@@ -261,7 +261,7 @@
EType m_type;
// The Geant4 command messenger associated with this detector.
- G4UImessenger* m_messenger;
+ G4UImessenger* m_messenger;
protected:
// Hit counter.
lcdd/include
diff -u -r1.16 -r1.17
--- ReadoutUtil.hh 6 Oct 2007 00:40:59 -0000 1.16
+++ ReadoutUtil.hh 10 Oct 2007 22:38:09 -0000 1.17
@@ -1,4 +1,4 @@
-// $Header: /cvs/lcd/lcdd/include/ReadoutUtil.hh,v 1.16 2007/10/06 00:40:59 jeremy Exp $
+// $Header: /cvs/lcd/lcdd/include/ReadoutUtil.hh,v 1.17 2007/10/10 22:38:09 jeremy Exp $
#ifndef LCDD_READOUTUTIL_HH
#define LCDD_READOUTUTIL_HH 1
@@ -54,7 +54,6 @@
static G4ThreeVector getVolumeGlobalPosition(const G4StepPoint* aStepPoint);
-
static const G4Tubs* getTubs(const G4Step* aStep);
static double computeTubsMidRadius(const G4Tubs* tubs);
lcdd/include
diff -u -r1.3 -r1.4
--- StepReadout.hh 12 Jul 2007 18:09:00 -0000 1.3
+++ StepReadout.hh 10 Oct 2007 22:38:09 -0000 1.4
@@ -1,15 +1,15 @@
-// $Header: /cvs/lcd/lcdd/include/StepReadout.hh,v 1.3 2007/07/12 18:09:00 jeremy Exp $
+// $Header: /cvs/lcd/lcdd/include/StepReadout.hh,v 1.4 2007/10/10 22:38:09 jeremy Exp $
#ifndef LCDD_LCDD_STEPREADOUT_HH
#define LCDD_LCDD_STEPREADOUT_HH 1
-// G4
+// geant4
#include "G4ThreeVector.hh"
#include "G4TouchableHandle.hh"
-// std
+// stl
#include <vector>
-// G4
+// geant4
class G4VPhysicalVolume;
class G4VSensitiveDetector;
class G4Step;
@@ -20,14 +20,14 @@
class G4VSolid;
class G4Track;
-// LCDD
+// lcdd
class TrackInformation;
class G4UserRegionInformation;
/**
* @class StepReadout
- * @brief Utility functions to return commonly used pointers and data values from a G4Step object.
- * @note The only cached data is the step pointer.
+ * @brief Utility functions to return information about a G4Step object.
+ * @note The only cached data member is the step pointer.
*/
class StepReadout
{
@@ -41,23 +41,23 @@
void setStep(G4Step* s);
G4Step* step() const;
bool hasStep() const;
-
+
// step points
G4StepPoint* pre() const;
G4StepPoint* post() const;
-
+
// PV from pre and post
G4VPhysicalVolume* prePV() const;
G4VPhysicalVolume* postPV() const;
-
+
// solid from pre and post
G4VSolid* preSolid() const;
G4VSolid* postSolid() const;
-
+
// LV from pre and post
G4LogicalVolume* preLV() const;
G4LogicalVolume* postLV() const;
-
+
// material from pre and post
G4Material* preMaterial() const;
G4Material* postMaterial() const;
@@ -75,36 +75,39 @@
G4VSensitiveDetector* preSD() const;
G4VSensitiveDetector* postSD() const;
G4VSensitiveDetector* getSD(G4StepPoint*) const;
-
+
// are pre and post SD the same?
bool hasSameSD() const;
// edep from step
double edep() const;
-
+
// track
G4Track* track() const;
-
+
// data from track
double globalTime() const;
int trackID() const;
G4ThreeVector momentum() const;
TrackInformation* trackInformation() const;
-
+
// pre, mid and post positions
G4ThreeVector prePosition() const;
G4ThreeVector midPosition() const;
G4ThreeVector postPosition() const;
-
+
// pre, post and mean momentum
G4ThreeVector preMomentum() const;
G4ThreeVector postMomentum() const;
G4ThreeVector meanMomentum() const;
-
+
// pre and post handles
G4TouchableHandle preTouchableHandle() const;
G4TouchableHandle postTouchableHandle() const;
-
+
+ // current step is a geantino or chargedgeantino?
+ bool isGeantino();
+
protected:
// cached step
lcdd/src
diff -u -r1.34 -r1.35
--- G4CalorimeterSD.cc 6 Oct 2007 00:40:59 -0000 1.34
+++ G4CalorimeterSD.cc 10 Oct 2007 22:38:10 -0000 1.35
@@ -1,4 +1,4 @@
-// $Header: /cvs/lcd/lcdd/src/G4CalorimeterSD.cc,v 1.34 2007/10/06 00:40:59 jeremy Exp $
+// $Header: /cvs/lcd/lcdd/src/G4CalorimeterSD.cc,v 1.35 2007/10/10 22:38:10 jeremy Exp $
#include "G4CalorimeterSD.hh"
// lcdd
@@ -87,8 +87,9 @@
// get the edep
G4double theEdep = edep();
- // This needs to be a <= comparison for cutting on 0.
- if ( theEdep <= getEcut() && !ReadoutUtil::isGeantino(aStep) ) {
+ // This needs to be a <= comparison for cutting on 0.
+ // Allow passthrough of geantinos w/ 0 edep.
+ if ( theEdep <= getEcut() && !isGeantino() ) {
#ifdef G4VERBOSE
if ( getVerbose() > 2 ) {
std::cout << "G4CalorimeterSD::ProcessHits - cut on edep " << theEdep << std::endl;
lcdd/src
diff -u -r1.11 -r1.12
--- G4TrackerCombineSD.cc 13 Dec 2006 21:23:07 -0000 1.11
+++ G4TrackerCombineSD.cc 10 Oct 2007 22:38:10 -0000 1.12
@@ -1,4 +1,4 @@
-// $Header: /cvs/lcd/lcdd/src/G4TrackerCombineSD.cc,v 1.11 2006/12/13 21:23:07 jeremy Exp $
+// $Header: /cvs/lcd/lcdd/src/G4TrackerCombineSD.cc,v 1.12 2007/10/10 22:38:10 jeremy Exp $
#include "G4TrackerCombineSD.hh"
// LCDD
@@ -174,7 +174,7 @@
}
// total energy below cut
- if ( m_edepTotal <= getEcut() ) {
+ if ( m_edepTotal <= getEcut() && !isGeantino() ) {
#ifdef G4VERBOSE
if ( getVerbose() > 0 ) {
std::cout << GetName() << " : cut this edep " << m_edepTotal << std::endl;
lcdd/src
diff -u -r1.34 -r1.35
--- G4TrackerSD.cc 6 Oct 2007 00:40:59 -0000 1.34
+++ G4TrackerSD.cc 10 Oct 2007 22:38:10 -0000 1.35
@@ -1,4 +1,4 @@
-// $Header: /cvs/lcd/lcdd/src/G4TrackerSD.cc,v 1.34 2007/10/06 00:40:59 jeremy Exp $
+// $Header: /cvs/lcd/lcdd/src/G4TrackerSD.cc,v 1.35 2007/10/10 22:38:10 jeremy Exp $
// LCDD
#include "IdManager.hh"
@@ -51,7 +51,8 @@
G4double e = edep();
// check edep < cut
- if ( e <= getEcut() && !ReadoutUtil::isGeantino(aStep) ) {
+ if ( e <= getEcut() && isGeantino() )
+ {
return false;
}
lcdd/src
diff -u -r1.2 -r1.3
--- StepReadout.cc 12 Jul 2007 18:09:01 -0000 1.2
+++ StepReadout.cc 10 Oct 2007 22:38:10 -0000 1.3
@@ -1,4 +1,4 @@
-// $Header: /cvs/lcd/lcdd/src/StepReadout.cc,v 1.2 2007/07/12 18:09:01 jeremy Exp $
+// $Header: /cvs/lcd/lcdd/src/StepReadout.cc,v 1.3 2007/10/10 22:38:10 jeremy Exp $
#include "StepReadout.hh"
// LCDD
@@ -204,3 +204,8 @@
{
return post()->GetTouchableHandle();
}
+
+bool StepReadout::isGeantino()
+{
+ return ReadoutUtil::isGeantino(step());
+}
CVSspam 0.2.8