2020#include " PWGCF/Femto/Core/charmHadronHistManager.h"
2121#include " PWGCF/Femto/Core/closePairRejection.h"
2222#include " PWGCF/Femto/Core/collisionHistManager.h"
23+ #include " PWGCF/Femto/Core/femtoUtils.h"
2324#include " PWGCF/Femto/Core/kinkHistManager.h"
2425#include " PWGCF/Femto/Core/mcParticleHistManager.h"
2526#include " PWGCF/Femto/Core/modes.h"
@@ -202,8 +203,8 @@ class PairTrackTrackBuilder
202203 }
203204 }
204205
205- template <modes::Mode mode, typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 >
206- void processMixedEvent (T1 const & cols, T2 & trackTable, T3 & partition1, T4 & partition2, T5 & cache, T6 & binsVtxMult, T7 & binsVtxCent, T8 & binsVtxMultCent)
206+ template <modes::Mode mode, typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 >
207+ void processMixedEvent (T1 const & cols, T2 & trackTable, T3 & partition1, T4 & partition2, T5 & cache, T6 & binsVtxMult, T7 & binsVtxCent, T8 & binsVtxMultCent, T9 & binsVtxCentEventPlaneAngle )
207208 {
208209
209210 if (mSameSpecies ) {
@@ -217,6 +218,13 @@ class PairTrackTrackBuilder
217218 case static_cast <int >(pairhistmanager::kVtxMultCent ):
218219 pairprocesshelpers::processMixedEvent<mode>(cols, partition1, partition1, trackTable, cache, binsVtxMultCent, mMixingDepth , mPairHistManagerMe , mCprMe , mPcMe );
219220 break ;
221+ case static_cast <int >(pairhistmanager::kVtxCentEventPlaneAngle ):
222+ if constexpr (utils::HasEventShape<T1 >) {
223+ pairprocesshelpers::processMixedEvent<mode>(cols, partition1, partition1, trackTable, cache, binsVtxCentEventPlaneAngle, mMixingDepth , mPairHistManagerMe , mCprMe , mPcMe );
224+ } else {
225+ LOG (fatal) << " Mixing policy kVtxCentEventPlaneAngle requires a collision table with event-shape columns. Breaking..." ;
226+ }
227+ break ;
220228 default :
221229 LOG (fatal) << " Invalid binning policiy specifed. Breaking..." ;
222230 }
@@ -231,14 +239,21 @@ class PairTrackTrackBuilder
231239 case static_cast <int >(pairhistmanager::kVtxMultCent ):
232240 pairprocesshelpers::processMixedEvent<mode>(cols, partition1, partition2, trackTable, cache, binsVtxMultCent, mMixingDepth , mPairHistManagerMe , mCprMe , mPcMe );
233241 break ;
242+ case static_cast <int >(pairhistmanager::kVtxCentEventPlaneAngle ):
243+ if constexpr (utils::HasEventShape<T1 >) {
244+ pairprocesshelpers::processMixedEvent<mode>(cols, partition1, partition2, trackTable, cache, binsVtxCentEventPlaneAngle, mMixingDepth , mPairHistManagerMe , mCprMe , mPcMe );
245+ } else {
246+ LOG (fatal) << " Mixing policy kVtxCentEventPlaneAngle requires a collision table with event-shape columns. Breaking..." ;
247+ }
248+ break ;
234249 default :
235250 LOG (fatal) << " Invalid binning policiy specifed. Breaking..." ;
236251 }
237252 }
238253 }
239254
240- template <modes::Mode mode, typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 >
241- void processMixedEvent (T1 const & cols, T2 const & mcCols, T3 & trackTable, T4 & partition1, T5 & partition2, T6 const & mcParticles, T7 const & mcMothers, T8 const & mcPartonicMothers, T9 & cache, T10 & binsVtxMult, T11 & binsVtxCent, T12 & binsVtxMultCent)
255+ template <modes::Mode mode, typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 >
256+ void processMixedEvent (T1 const & cols, T2 const & mcCols, T3 & trackTable, T4 & partition1, T5 & partition2, T6 const & mcParticles, T7 const & mcMothers, T8 const & mcPartonicMothers, T9 & cache, T10 & binsVtxMult, T11 & binsVtxCent, T12 & binsVtxMultCent, T13 & binsVtxCentEventPlaneAngle )
242257 {
243258 if (mSameSpecies ) {
244259 switch (mMixingPolicy ) {
@@ -251,6 +266,13 @@ class PairTrackTrackBuilder
251266 case static_cast <int >(pairhistmanager::kVtxMultCent ):
252267 pairprocesshelpers::processMixedEvent<mode>(cols, mcCols, partition1, partition1, trackTable, mcParticles, mcMothers, mcPartonicMothers, cache, binsVtxMultCent, mMixingDepth , mPairHistManagerMe , mTrackCleaner1 , mTrackCleaner1 , mCprMe , mPcMe );
253268 break ;
269+ case static_cast <int >(pairhistmanager::kVtxCentEventPlaneAngle ):
270+ if constexpr (utils::HasEventShape<T1 >) {
271+ pairprocesshelpers::processMixedEvent<mode>(cols, mcCols, partition1, partition1, trackTable, mcParticles, mcMothers, mcPartonicMothers, cache, binsVtxCentEventPlaneAngle, mMixingDepth , mPairHistManagerMe , mTrackCleaner1 , mTrackCleaner1 , mCprMe , mPcMe );
272+ } else {
273+ LOG (fatal) << " Mixing policy kVtxCentEventPlaneAngle requires a collision table with event-shape columns. Breaking..." ;
274+ }
275+ break ;
254276 default :
255277 LOG (fatal) << " Invalid binning policiy specifed. Breaking..." ;
256278 }
@@ -265,6 +287,13 @@ class PairTrackTrackBuilder
265287 case static_cast <int >(pairhistmanager::kVtxMultCent ):
266288 pairprocesshelpers::processMixedEvent<mode>(cols, mcCols, partition1, partition2, trackTable, mcParticles, mcMothers, mcPartonicMothers, cache, binsVtxMultCent, mMixingDepth , mPairHistManagerMe , mTrackCleaner1 , mTrackCleaner2 , mCprMe , mPcMe );
267289 break ;
290+ case static_cast <int >(pairhistmanager::kVtxCentEventPlaneAngle ):
291+ if constexpr (utils::HasEventShape<T1 >) {
292+ pairprocesshelpers::processMixedEvent<mode>(cols, mcCols, partition1, partition2, trackTable, mcParticles, mcMothers, mcPartonicMothers, cache, binsVtxCentEventPlaneAngle, mMixingDepth , mPairHistManagerMe , mTrackCleaner1 , mTrackCleaner2 , mCprMe , mPcMe );
293+ } else {
294+ LOG (fatal) << " Mixing policy kVtxCentEventPlaneAngle requires a collision table with event-shape columns. Breaking..." ;
295+ }
296+ break ;
268297 default :
269298 LOG (fatal) << " Invalid binning policiy specifed. Breaking..." ;
270299 }
0 commit comments