@@ -1469,7 +1469,7 @@ struct AnalysisSameEventPairing {
14691469
14701470 if (fEnableBarrelHistos ) {
14711471 names = {
1472- // change define histname
1472+ // change define histname
14731473 Form (" PairsBarrelSEPM_%s" , objArray->At (icut)->GetName ()),
14741474 Form (" PairsBarrelSEPP_%s" , objArray->At (icut)->GetName ()),
14751475 Form (" PairsBarrelSEMM_%s" , objArray->At (icut)->GetName ()),
@@ -2131,8 +2131,8 @@ struct AnalysisSameEventPairing {
21312131 }
21322132 } // end loop (cuts)
21332133
2134- // edit
2135- // rotation 20 times
2134+ // edit
2135+ // rotation 20 times
21362136 if constexpr (TPairType == VarManager::kDecayToEE ) {
21372137 twoTrackFilter = a1.isBarrelSelected_raw () & a2.isBarrelSelected_raw () & a1.isBarrelSelectedPrefilter_raw () & a2.isBarrelSelectedPrefilter_raw () & fTrackFilterMask ;
21382138
@@ -2158,43 +2158,43 @@ struct AnalysisSameEventPairing {
21582158 if (t2.barrelAmbiguityOutOfBunch () > 1 ) {
21592159 twoTrackFilter |= (static_cast <uint32_t >(1 ) << 31 );
21602160 }
2161-
2162- for (int icut = 0 ; icut < ncuts; icut++) {
2163- if (twoTrackFilter & (static_cast <uint32_t >(1 ) << icut)) {
2164- isAmbiInBunch = (twoTrackFilter & (static_cast <uint32_t >(1 ) << 28 )) || (twoTrackFilter & (static_cast <uint32_t >(1 ) << 29 ));
2165- isAmbiOutOfBunch = (twoTrackFilter & (static_cast <uint32_t >(1 ) << 30 )) || (twoTrackFilter & (static_cast <uint32_t >(1 ) << 31 ));
2166- isUnambiguous = !(isAmbiInBunch || isAmbiOutOfBunch);
2167- isLeg1Ambi = (twoTrackFilter & (static_cast <uint32_t >(1 ) << 28 ) || (twoTrackFilter & (static_cast <uint32_t >(1 ) << 30 )));
2168- isLeg2Ambi = (twoTrackFilter & (static_cast <uint32_t >(1 ) << 29 ) || (twoTrackFilter & (static_cast <uint32_t >(1 ) << 31 )));
2169- if constexpr (TPairType == VarManager::kDecayToEE ) {
2170- if (isLeg1Ambi && isLeg2Ambi) {
2171- std::pair<uint32_t , uint32_t > iPair (a1.reducedtrackId (), a2.reducedtrackId ());
2172- if (fAmbiguousPairs .find (iPair) != fAmbiguousPairs .end ()) {
2173- if (fAmbiguousPairs [iPair] & (static_cast <uint32_t >(1 ) << icut)) { // if this pair is already stored with this cut
2174- isAmbiExtra = true ;
2161+
2162+ for (int icut = 0 ; icut < ncuts; icut++) {
2163+ if (twoTrackFilter & (static_cast <uint32_t >(1 ) << icut)) {
2164+ isAmbiInBunch = (twoTrackFilter & (static_cast <uint32_t >(1 ) << 28 )) || (twoTrackFilter & (static_cast <uint32_t >(1 ) << 29 ));
2165+ isAmbiOutOfBunch = (twoTrackFilter & (static_cast <uint32_t >(1 ) << 30 )) || (twoTrackFilter & (static_cast <uint32_t >(1 ) << 31 ));
2166+ isUnambiguous = !(isAmbiInBunch || isAmbiOutOfBunch);
2167+ isLeg1Ambi = (twoTrackFilter & (static_cast <uint32_t >(1 ) << 28 ) || (twoTrackFilter & (static_cast <uint32_t >(1 ) << 30 )));
2168+ isLeg2Ambi = (twoTrackFilter & (static_cast <uint32_t >(1 ) << 29 ) || (twoTrackFilter & (static_cast <uint32_t >(1 ) << 31 )));
2169+ if constexpr (TPairType == VarManager::kDecayToEE ) {
2170+ if (isLeg1Ambi && isLeg2Ambi) {
2171+ std::pair<uint32_t , uint32_t > iPair (a1.reducedtrackId (), a2.reducedtrackId ());
2172+ if (fAmbiguousPairs .find (iPair) != fAmbiguousPairs .end ()) {
2173+ if (fAmbiguousPairs [iPair] & (static_cast <uint32_t >(1 ) << icut)) { // if this pair is already stored with this cut
2174+ isAmbiExtra = true ;
2175+ } else {
2176+ fAmbiguousPairs [iPair] |= static_cast <uint32_t >(1 ) << icut;
2177+ }
21752178 } else {
2176- fAmbiguousPairs [iPair] | = static_cast <uint32_t >(1 ) << icut;
2179+ fAmbiguousPairs [iPair] = static_cast <uint32_t >(1 ) << icut;
21772180 }
2178- } else {
2179- fAmbiguousPairs [iPair] = static_cast <uint32_t >(1 ) << icut;
21802181 }
21812182 }
2182- }
2183- if (sign1 * sign2 < 0 ) {
2184- for (int i = 0 ; i < 20 ; i++) {
2183+ if (sign1 * sign2 < 0 ) {
2184+ for (int i = 0 ; i < 20 ; i++) {
21852185 VarManager::FillPairRotation<TPairType, TTrackFillMap>(t1, t2);
21862186 if constexpr (TPairType == VarManager::kDecayToEE ) {
2187- fHistMan ->FillHistClass (Form (" PairsBarrelTRPM_%s" , fTrackCuts [icut].Data ()), VarManager::fgValues);
2188- if (isAmbiExtra) {
2189- fHistMan ->FillHistClass (Form (" PairsBarrelTRPM_ambiguousextra_%s" , fTrackCuts [icut].Data ()), VarManager::fgValues);
2187+ fHistMan ->FillHistClass (Form (" PairsBarrelTRPM_%s" , fTrackCuts [icut].Data ()), VarManager::fgValues);
2188+ if (isAmbiExtra) {
2189+ fHistMan ->FillHistClass (Form (" PairsBarrelTRPM_ambiguousextra_%s" , fTrackCuts [icut].Data ()), VarManager::fgValues);
2190+ }
21902191 }
21912192 }
21922193 }
21932194 }
21942195 }
21952196 }
2196- }
2197- // end
2197+ // end
21982198 } // end loop over pairs of track associations
21992199 VarManager::fgValues[VarManager::kNPairsPerEvent ] = fNPairPerEvent ;
22002200 if (fEnableBarrelHistos && fConfigQA ) {
0 commit comments