Skip to content

Commit 3ebffe1

Browse files
authored
[PWGCF] Add FitVars table/processing for tracks, v0s and cascade in femto framework (#18537)
1 parent aed5e53 commit 3ebffe1

19 files changed

Lines changed: 551 additions & 277 deletions

‎PWGCF/Femto/Core/cascadeBuilder.h‎

Lines changed: 16 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -481,10 +481,12 @@ struct CascadeBuilderProducts : o2::framework::ProducesGroup {
481481
o2::framework::Produces<o2::aod::FLiteXis> producedLiteXis;
482482
o2::framework::Produces<o2::aod::FXiMasks> producedXiMasks;
483483
o2::framework::Produces<o2::aod::FXiExtras> producedXiExtras;
484+
o2::framework::Produces<o2::aod::FXiFrac> producedXiFrac;
484485
o2::framework::Produces<o2::aod::FOmegas> producedOmegas;
485486
o2::framework::Produces<o2::aod::FLiteOmegas> producedLiteOmegas;
486487
o2::framework::Produces<o2::aod::FOmegaMasks> producedOmegaMasks;
487488
o2::framework::Produces<o2::aod::FOmegaExtras> producedOmegaExtras;
489+
o2::framework::Produces<o2::aod::FOmegaFrac> producedOmegaFrac;
488490
};
489491

490492
struct ConfCascadeTables : o2::framework::ConfigurableGroup {
@@ -493,10 +495,12 @@ struct ConfCascadeTables : o2::framework::ConfigurableGroup {
493495
o2::framework::Configurable<int> produceLiteXis{"produceLiteXis", -1, "Produce LiteXis (-1: auto; 0 off; 1 on)"};
494496
o2::framework::Configurable<int> produceXiMasks{"produceXiMasks", -1, "Produce XiMasks (-1: auto; 0 off; 1 on)"};
495497
o2::framework::Configurable<int> produceXiExtras{"produceXiExtras", -1, "Produce XiExtras (-1: auto; 0 off; 1 on)"};
498+
o2::framework::Configurable<int> produceXiFrac{"produceXiFrac", -1, "Produce XiFrac (cpa for fraction extraction) (-1: auto; 0 off; 1 on)"};
496499
o2::framework::Configurable<int> produceOmegas{"produceOmegas", -1, "Produce Omegas (-1: auto; 0 off; 1 on)"};
497500
o2::framework::Configurable<int> produceLiteOmegas{"produceLiteOmegas", -1, "Produce LiteOmegas (-1: auto; 0 off; 1 on)"};
498501
o2::framework::Configurable<int> produceOmegaMasks{"produceOmegaMasks", -1, "Produce OmegaMasks (-1: auto; 0 off; 1 on)"};
499502
o2::framework::Configurable<int> produceOmegaExtras{"produceOmegaExtras", -1, "Produce OmegaExtras (-1: auto; 0 off; 1 on)"};
503+
o2::framework::Configurable<int> produceOmegaFrac{"produceOmegaFrac", -1, "Produce OmegaFrac (cpa for fraction extraction) (-1: auto; 0 off; 1 on)"};
500504
};
501505

502506
template <modes::Cascade cascadeType, auto& SelectionHistName, auto& FilterHistName>
@@ -515,6 +519,7 @@ class CascadeBuilder
515519
mProduceXis = utils::enableTable("FXis_001", table.produceXis.value, initContext);
516520
mProduceXiMasks = utils::enableTable("FXiMasks_002", table.produceXiMasks.value, initContext);
517521
mProduceXiExtras = utils::enableTable("FXiExtras_001", table.produceXiExtras.value, initContext);
522+
mProduceXiFrac = utils::enableTable("FXiFrac_001", table.produceXiFrac.value, initContext);
518523

519524
if (mProduceXis && mProduceLiteXis) {
520525
LOG(fatal) << "FXis and FLiteXis are mutually exclusive -- enable only one. "
@@ -538,6 +543,7 @@ class CascadeBuilder
538543
mProduceLiteOmegas = utils::enableTable("FLiteOmegas_001", table.produceLiteOmegas.value, initContext);
539544
mProduceOmegaMasks = utils::enableTable("FOmegaMasks_002", table.produceOmegaMasks.value, initContext);
540545
mProduceOmegaExtras = utils::enableTable("FOmegaExtras_001", table.produceOmegaExtras.value, initContext);
546+
mProduceOmegaFrac = utils::enableTable("FOmegaFrac_001", table.produceOmegaFrac.value, initContext);
541547

542548
if (mProduceOmegas && mProduceLiteOmegas) {
543549
LOG(fatal) << "FOmegas and FLiteOmegas are mutually exclusive -- enable only one. "
@@ -556,8 +562,8 @@ class CascadeBuilder
556562
}
557563
}
558564

559-
if (mProduceXis || mProduceLiteXis || mProduceXiExtras || mProduceXiMasks ||
560-
mProduceOmegas || mProduceLiteOmegas || mProduceOmegaMasks || mProduceOmegaExtras) {
565+
if (mProduceXis || mProduceLiteXis || mProduceXiExtras || mProduceXiFrac || mProduceXiMasks ||
566+
mProduceOmegas || mProduceLiteOmegas || mProduceOmegaMasks || mProduceOmegaExtras || mProduceOmegaFrac) {
561567
mFillAnyTable = true;
562568
} else {
563569
LOG(info) << "No tables configured, Selection object will not be configured...";
@@ -701,6 +707,9 @@ class CascadeBuilder
701707
strangeTofPosDau,
702708
strangeTofNegDau);
703709
}
710+
if (mProduceXiFrac) {
711+
cascadeProducts.producedXiFrac(cascade.casccosPA(col.posX(), col.posY(), col.posZ()));
712+
}
704713
}
705714
if constexpr (modes::isEqual(cascadeType, modes::Cascade::kOmega)) {
706715
if (mProduceOmegas) {
@@ -741,6 +750,9 @@ class CascadeBuilder
741750
strangeTofPosDau,
742751
strangeTofNegDau);
743752
}
753+
if (mProduceOmegaFrac) {
754+
cascadeProducts.producedOmegaFrac(cascade.casccosPA(col.posX(), col.posY(), col.posZ()));
755+
}
744756
}
745757
}
746758

@@ -754,10 +766,12 @@ class CascadeBuilder
754766
bool mProduceLiteXis = false;
755767
bool mProduceXiMasks = false;
756768
bool mProduceXiExtras = false;
769+
bool mProduceXiFrac = false;
757770
bool mProduceOmegas = false;
758771
bool mProduceLiteOmegas = false;
759772
bool mProduceOmegaMasks = false;
760773
bool mProduceOmegaExtras = false;
774+
bool mProduceOmegaFrac = false;
761775
};
762776

763777
struct ConfCascadeTablesDerivedToDerived : o2::framework::ConfigurableGroup {

0 commit comments

Comments
 (0)