File tree Expand file tree Collapse file tree 4 files changed +24
-5
lines changed
Expand file tree Collapse file tree 4 files changed +24
-5
lines changed Original file line number Diff line number Diff line change @@ -52,6 +52,9 @@ class FairGenerator : public TNamed
5252 /* *Initialize the generator if needed */
5353 virtual Bool_t Init () { return kTRUE ; }
5454
55+ /* *Finalize the generator if needed */
56+ virtual void Finish () { return ; }
57+
5558 /* * Clone this object (used in MT mode only) */
5659 virtual FairGenerator* CloneGenerator () const ;
5760
Original file line number Diff line number Diff line change @@ -411,6 +411,10 @@ void FairMCApplication::FinishRun()
411411 fRootManager ->CloseSink ();
412412 }
413413
414+ if (fEvGen ) {
415+ fEvGen ->Finish ();
416+ }
417+
414418 if (!fMC ->IsMT ()) {
415419 UndoGeometryModifications ();
416420 }
Original file line number Diff line number Diff line change @@ -144,15 +144,24 @@ FairPrimaryGenerator::FairPrimaryGenerator(const FairPrimaryGenerator &rhs)
144144Bool_t FairPrimaryGenerator::Init ()
145145{
146146 /* * Initialize list of generators*/
147- for (Int_t i = 0 ; i < fGenList ->GetEntries (); i++) {
148- FairGenerator *gen = static_cast <FairGenerator *>(fGenList ->At (i));
149- if (gen) {
150- gen->Init ();
151- }
147+ for (auto gen : TRangeDynCast<FairGenerator>(fGenList )) {
148+ if (!gen)
149+ continue ;
150+ gen->Init ();
152151 }
153152 return kTRUE ;
154153}
155154
155+ void FairPrimaryGenerator::Finish ()
156+ {
157+ /* * Finalize list of generators*/
158+ for (auto gen : TRangeDynCast<FairGenerator>(fGenList )) {
159+ if (!gen)
160+ continue ;
161+ gen->Finish ();
162+ }
163+ }
164+
156165FairPrimaryGenerator::~FairPrimaryGenerator ()
157166{
158167
Original file line number Diff line number Diff line change @@ -52,6 +52,9 @@ class FairPrimaryGenerator : public TNamed
5252 /* * Initialize the generater (if needed!)*/
5353 virtual Bool_t Init ();
5454
55+ /* * Finalize the generater (if needed!)*/
56+ virtual void Finish ();
57+
5558 /* * Register a generator derived from FairGenerator. **/
5659 void AddGenerator (FairGenerator *generator)
5760 {
You can’t perform that action at this time.
0 commit comments