9#include "CorrFitPairGeneratorYPtKtStubborn.h"
11#include "FemtoCorrFuncKt.h"
12#include "FemtoMiniPair.h"
14#include <RtypesCore.h>
16#include <TClonesArray.h>
17#include <TDatabasePDG.h>
22#include <TParticlePDG.h>
27 CorrFitPairGeneratorYPtKtStubborn::CorrFitPairGeneratorYPtKtStubborn() {}
29 CorrFitPairGeneratorYPtKtStubborn::~CorrFitPairGeneratorYPtKtStubborn() {}
31 void CorrFitPairGeneratorYPtKtStubborn::GenerateEvent() {
32 switch (fGroupingFlag) {
33 case EGrouping::kOneDim: {
34 int size1d = fLimitsN.
GetSize() - 1;
37 int startBin = fLimitsN[1];
39 bin = GeneratePairOneDim();
40 if (bin < 1)
continue;
41 if (fLimitsN[bin] == startBin) {
42 auto array = fSignalPairs[bin];
44 auto pair = (FemtoMicroPair*) array->ConstructedAt(array->GetEntriesFast());
48 }
while (counted != size1d);
50 case EGrouping::kThreeDim: {
51 int size1d = fLimits3D.
GetSize() - 1;
52 int size2d = fLimits3D[1].
GetSize() - 1;
53 int size3d = fLimits3D[1][1].
GetSize() - 1;
54 int totalSize = size1d * size2d * size3d - 1;
56 int startBin = fLimits3D[1][1][1];
59 auto bin = GeneratePairThreeDim();
61 if (bin.x < 1)
continue;
62 if (bin.y < 1)
continue;
63 if (bin.z < 1)
continue;
64 if (fLimits3D[bin.x][bin.y][bin.z] == startBin) {
65 auto array = fSignalPairs[bin.z - 1];
66 auto pair = (FemtoMicroPair*) array->ConstructedAt(array->GetEntriesFast());
71 }
while (counted != totalSize);
72 for (
int i = 0; i < totalSize; i++) {
73 for (
auto sig : fSignalPairs) {
74 auto pair = (FemtoMicroPair*) sig->ConstructedAt(0);
T IncrementAfter(Int_t i)
T IncrementAfter(Int_t A, Int_t B, Int_t C)