Geant4.10
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions | Protected Member Functions | Protected Attributes
CexmcSimpleEnergyDeposit Class Reference

#include <CexmcSimpleEnergyDeposit.hh>

Inheritance diagram for CexmcSimpleEnergyDeposit:
CexmcPrimitiveScorer G4VPrimitiveScorer CexmcEnergyDepositInLeftRightSet CexmcEnergyDepositInCalorimeter

Public Member Functions

 CexmcSimpleEnergyDeposit (const G4String &name)
 
void Initialize (G4HCofThisEvent *hcOfThisEvent)
 
void EndOfEvent (G4HCofThisEvent *hcOfThisEvent)
 
void DrawAll (void)
 
void PrintAll (void)
 
void clear (void)
 
- Public Member Functions inherited from CexmcPrimitiveScorer
 CexmcPrimitiveScorer (const G4String &name)
 
virtual ~CexmcPrimitiveScorer ()
 
void InitializeMessenger (void)
 
- Public Member Functions inherited from G4VPrimitiveScorer
 G4VPrimitiveScorer (G4String name, G4int depth=0)
 
virtual ~G4VPrimitiveScorer ()
 
G4int GetCollectionID (G4int)
 
void SetUnit (const G4String &unit)
 
const G4String & GetUnit () const
 
G4double GetUnitValue () const
 
void SetMultiFunctionalDetector (G4MultiFunctionalDetector *d)
 
G4MultiFunctionalDetector * GetMultiFunctionalDetector () const
 
G4String GetName () const
 
void SetFilter (G4VSDFilter *f)
 
G4VSDFilter * GetFilter () const
 
void SetVerboseLevel (G4int vl)
 
G4int GetVerboseLevel () const
 
void SetNijk (G4int i, G4int j, G4int k)
 

Protected Member Functions

G4int GetIndex (G4Step *step)
 
G4bool ProcessHits (G4Step *step, G4TouchableHistory *tHistory)
 
- Protected Member Functions inherited from CexmcPrimitiveScorer
void PrintHeader (G4int nmbOfEntries) const
 
- Protected Member Functions inherited from G4VPrimitiveScorer
void CheckAndSetUnit (const G4String &unit, const G4String &category)
 

Protected Attributes

CexmcEnergyDepositCollection * eventMap
 
- Protected Attributes inherited from G4VPrimitiveScorer
G4String primitiveName
 
G4MultiFunctionalDetector * detector
 
G4VSDFilter * filter
 
G4int verboseLevel
 
G4int indexDepth
 
G4String unitName
 
G4double unitValue
 
G4int fNi
 
G4int fNj
 
G4int fNk
 

Detailed Description

Definition at line 59 of file CexmcSimpleEnergyDeposit.hh.

Constructor & Destructor Documentation

CexmcSimpleEnergyDeposit::CexmcSimpleEnergyDeposit ( const G4String &  name)
explicit

Definition at line 49 of file CexmcSimpleEnergyDeposit.cc.

49  :
50  CexmcPrimitiveScorer( name ), hcId( -1 )
51 {
52 }
CexmcPrimitiveScorer(const G4String &name)

Member Function Documentation

void CexmcSimpleEnergyDeposit::clear ( void  )
virtual

Reimplemented from G4VPrimitiveScorer.

Definition at line 94 of file CexmcSimpleEnergyDeposit.cc.

References G4THitsMap< T >::clear(), and eventMap.

95 {
96  eventMap->clear();
97 }
void clear()
Definition: G4THitsMap.hh:209
CexmcEnergyDepositCollection * eventMap
void CexmcSimpleEnergyDeposit::DrawAll ( void  )
virtual

Reimplemented from G4VPrimitiveScorer.

Definition at line 100 of file CexmcSimpleEnergyDeposit.cc.

101 {
102 }
void CexmcSimpleEnergyDeposit::EndOfEvent ( G4HCofThisEvent *  hcOfThisEvent)
virtual

Reimplemented from G4VPrimitiveScorer.

Definition at line 87 of file CexmcSimpleEnergyDeposit.cc.

References G4VPrimitiveScorer::GetVerboseLevel(), and PrintAll().

88 {
89  if ( GetVerboseLevel() > 0 )
90  PrintAll();
91 }
G4int GetVerboseLevel() const
G4int CexmcSimpleEnergyDeposit::GetIndex ( G4Step *  step)
protectedvirtual

Reimplemented from G4VPrimitiveScorer.

Definition at line 55 of file CexmcSimpleEnergyDeposit.cc.

Referenced by ProcessHits().

56 {
57  return 0;
58 }
void CexmcSimpleEnergyDeposit::Initialize ( G4HCofThisEvent *  hcOfThisEvent)
virtual

Reimplemented from G4VPrimitiveScorer.

Definition at line 75 of file CexmcSimpleEnergyDeposit.cc.

References G4HCofThisEvent::AddHitsCollection(), G4VPrimitiveScorer::detector, eventMap, G4VPrimitiveScorer::GetCollectionID(), G4VSensitiveDetector::GetName(), and G4VPrimitiveScorer::primitiveName.

76 {
78  primitiveName );
79 
80  if ( hcId < 0 )
81  hcId = GetCollectionID( 0 );
82 
83  hcOfEvent->AddHitsCollection( hcId, eventMap );
84 }
G4THitsMap< G4double > CexmcEnergyDepositCollection
G4int GetCollectionID(G4int)
G4MultiFunctionalDetector * detector
CexmcEnergyDepositCollection * eventMap
void CexmcSimpleEnergyDeposit::PrintAll ( void  )
virtual

Reimplemented from G4VPrimitiveScorer.

Definition at line 105 of file CexmcSimpleEnergyDeposit.cc.

References G4THitsMap< T >::entries(), eventMap, G4BestUnit, G4cout, G4endl, G4THitsMap< T >::GetMap(), and CexmcPrimitiveScorer::PrintHeader().

Referenced by EndOfEvent().

106 {
107  G4int nmbOfEntries( eventMap->entries() );
108 
109  if ( nmbOfEntries == 0 )
110  return;
111 
112  PrintHeader( nmbOfEntries );
113 
114  /* index is always 0 */
115  for ( CexmcEnergyDepositCollectionData::iterator
116  itr( eventMap->GetMap()->begin() );
117  itr != eventMap->GetMap()->end(); ++itr )
118  {
119  G4cout << " energy deposit: " <<
120  G4BestUnit( *( itr->second ), "Energy" ) << G4endl;
121  }
122 }
#define G4BestUnit(a, b)
#define G4_USE_G4BESTUNIT_FOR_VERBOSE 1
int G4int
Definition: G4Types.hh:78
G4GLOB_DLL std::ostream G4cout
G4int entries() const
Definition: G4THitsMap.hh:79
std::map< G4int, T * > * GetMap() const
Definition: G4THitsMap.hh:68
void PrintHeader(G4int nmbOfEntries) const
#define G4endl
Definition: G4ios.hh:61
CexmcEnergyDepositCollection * eventMap
G4bool CexmcSimpleEnergyDeposit::ProcessHits ( G4Step *  step,
G4TouchableHistory *  tHistory 
)
protectedvirtual

Implements G4VPrimitiveScorer.

Definition at line 61 of file CexmcSimpleEnergyDeposit.cc.

References G4THitsMap< T >::add(), eventMap, GetIndex(), and G4Step::GetTotalEnergyDeposit().

63 {
64  G4double energyDeposit( step->GetTotalEnergyDeposit() );
65 
66  if ( energyDeposit == 0. )
67  return false;
68 
69  eventMap->add( GetIndex( step ), energyDeposit );
70 
71  return true;
72 }
G4int add(const G4int &key, T *&aHit) const
Definition: G4THitsMap.hh:138
G4double GetTotalEnergyDeposit() const
double G4double
Definition: G4Types.hh:76
CexmcEnergyDepositCollection * eventMap

Field Documentation

CexmcEnergyDepositCollection* CexmcSimpleEnergyDeposit::eventMap
protected

The documentation for this class was generated from the following files: