Skip to content

Commit 7ea31c3

Browse files
aalkinalibuild
andauthored
[Common,PWGCF,PWGDQ,PWGHF,PWGLF,Trigger] DPL Analysis: more compatibility changes for the upcoming O2 update (#8322)
Co-authored-by: ALICE Action Bot <alibuild@cern.ch>
1 parent 9650306 commit 7ea31c3

File tree

14 files changed

+313
-289
lines changed

14 files changed

+313
-289
lines changed

Common/Tools/CMakeLists.txt

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -12,9 +12,9 @@
1212
add_subdirectory(Multiplicity)
1313
add_subdirectory(PID)
1414

15-
o2physics_add_executable(aod-data-model-graph
16-
SOURCES aodDataModelGraph.cxx
17-
PUBLIC_LINK_LIBRARIES O2::Framework O2Physics::AnalysisCore)
15+
#o2physics_add_executable(aod-data-model-graph
16+
# SOURCES aodDataModelGraph.cxx
17+
# PUBLIC_LINK_LIBRARIES O2::Framework O2Physics::AnalysisCore)
1818

1919
o2physics_add_library(trackSelectionRequest
2020
SOURCES trackSelectionRequest.cxx

EventFiltering/cefpTask.cxx

Lines changed: 7 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -200,12 +200,11 @@ static const float defaultDownscaling[128][1]{
200200
{1.f},
201201
{1.f}}; /// Max number of columns for triggers is 128 (extendible)
202202

203-
#define FILTER_CONFIGURABLE(_TYPE_) \
204-
Configurable<LabeledArray<float>> cfg##_TYPE_ \
205-
{ \
206-
#_TYPE_, {defaultDownscaling[0], NumberOfColumns(typename _TYPE_::table_t::columns{}), 1, ColumnsNames(typename _TYPE_::table_t::columns{}), downscalingName }, #_TYPE_ " downscalings" \
203+
#define FILTER_CONFIGURABLE(_TYPE_) \
204+
Configurable<LabeledArray<float>> cfg##_TYPE_ \
205+
{ \
206+
#_TYPE_, {defaultDownscaling[0], NumberOfColumns(typename _TYPE_::table_t::persistent_columns_t{}), 1, ColumnsNames(typename _TYPE_::table_t::persistent_columns_t{}), downscalingName}, #_TYPE_ " downscalings" \
207207
}
208-
209208
} // namespace
210209

211210
struct centralEventFilterTask {
@@ -272,11 +271,11 @@ struct centralEventFilterTask {
272271
{
273272

274273
// Filling output table
275-
auto bcTabConsumer = pc.inputs().get<TableConsumer>(aod::MetadataTrait<std::decay_t<aod::BCs>>::metadata::tableLabel());
274+
auto bcTabConsumer = pc.inputs().get<TableConsumer>(o2::soa::getTableLabel<aod::BCs>());
276275
auto bcTabPtr{bcTabConsumer->asArrowTable()};
277-
auto collTabConsumer = pc.inputs().get<TableConsumer>(aod::MetadataTrait<std::decay_t<aod::Collisions>>::metadata::tableLabel());
276+
auto collTabConsumer = pc.inputs().get<TableConsumer>(o2::soa::getTableLabel<aod::Collisions>());
278277
auto collTabPtr{collTabConsumer->asArrowTable()};
279-
auto evSelConsumer = pc.inputs().get<TableConsumer>(aod::MetadataTrait<std::decay_t<aod::EvSels>>::metadata::tableLabel());
278+
auto evSelConsumer = pc.inputs().get<TableConsumer>(o2::soa::getTableLabel<aod::EvSels>());
280279
auto evSelTabPtr{evSelConsumer->asArrowTable()};
281280

282281
auto columnGloBCId{bcTabPtr->GetColumnByName(aod::BC::GlobalBC::mLabel)};

EventFiltering/filterTables.h

Lines changed: 28 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,32 @@
1515
#include <unordered_map>
1616
#include <string>
1717
#include <vector>
18-
#include "Framework/AnalysisDataModel.h"
18+
#include <cstdint>
19+
20+
namespace o2::aod
21+
{
22+
template <uint32_t T>
23+
struct Hash;
24+
}
25+
26+
#include "Framework/ASoA.h"
27+
28+
namespace o2::soa
29+
{
30+
template <typename T>
31+
requires(!std::same_as<typename o2::aod::MetadataTrait<std::decay_t<T>>::metadata, void>)
32+
const char* getTableLabel()
33+
{
34+
return o2::aod::MetadataTrait<std::decay_t<T>>::metadata::tableLabel();
35+
}
36+
37+
template <typename T>
38+
requires requires { T::ref.label_hash; }
39+
const char* getTableLabel()
40+
{
41+
return o2::aod::Hash<T::ref.label_hash>::str;
42+
}
43+
} // namespace o2::soa
1944

2045
namespace o2::aod
2146
{
@@ -280,7 +305,7 @@ static_assert(o2::framework::pack_size(FiltersPack) == NumberOfFilters);
280305
template <typename T, typename C>
281306
void addColumnToMap(std::unordered_map<std::string, std::unordered_map<std::string, float>>& map)
282307
{
283-
map[MetadataTrait<T>::metadata::tableLabel()][C::columnLabel()] = 1.f;
308+
map[o2::soa::getTableLabel<T>()][C::columnLabel()] = 1.f;
284309
}
285310

286311
template <typename T, typename... C>
@@ -297,7 +322,7 @@ void addColumnsToMap(o2::framework::pack<C...>, std::unordered_map<std::string,
297322
template <typename... T>
298323
void FillFiltersMap(o2::framework::pack<T...>, std::unordered_map<std::string, std::unordered_map<std::string, float>>& map)
299324
{
300-
(addColumnsToMap<T>(typename T::table_t::columns{}, map), ...);
325+
(addColumnsToMap<T>(typename T::table_t::persistent_columns_t{}, map), ...);
301326
}
302327

303328
template <typename... C>

EventFiltering/selectBCRange.cxx

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -49,13 +49,13 @@ struct BCRangeSelector {
4949

5050
void run(ProcessingContext& pc)
5151
{
52-
auto bcConsumer = pc.inputs().get<TableConsumer>(aod::MetadataTrait<std::decay_t<aod::BCs>>::metadata::tableLabel());
52+
auto bcConsumer = pc.inputs().get<TableConsumer>(o2::soa::getTableLabel<aod::BCs>());
5353
auto bcTable{bcConsumer->asArrowTable()};
54-
auto collConsumer = pc.inputs().get<TableConsumer>(aod::MetadataTrait<std::decay_t<aod::Collisions>>::metadata::tableLabel());
54+
auto collConsumer = pc.inputs().get<TableConsumer>(o2::soa::getTableLabel<aod::Collisions>());
5555
auto collTable{collConsumer->asArrowTable()};
56-
auto evSelConsumer = pc.inputs().get<TableConsumer>(aod::MetadataTrait<std::decay_t<aod::EvSels>>::metadata::tableLabel());
56+
auto evSelConsumer = pc.inputs().get<TableConsumer>(o2::soa::getTableLabel<aod::EvSels>());
5757
auto evSelTable{evSelConsumer->asArrowTable()};
58-
auto cefpConsumer = pc.inputs().get<TableConsumer>(aod::MetadataTrait<std::decay_t<aod::CefpDecisions>>::metadata::tableLabel());
58+
auto cefpConsumer = pc.inputs().get<TableConsumer>(o2::soa::getTableLabel<aod::CefpDecisions>());
5959
auto cefpTable{cefpConsumer->asArrowTable()};
6060

6161
auto bcs = aod::BCs({bcTable});

0 commit comments

Comments
 (0)