Belle II Software development
StackingAction.h
1/**************************************************************************
2 * basf2 (Belle II Analysis Software Framework) *
3 * Author: The Belle II Collaboration *
4 * *
5 * See git log for contributors and copyright holders. *
6 * This file is licensed under LGPL-3.0, see LICENSE.md. *
7 **************************************************************************/
8
9#ifndef STACKINGACTION_H_
10#define STACKINGACTION_H_
11
12#include <globals.hh>
13#include <G4UserStackingAction.hh>
14
15namespace Belle2 {
21 namespace Simulation {
22
26 class StackingAction : public G4UserStackingAction {
27
28 public:
29
32
35
37 virtual G4ClassificationOfNewTrack ClassifyNewTrack(const G4Track* aTrack);
38
40 virtual void NewStage();
41
43 virtual void PrepareNewEvent();
44
46 void setPropagatedPhotonFraction(double fraction) { m_photonFraction = fraction; };
47
48
49 private:
50
53 };
54
55 } // Simulation namespace
56
58} // Belle2 namespace
59
60#endif /* STACKINGACTION_H_ */
The basf2 stacking action.
StackingAction()
The StackingAction constructor.
virtual void NewStage()
Function that is called at each event when "urgent" stack is empty.
double m_photonFraction
The fraction of Cerenkov photons which will be kept and propagated.
virtual G4ClassificationOfNewTrack ClassifyNewTrack(const G4Track *aTrack)
Function that classifies new tracks.
~StackingAction()
The StackingAction destructor.
virtual void PrepareNewEvent()
Function called at begining of event.
void setPropagatedPhotonFraction(double fraction)
Set fraction of Cerenkov photons that are actually propagated.
Abstract base class for different kinds of events.