@@ -165,6 +165,8 @@ void ZDCRecDataTask::initVecType()
165165 insertTypeVec (" ADC" );
166166 insertTypeVec (" TDCV" );
167167 insertTypeVec (" TDCA" );
168+ insertTypeVec (" TDCAC" );
169+ insertTypeVec (" ADCAC" );
168170 insertTypeVec (" BC" );
169171 insertTypeVec (" INFO" );
170172}
@@ -292,6 +294,15 @@ void ZDCRecDataTask::initHisto()
292294 addNewHisto (" ADC1D" , " h_ADC_ZPC_TC_H" , " ADC ZPC TC ZOOM" , " ADC" , " ZPCC" , " " , " " , 0 );
293295 addNewHisto (" ADC1D" , " h_ADC_ZPC_SUM_H" , " ADC ZPC SUM ZOOM" , " ADC" , " ZPCS" , " " , " " , 0 );
294296
297+ addNewHisto (" ADC1D" , " h_ADC_ZPA_TC_H_CUT" , " ADC ZPA TC ZOOM with cut" , " ADCAC" , " ZPAC" , " " , " " , 0 );
298+ addNewHisto (" ADC1D" , " h_ADC_ZPA_SUM_H_CUT" , " ADC ZPA SUM ZOOM with cut" , " ADCAC" , " ZPAS" , " " , " " , 0 );
299+ addNewHisto (" ADC1D" , " h_ADC_ZPC_TC_H_CUT" , " ADC ZPC TC ZOOM with cut" , " ADCAC" , " ZPCC" , " " , " " , 0 );
300+ addNewHisto (" ADC1D" , " h_ADC_ZPC_SUM_H_CUT" , " ADC ZPC SUM ZOOM with cut" , " ADCAC" , " ZPCS" , " " , " " , 0 );
301+ addNewHisto (" ADC1D" , " h_ADC_ZNA_TC_H_CUT" , " ADC ZNA TC ZOOM with cut" , " ADCAC" , " ZNAC" , " " , " " , 0 );
302+ addNewHisto (" ADC1D" , " h_ADC_ZNA_SUM_H_CUT" , " ADC ZNA SUM ZOOM with cut" , " ADCAC" , " ZNAS" , " " , " " , 0 );
303+ addNewHisto (" ADC1D" , " h_ADC_ZNC_TC_H_CUT" , " ADC ZNC TC ZOOM with cut" , " ADCAC" , " ZNCC" , " " , " " , 0 );
304+ addNewHisto (" ADC1D" , " h_ADC_ZNC_SUM_H_CUT" , " ADC ZNC SUM ZOOM with cut" , " ADCAC" , " ZNCS" , " " , " " , 0 );
305+
295306 if (auto param = mCustomParameters .find (" TDCT" ); param != mCustomParameters .end ()) {
296307 ILOG (Debug, Devel) << " Custom parameter - TDCT: " << param->second << ENDM;
297308 tokenString = tokenLine (param->second , " ;" );
@@ -350,6 +361,16 @@ void ZDCRecDataTask::initHisto()
350361 addNewHisto (" TDC1D" , " h_TDC_ZNC_SUM_A_H" , " TDC Amplitude ZNC SUM ZOOM" , " TDCA" , " ZNCS" , " " , " " , 0 );
351362 addNewHisto (" TDC1D" , " h_TDC_ZPC_TC_A_H" , " TDC Amplitude ZPC TC ZOOM" , " TDCA" , " ZPCC" , " " , " " , 0 );
352363 addNewHisto (" TDC1D" , " h_TDC_ZPC_SUM_A_H" , " TDC Amplitude ZPC SUM ZOOM" , " TDCA" , " ZPCS" , " " , " " , 0 );
364+
365+ addNewHisto (" TDC1D" , " h_TDC_ZPA_TC_A_H_CUT" , " TDC Amplitude ZPA TC ZOOM with cut" , " TDCAC" , " ZPAC" , " " , " " , 0 );
366+ addNewHisto (" TDC1D" , " h_TDC_ZPA_SUM_A_H_CUT" , " TDC Amplitude ZPA SUM ZOOM with cut" , " TDCAC" , " ZPAS" , " " , " " , 0 );
367+ addNewHisto (" TDC1D" , " h_TDC_ZPC_TC_A_H_CUT" , " TDC Amplitude ZPC TC ZOOM with cut" , " TDCAC" , " ZPCC" , " " , " " , 0 );
368+ addNewHisto (" TDC1D" , " h_TDC_ZPC_SUM_A_H_CUT" , " TDC Amplitude ZPC SUM ZOOM with cut" , " TDCAC" , " ZPCS" , " " , " " , 0 );
369+ addNewHisto (" TDC1D" , " h_TDC_ZNA_TC_A_H_CUT" , " TDC Amplitude ZNA TC ZOOM with cut" , " TDCAC" , " ZNAC" , " " , " " , 0 );
370+ addNewHisto (" TDC1D" , " h_TDC_ZNA_SUM_A_H_CUT" , " TDC Amplitude ZNA SUM ZOOM with cut" , " TDCAC" , " ZNAS" , " " , " " , 0 );
371+ addNewHisto (" TDC1D" , " h_TDC_ZNC_TC_A_H_CUT" , " TDC Amplitude ZNC TC ZOOM with cut" , " TDCAC" , " ZNCC" , " " , " " , 0 );
372+ addNewHisto (" TDC1D" , " h_TDC_ZNC_SUM_A_H_CUT" , " TDC Amplitude ZNC SUM ZOOM with cut" , " TDCAC" , " ZNCS" , " " , " " , 0 );
373+
353374 // Centroid ZPA
354375 if (auto param = mCustomParameters .find (" CENTR_ZPA" ); param != mCustomParameters .end ()) {
355376 ILOG (Debug, Devel) << " Custom parameter - CENTR_ZPA: " << param->second << ENDM;
@@ -521,6 +542,8 @@ void ZDCRecDataTask::initHisto()
521542 setBinHisto2D (200 , -2 , 2 , 200 , -2 , 2 );
522543 }
523544 addNewHisto (" CENTR_ZNA" , " h_CENTR_ZNA" , " ZNA Centroid (cm)" , " ADC" , " CXZNA" , " ADC" , " CYZNA" , 0 );
545+ addNewHisto (" CENTR_ZNA" , " h_CENTR_ZNA_cut_ZEM" , " ZNA Centroid (cm)" , " ADC" , " CXZNA" , " ADC" , " CYZNA" , 0 );
546+
524547 // Centroid ZNC
525548 if (auto param = mCustomParameters .find (" CENTR_ZNC" ); param != mCustomParameters .end ()) {
526549 ILOG (Debug, Devel) << " Custom parameter - CENTR_ZNC: " << param->second << ENDM;
@@ -530,6 +553,7 @@ void ZDCRecDataTask::initHisto()
530553 setBinHisto2D (200 , -2 , 2 , 200 , -2 , 2 );
531554 }
532555 addNewHisto (" CENTR_ZNC" , " h_CENTR_ZNC" , " ZNC Centroid (cm)" , " ADC" , " CXZNC" , " ADC" , " CYZNC" , 0 );
556+ addNewHisto (" CENTR_ZNC" , " h_CENTR_ZNC_cut_ZEM" , " ZNC Centroid (cm)" , " ADC" , " CXZNC" , " ADC" , " CYZNC" , 0 );
533557}
534558
535559bool ZDCRecDataTask::add1DHisto (std::string typeH, std::string name, std::string title, std::string typeCh1, std::string ch1, int bin)
@@ -638,8 +662,42 @@ int ZDCRecDataTask::process(const gsl::span<const o2::zdc::BCRecData>& RecBC,
638662 // Histo 1D
639663 for (int i = 0 ; i < (int )mHisto1D .size (); i++) {
640664 // Fill ADC 1D
641- if (mHisto1D .at (i).typeh == " ADC1D" && mHisto1D .at (i).typech == " ADC" ) {
642- mHisto1D .at (i).histo ->Fill (getADCRecValue (mHisto1D .at (i).typech , mHisto1D .at (i).ch ));
665+ if (mHisto1D .at (i).typeh == " ADC1D" && (mHisto1D .at (i).typech == " ADC" || mHisto1D .at (i).typech == " ADCAC" )) {
666+
667+ if (mHisto1D .at (i).typech == " ADC" ) {
668+ mHisto1D .at (i).histo ->Fill (getADCRecValue (mHisto1D .at (i).typech , mHisto1D .at (i).ch ));
669+ }
670+
671+ if (mHisto1D .at (i).typech == " ADCAC" ) {
672+ if (mHisto1D .at (i).ch == " ZPAC" || mHisto1D .at (i).ch == " ZPAS" ) {
673+ if (mEv .NtdcA (o2::zdc::TDCZNAC) == 0 && mEv .NtdcA (o2::zdc::TDCZNAS) == 0 ) {
674+ if (getADCRecValue (" ADC" , mHisto1D .at (i).ch ) > -8000 ) {
675+ mHisto1D .at (i).histo ->Fill (getADCRecValue (" ADC" , mHisto1D .at (i).ch ));
676+ }
677+ }
678+ }
679+ if (mHisto1D .at (i).ch == " ZPCC" || mHisto1D .at (i).ch == " ZPCS" ) {
680+ if (mEv .NtdcA (o2::zdc::TDCZNCC) == 0 && mEv .NtdcA (o2::zdc::TDCZNCS) == 0 ) {
681+ if (getADCRecValue (" ADC" , mHisto1D .at (i).ch ) > -8000 ) {
682+ mHisto1D .at (i).histo ->Fill (getADCRecValue (" ADC" , mHisto1D .at (i).ch ));
683+ }
684+ }
685+ }
686+ if (mHisto1D .at (i).ch == " ZNAC" || mHisto1D .at (i).ch == " ZNAS" ) {
687+ if (mEv .NtdcA (o2::zdc::TDCZPAC) == 0 && mEv .NtdcA (o2::zdc::TDCZPAS) == 0 ) {
688+ if (getADCRecValue (" ADC" , mHisto1D .at (i).ch ) > -8000 ) {
689+ mHisto1D .at (i).histo ->Fill (getADCRecValue (" ADC" , mHisto1D .at (i).ch ));
690+ }
691+ }
692+ }
693+ if (mHisto1D .at (i).ch == " ZNCC" || mHisto1D .at (i).ch == " ZNCS" ) {
694+ if (mEv .NtdcA (o2::zdc::TDCZPCC) == 0 && mEv .NtdcA (o2::zdc::TDCZPCS) == 0 ) {
695+ if (getADCRecValue (" ADC" , mHisto1D .at (i).ch ) > -8000 ) {
696+ mHisto1D .at (i).histo ->Fill (getADCRecValue (" ADC" , mHisto1D .at (i).ch ));
697+ }
698+ }
699+ }
700+ }
643701 }
644702
645703 // Fill TDC 1D
@@ -657,6 +715,65 @@ int ZDCRecDataTask::process(const gsl::span<const o2::zdc::BCRecData>& RecBC,
657715 }
658716 }
659717 }
718+
719+ // Fill TDCA with cut 1D
720+ if (mHisto1D .at (i).typeh == " TDC1D" && (mHisto1D .at (i).typech == " TDCAC" )) {
721+ int tdcid = getIdTDCch (" TDCA" , mHisto1D .at (i).ch );
722+ auto nhitv = mEv .NtdcV (tdcid);
723+ if (tdcid == o2::zdc::TDCZPAC || tdcid == o2::zdc::TDCZPAS) {
724+ if (mEv .NtdcA (o2::zdc::TDCZNAC) == 0 && mEv .NtdcA (o2::zdc::TDCZNAS) == 0 ) {
725+ if (mEv .NtdcA (tdcid) == nhitv && nhitv > 0 ) {
726+ for (int ihit = 0 ; ihit < nhitv; ihit++) {
727+ if (mHisto1D .at (i).typech == " TDCAC" ) {
728+ if ((mEv .tdcV (tdcid, ihit) > -2.5 && mEv .tdcV (tdcid, ihit) < 2.5 )) {
729+ mHisto1D .at (i).histo ->Fill (mEv .tdcA (tdcid, ihit));
730+ }
731+ }
732+ }
733+ }
734+ }
735+ }
736+ if (tdcid == o2::zdc::TDCZPCC || tdcid == o2::zdc::TDCZPCS) {
737+ if (mEv .NtdcA (o2::zdc::TDCZNCC) == 0 && mEv .NtdcA (o2::zdc::TDCZNCS) == 0 ) {
738+ if (mEv .NtdcA (tdcid) == nhitv && nhitv > 0 ) {
739+ for (int ihit = 0 ; ihit < nhitv; ihit++) {
740+ if (mHisto1D .at (i).typech == " TDCAC" ) {
741+ if ((mEv .tdcV (tdcid, ihit) > -2.5 && mEv .tdcV (tdcid, ihit) < 2.5 )) {
742+ mHisto1D .at (i).histo ->Fill (mEv .tdcA (tdcid, ihit));
743+ }
744+ }
745+ }
746+ }
747+ }
748+ }
749+ if (tdcid == o2::zdc::TDCZNAC || tdcid == o2::zdc::TDCZNAS) {
750+ if (mEv .NtdcA (o2::zdc::TDCZPAC) == 0 && mEv .NtdcA (o2::zdc::TDCZPAS) == 0 ) {
751+ if (mEv .NtdcA (tdcid) == nhitv && nhitv > 0 ) {
752+ for (int ihit = 0 ; ihit < nhitv; ihit++) {
753+ if (mHisto1D .at (i).typech == " TDCAC" ) {
754+ if ((mEv .tdcV (tdcid, ihit) > -2.5 && mEv .tdcV (tdcid, ihit) < 2.5 )) {
755+ mHisto1D .at (i).histo ->Fill (mEv .tdcA (tdcid, ihit));
756+ }
757+ }
758+ }
759+ }
760+ }
761+ }
762+ if (tdcid == o2::zdc::TDCZNCC || tdcid == o2::zdc::TDCZNCS) {
763+ if (mEv .NtdcA (o2::zdc::TDCZPCC) == 0 && mEv .NtdcA (o2::zdc::TDCZPCS) == 0 ) {
764+ if (mEv .NtdcA (tdcid) == nhitv && nhitv > 0 ) {
765+ for (int ihit = 0 ; ihit < nhitv; ihit++) {
766+ if (mHisto1D .at (i).typech == " TDCAC" ) {
767+ if ((mEv .tdcV (tdcid, ihit) > -2.5 && mEv .tdcV (tdcid, ihit) < 2.5 )) {
768+ mHisto1D .at (i).histo ->Fill (mEv .tdcA (tdcid, ihit));
769+ }
770+ }
771+ }
772+ }
773+ }
774+ }
775+ }
776+
660777 // Fill CENTROID ZP
661778 if (mHisto1D .at (i).typeh == " CENTR_ZPA" && mHisto1D .at (i).typech == " ADC" ) {
662779 mHisto1D .at (i).histo ->Fill (mEv .xZPA ());
@@ -717,15 +834,30 @@ int ZDCRecDataTask::process(const gsl::span<const o2::zdc::BCRecData>& RecBC,
717834 }
718835 }
719836 if (mHisto2D .at (i).typeh == " CENTR_ZNA" && mHisto2D .at (i).typech1 == " ADC" && mHisto2D .at (i).typech2 == " ADC" ) {
720- mEv .centroidZNA (x, y);
721- mHisto2D .at (i).histo ->Fill (x, y);
837+ if (mHisto2D .at (i).histo ->GetName () == TString::Format (" h_CENTR_ZNA" )) {
838+ mEv .centroidZNA (x, y);
839+ mHisto2D .at (i).histo ->Fill (x, y);
840+ } else {
841+ // if (( (float)o2::zdc::TDCZEM2 > -2.5 && (float)o2::zdc::TDCZEM2 < 2.5 ) && ( (float)o2::zdc::TDCZEM1 > -2.5 && (float)o2::zdc::TDCZEM1 < 2.5 ) ){
842+ if (((float )mEv .tdcV (5 , 0 ) > -2.5 && (float )mEv .tdcV (5 , 0 ) < 2.5 ) && ((float )mEv .tdcV (4 , 0 ) > -2.5 && (float )mEv .tdcV (4 , 0 ) < 2.5 )) {
843+ mEv .centroidZNA (x, y);
844+ mHisto2D .at (i).histo ->Fill (x, y);
845+ }
846+ }
722847 }
723848 if (mHisto2D .at (i).typeh == " CENTR_ZNC" && mHisto2D .at (i).typech1 == " ADC" && mHisto2D .at (i).typech2 == " ADC" ) {
724- mEv .centroidZNC (x, y);
725- mHisto2D .at (i).histo ->Fill (x, y);
849+ if (mHisto2D .at (i).histo ->GetName () == TString::Format (" h_CENTR_ZNC" )) {
850+ mEv .centroidZNC (x, y);
851+ mHisto2D .at (i).histo ->Fill (x, y);
852+ } else {
853+ if (((float )mEv .tdcV (5 , 0 ) > -2.5 && (float )mEv .tdcV (5 , 0 ) < 2.5 ) && ((float )mEv .tdcV (4 , 0 ) > -2.5 && (float )mEv .tdcV (4 , 0 ) < 2.5 )) {
854+ mEv .centroidZNC (x, y);
855+ mHisto2D .at (i).histo ->Fill (x, y);
856+ }
857+ }
726858 }
727859 } // for histo 2D
728- } // while
860+ } // while
729861 return 0 ;
730862}
731863
@@ -809,7 +941,7 @@ float ZDCRecDataTask::getADCRecValue(std::string typech, std::string ch)
809941 if (typech == " ADC" && ch == " ZEM2" ) {
810942 return mEv .EZEM2 ();
811943 }
812- return 0.00 ;
944+ return - 9000.0 ;
813945}
814946
815947int ZDCRecDataTask::getIdTDCch (std::string typech, std::string ch)
0 commit comments