36class RMGParticleFilterScheme :
public RMGVOutputScheme {
40 RMGParticleFilterScheme();
89 std::unique_ptr<G4GenericMessenger> fMessenger;
90 void DefineCommands();
92 std::set<int> fParticles;
93 std::set<std::string> fKeepVolumes;
94 std::set<std::string> fKillVolumes;
95 std::set<std::string> fKeepProcesses;
96 std::set<std::string> fKillProcesses;
std::optional< G4ClassificationOfNewTrack > StackingActionClassify(const G4Track *, int) override
Wraps G4UserStackingAction::StackingActionClassify.
Definition RMGParticleFilterScheme.cc:75
void AddKeepVolume(std::string name)
Add a physical volume, by name, to the volumes in which the filter will not be applied.
Definition RMGParticleFilterScheme.cc:27
void AddKeepProcess(std::string name)
Add a physics process by name. This will only keep the specified particles when they were created by ...
Definition RMGParticleFilterScheme.cc:63
void AddKillProcess(std::string name)
Add a physics process by name. This will apply the filter only to particles created by this process.
Definition RMGParticleFilterScheme.cc:51
void AddParticle(int pdg)
Add a particle, identified by its PDG code, to the list of particles to kill.
Definition RMGParticleFilterScheme.hh:53
void AddKillVolume(std::string name)
Add a physical volume, by name, to the volumes in which the filter will be applied.
Definition RMGParticleFilterScheme.cc:39