diff --git a/Analysis/DataModel/include/Analysis/HFSecondaryVertex.h b/Analysis/DataModel/include/Analysis/HFSecondaryVertex.h index 2e83aaaa78a35..4e4437a8daa85 100644 --- a/Analysis/DataModel/include/Analysis/HFSecondaryVertex.h +++ b/Analysis/DataModel/include/Analysis/HFSecondaryVertex.h @@ -37,8 +37,9 @@ DECLARE_SOA_TABLE(HFSelTrack, "AOD", "HFSELTRACK", hf_seltrack::DCAPrim0, hf_seltrack::DCAPrim1); -using BigTracks = soa::Join; +using BigTracks = soa::Join; using BigTracksMC = soa::Join; +using BigTracksPID = soa::Join; // FIXME: this is a workaround until we get the index columns to work with joins. diff --git a/Analysis/Tasks/PWGHF/HFD0CandidateSelector.cxx b/Analysis/Tasks/PWGHF/HFD0CandidateSelector.cxx index ab9826ef6bf4b..6d50a5f9d73bf 100644 --- a/Analysis/Tasks/PWGHF/HFD0CandidateSelector.cxx +++ b/Analysis/Tasks/PWGHF/HFD0CandidateSelector.cxx @@ -316,7 +316,7 @@ struct HFD0CandidateSelector { } } - void process(aod::HfCandProng2 const& hfCandProng2s, aod::BigTracks const& tracks) + void process(aod::HfCandProng2 const& hfCandProng2s, aod::BigTracksPID const& tracks) { int statusD0, statusD0bar; // final selection flag : 0-rejected 1-accepted bool topolD0, topolD0bar; @@ -324,8 +324,8 @@ struct HFD0CandidateSelector { for (auto& hfCandProng2 : hfCandProng2s) { //looping over 2 prong candidates - auto trackPos = hfCandProng2.index0(); //positive daughter - auto trackNeg = hfCandProng2.index1(); //negative daughter + auto trackPos = hfCandProng2.index0_as(); //positive daughter + auto trackNeg = hfCandProng2.index1_as(); //negative daughter statusD0 = 0; statusD0bar = 0; diff --git a/Analysis/Tasks/PWGHF/HFTrackIndexSkimsCreator.cxx b/Analysis/Tasks/PWGHF/HFTrackIndexSkimsCreator.cxx index 7e4ce0b9eafbe..f203f9c6e9d17 100644 --- a/Analysis/Tasks/PWGHF/HFTrackIndexSkimsCreator.cxx +++ b/Analysis/Tasks/PWGHF/HFTrackIndexSkimsCreator.cxx @@ -169,6 +169,15 @@ struct HFTrackIndexSkimsCreator { OutputObj hvtx3_z{TH1F("hvtx3_z", "3-prong candidates;#it{z}_{sec. vtx.} (cm);entries", 1000, -20., 20.)}; OutputObj hmass3{TH1F("hmass3", "3-prong candidates;inv. mass (#pi K #pi) (GeV/#it{c}^{2});entries", 500, 1.6, 2.1)}; + /* + // Counter histograms + OutputObj hNCand2ProngVsNTracks{TH2F("hNCand2ProngVsNTracks", "2-prong candidates;# of tracks;# of candidates;entries", 1000, 0., 1000., 1000, 0., 10000.)}; + OutputObj hNCand3ProngVsNTracks{TH2F("hNCand3ProngVsNTracks", "3-prong candidates;# of tracks;# of candidates;entries", 1000, 0., 1000., 1000, 0., 10000.)}; + OutputObj hNCand2Prong{TH1F("hNCand2Prong", "2-prong candidates;# of candidates;entries", 1000, 0., 10000.)}; + OutputObj hNCand3Prong{TH1F("hNCand3Prong", "3-prong candidates;# of candidates;entries", 1000, 0., 10000.)}; + OutputObj hNTracks{TH1F("hNTracks", ";# of tracks;entries", 1000, 0., 1000.)}; + */ + Filter filterSelectTracks = (aod::hf_seltrack::isSel2Prong == 1); using SelectedTracks = soa::Filtered>; // FIXME @@ -214,6 +223,9 @@ struct HFTrackIndexSkimsCreator { df3.setMinRelChi2Change(d_minrelchi2change); df3.setUseAbsDCA(true); + //auto nCand2 = rowTrackIndexProng2.lastIndex(); + //auto nCand3 = rowTrackIndexProng3.lastIndex(); + // first loop over positive tracks //for (auto trackPos1 = tracksPos.begin(); trackPos1 != tracksPos.end(); ++trackPos1) { for (auto trackPos1 = tracks.begin(); trackPos1 != tracks.end(); ++trackPos1) { @@ -471,6 +483,16 @@ struct HFTrackIndexSkimsCreator { } } } + /* + auto nTracks = tracks.size(); // number of tracks in this collision + nCand2 = rowTrackIndexProng2.lastIndex() - nCand2; // number of 2-prong candidates in this collision + nCand3 = rowTrackIndexProng3.lastIndex() - nCand3; // number of 3-prong candidates in this collision + hNTracks->Fill(nTracks); + hNCand2Prong->Fill(nCand2); + hNCand3Prong->Fill(nCand3); + hNCand2ProngVsNTracks->Fill(nTracks, nCand2); + hNCand3ProngVsNTracks->Fill(nTracks, nCand3); + */ } };