27namespace skimmedExampleTrack
34 skimmedExampleTrack::Pt,
35 skimmedExampleTrack::Eta);
47 {
"a/b/eta",
"#Eta", {HistType::kTH1F, {{100, -2.0, 2.0}}}},
48 {
"a/phi",
"#Phi", {HistType::kTH1D, {{102, 0, 2 * M_PI}}}},
49 {
"c/pt",
"p_{T}", {HistType::kTH1D, {{1002, -0.01, 50.1}}}},
50 {
"ptToPt",
"#ptToPt", {HistType::kTH2F, {{100, -0.01, 10.01}, {100, -0.01, 10.01}}}}
57 {
"a/foo/b/eta",
"#Eta", {HistType::kTH1F, {{100, -2.0, 2.0}}}},
58 {
"fii/c/hpt",
"p_{T}", {HistType::kTH1D, {{1002, -0.01, 50.1}}}},
59 {
"a/foobar/phi",
"#Phi", {HistType::kTH1D, {{102, 0, 2 * M_PI}}}},
60 {
"fifi/ptToPt",
"#ptToPt", {HistType::kTH2F, {{100, -0.01, 10.01}, {100, -0.01, 10.01}}}}
62 OutputObjHandlingPolicy::AnalysisObject,
75 LOGP(info,
"Invoking the simple one");
76 for (
auto& track : tracks) {
77 etaClsH->Fill(track.eta(), track.pt());
78 skimEx(track.pt(), track.eta());
97 {
"a/b/eta",
"#Eta", {HistType::kTH1F, {{100, -2.0, 2.0}}}},
98 {
"a/phi",
"#Phi", {HistType::kTH1D, {{102, 0, 2 * M_PI}}}},
99 {
"c/pt",
"p_{T}", {HistType::kTH1D, {{1002, -0.01, 50.1}}}},
100 {
"ptToPt",
"#ptToPt", {HistType::kTH2F, {{100, -0.01, 10.01}, {100, -0.01, 10.01}}}}
113 LOGP(info,
"Invoking the simple one IU");
114 for (
auto& track : tracks) {
115 etaClsH->Fill(track.eta(), track.pt());
116 skimEx(track.pt(), track.eta());
127 OutputObj<TH3F> etaClsH{TH3F(
"eta_vs_cls_vs_sigmapT",
"#eta vs N_{cls} vs sigma_{1/pT}", 102, -2.01, 2.01, 160, -0.5, 159.5, 100, 0, 10)};
132 {
"a/b/eta",
"#Eta", {HistType::kTH1F, {{100, -2.0, 2.0}}}},
133 {
"a/phi",
"#Phi", {HistType::kTH1D, {{102, 0, 2 * M_PI}}}},
134 {
"c/pt",
"p_{T}", {HistType::kTH1D, {{1002, -0.01, 50.1}}}},
135 {
"ptToPt",
"#ptToPt", {HistType::kTH2F, {{100, -0.01, 10.01}, {100, -0.01, 10.01}}}}
151 LOGP(info,
"Invoking the run 3 one");
152 for (
auto& track : tracks) {
153 etaClsH->Fill(track.eta(), track.tpcNClsFindable(), track.sigma1Pt());
165 std::string runType =
"3";
166 std::vector<std::string> tables;
168 runType = cfgc.
options().
get<std::string>(
"aod-metadata-Run");
171 tables = cfgc.
options().
get<std::vector<std::string>>(
"aod-metadata-tables");
173 LOGP(info,
"Runtype is {}", runType);
174 bool hasTrackCov =
false;
175 bool hasTrackIU =
false;
176 for (
auto& table : tables) {
177 if (table ==
"O2trackcov") {
180 if (table.starts_with(
"O2track_iu")) {
183 LOGP(info,
"- {} present.", table);
186 if (runType ==
"2" || !hasTrackCov) {
187 LOGP(info,
"Using only tracks {}", runType);
190 adaptAnalysisTask<EtaAndClsHistogramsIUSimple>(cfgc,
TaskName{
"simple-histos"}),
194 adaptAnalysisTask<EtaAndClsHistogramsSimple>(cfgc,
TaskName{
"simple-histos"}),
197 LOGP(info,
"Using tracks extra {}", runType);
200 adaptAnalysisTask<EtaAndClsHistogramsIUSimple>(cfgc,
TaskName{
"simple-histos"}),
204 adaptAnalysisTask<EtaAndClsHistogramsFull>(cfgc,
TaskName{
"simple-histos"}),
#define O2ORIGIN(_Str_)
Pre-declare Hash specialization for an origin string.
#define DECLARE_SOA_TABLE(_Name_, _Origin_, _Desc_,...)
#define DECLARE_SOA_COLUMN(_Name_, _Getter_, _Type_)
ConfigParamRegistry & options() const
bool hasOption(const char *key) const
T get(const char *key) const
void fill(const HistName &histName, Ts... positionAndWeight)
Defining PrimaryVertex explicitly as messageable.
std::vector< DataProcessorSpec > WorkflowSpec
a couple of static helper functions to create timestamp values for CCDB queries or override obsolete ...
WorkflowSpec defineDataProcessing(ConfigContext const &cfgc)
This function hooks up the the workflow specifications into the DPL driver.
HistogramRegistry registry
void process(soa::Filtered< soa::Join< aod::FullTracks, aod::TracksCov > > const &tracks)
OutputObj< TH3F > etaClsH
Configurable< std::string > trackFilterString
void process(soa::Filtered< aod::TracksIU > const &tracks, aod::FT0s const &)
OutputObj< TH2F > etaClsH
HistogramRegistry registry
Configurable< std::string > trackFilterString
Produces< o2::aod::SkimmedExampleTrack > skimEx
HistogramRegistry registry
Configurable< std::string > trackFilterString
HistogramRegistry registry2
OutputObj< TH2F > etaClsH
void process(soa::Filtered< aod::Tracks > const &tracks, aod::FT0s const &)
Produces< o2::aod::SkimmedExampleTrack > skimEx
Struct to differentiate task names from possible task string arguments.
A struct, containing the root of the expression tree.
static Node parse(std::string const &input)