@@ -218,19 +218,19 @@ struct products : o2::framework::ProducesGroup {
218218// FIXME ideally cursors could be readable
219219// to avoid duplicate memory allocation but ok
220220struct multEntry {
221- float multFV0A = - 999 .0f ;
222- float multFV0C = - 999 .0f ;
223- float multFV0AOuter = - 999 .0f ;
224- float multFT0A = - 999 .0f ;
225- float multFT0C = - 999 .0f ;
226- float multFDDA = - 999 .0f ;
227- float multFDDC = - 999 .0f ;
228- float multZNA = - 999 .0f ;
229- float multZNC = - 999 .0f ;
230- float multZEM1 = - 999 .0f ;
231- float multZEM2 = - 999 .0f ;
232- float multZPA = - 999 .0f ;
233- float multZPC = - 999 .0f ;
221+ float multFV0A = 0 .0f ;
222+ float multFV0C = 0 .0f ;
223+ float multFV0AOuter = 0 .0f ;
224+ float multFT0A = 0 .0f ;
225+ float multFT0C = 0 .0f ;
226+ float multFDDA = 0 .0f ;
227+ float multFDDC = 0 .0f ;
228+ float multZNA = 0 .0f ;
229+ float multZNC = 0 .0f ;
230+ float multZEM1 = 0 .0f ;
231+ float multZEM2 = 0 .0f ;
232+ float multZPA = 0 .0f ;
233+ float multZPC = 0 .0f ;
234234 int multTracklets = 0 ;
235235
236236 int multNContribs = 0 ; // PVMult 0.8
@@ -407,7 +407,7 @@ class MultModule
407407 CalibrationInfo mftInfo = CalibrationInfo(" MFT" );
408408
409409 template <typename TConfigurables, typename TInitContext>
410- void init (TConfigurables const & opts, TInitContext& context)
410+ void init (TConfigurables& opts, TInitContext& context)
411411 {
412412 // read in configurations from the task where it's used
413413 internalOpts = opts;
@@ -445,6 +445,8 @@ class MultModule
445445 }
446446 }
447447
448+ opts = internalOpts;
449+
448450 // list enabled tables
449451 for (int i = 0 ; i < nTablesConst; i++) {
450452 // printout to be improved in the future
@@ -532,6 +534,9 @@ class MultModule
532534 mults.multFV0AOuter += amplitude;
533535 }
534536 }
537+ } else {
538+ mults.multFV0A = -999 .f ;
539+ mults.multFV0AOuter = -999 .f ;
535540 }
536541 if (collision.has_foundFT0 ()) {
537542 const auto & ft0 = collision.foundFT0 ();
@@ -541,6 +546,9 @@ class MultModule
541546 for (const auto & amplitude : ft0.amplitudeC ()) {
542547 mults.multFT0C += amplitude;
543548 }
549+ } else {
550+ mults.multFT0A = -999 .f ;
551+ mults.multFT0C = -999 .f ;
544552 }
545553 if (collision.has_foundFDD ()) {
546554 const auto & fdd = collision.foundFDD ();
@@ -550,6 +558,9 @@ class MultModule
550558 for (const auto & amplitude : fdd.chargeC ()) {
551559 mults.multFDDC += amplitude;
552560 }
561+ } else {
562+ mults.multFDDA = -999 .f ;
563+ mults.multFDDC = -999 .f ;
553564 }
554565 if (bc.has_zdc ()) {
555566 mults.multZNA = bc.zdc ().amplitudeZNA ();
@@ -558,9 +569,19 @@ class MultModule
558569 mults.multZEM2 = bc.zdc ().amplitudeZEM2 ();
559570 mults.multZPA = bc.zdc ().amplitudeZPA ();
560571 mults.multZPC = bc.zdc ().amplitudeZPC ();
572+ } else {
573+ mults.multZNA = -999 .f ;
574+ mults.multZNC = -999 .f ;
575+ mults.multZEM1 = -999 .f ;
576+ mults.multZEM2 = -999 .f ;
577+ mults.multZPA = -999 .f ;
578+ mults.multZPC = -999 .f ;
561579 }
562580
563581 // fill standard cursors if required
582+ if (internalOpts.mEnabledTables [kTrackletMults ]) { // Tracklets (only Run2) nothing to do (to be removed!)
583+ cursors.tableTracklet (0 );
584+ }
564585 if (internalOpts.mEnabledTables [kFV0Mults ]) {
565586 cursors.tableFV0 (mults.multFV0A , mults.multFV0C );
566587 }
@@ -970,6 +991,9 @@ class MultModule
970991 for (const auto & amplitude : ft0.amplitudeC ()) {
971992 bcMultFT0C += amplitude;
972993 }
994+ } else {
995+ bcMultFT0A = -999 .f ;
996+ bcMultFT0C = -999 .f ;
973997 }
974998
975999 if (internalOpts.mEnabledTables [kBCCentFT0Ms ])
0 commit comments