Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 0 additions & 3 deletions Framework/Core/include/Framework/BinningPolicy.h
Original file line number Diff line number Diff line change
Expand Up @@ -300,9 +300,6 @@ struct ColumnBinningPolicy : BinningPolicyBase<sizeof...(Ts)> {
using persistent_columns_t = framework::selected_pack<o2::soa::is_persistent_t, Ts...>;
};

template <typename... Ts>
using BinningPolicy = ColumnBinningPolicy<Ts...>;

template <typename C>
struct NoBinningPolicy {
// Just take the bin number from the column data
Expand Down
4 changes: 2 additions & 2 deletions Framework/Core/test/benchmark_EventMixing.cxx
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,7 @@ static void BM_EventMixingTraditional(benchmark::State& state)

std::vector<double> xBins{VARIABLE_WIDTH, -0.064, -0.062, -0.060, 0.066, 0.068, 0.070, 0.072};
std::vector<double> yBins{VARIABLE_WIDTH, -0.320, -0.301, -0.300, 0.330, 0.340, 0.350, 0.360};
using BinningType = BinningPolicy<o2::aod::collision::PosX, o2::aod::collision::PosY>;
using BinningType = ColumnBinningPolicy<o2::aod::collision::PosX, o2::aod::collision::PosY>;
BinningType binningOnPositions{{xBins, yBins}, true}; // true is for 'ignore overflows' (true by default)

TableBuilder colBuilder, trackBuilder;
Expand Down Expand Up @@ -135,7 +135,7 @@ static void BM_EventMixingCombinations(benchmark::State& state)

std::vector<double> xBins{VARIABLE_WIDTH, -0.064, -0.062, -0.060, 0.066, 0.068, 0.070, 0.072};
std::vector<double> yBins{VARIABLE_WIDTH, -0.320, -0.301, -0.300, 0.330, 0.340, 0.350, 0.360};
using BinningType = BinningPolicy<o2::aod::collision::PosX, o2::aod::collision::PosY>;
using BinningType = ColumnBinningPolicy<o2::aod::collision::PosX, o2::aod::collision::PosY>;
BinningType binningOnPositions{{xBins, yBins}, true}; // true is for 'ignore overflows' (true by default)

TableBuilder colBuilder, trackBuilder;
Expand Down
16 changes: 8 additions & 8 deletions Framework/Core/test/test_ASoAHelpers.cxx
Original file line number Diff line number Diff line change
Expand Up @@ -133,7 +133,7 @@ BOOST_AUTO_TEST_CASE(CombinationsGeneratorConstruction)
std::vector<double> yBins{VARIABLE_WIDTH, 0, 5, 10, 20, 30, 40, 50, 101};
std::vector<double> zBins{VARIABLE_WIDTH, -7.0, -5.0, -3.0, -1.0, 1.0, 3.0, 5.0, 7.0};

BinningPolicy<test::Y, test::FloatZ> pairBinning{{yBins, zBins}, false};
ColumnBinningPolicy<test::Y, test::FloatZ> pairBinning{{yBins, zBins}, false};

CombinationsGenerator<CombinationsStrictlyUpperIndexPolicy<TestA, TestA>>::CombinationsIterator combIt(CombinationsStrictlyUpperIndexPolicy(testsA, testsA));
BOOST_REQUIRE_NE(static_cast<test::X>(std::get<0>(*(combIt))).getIterator().mCurrentPos, nullptr);
Expand Down Expand Up @@ -293,8 +293,8 @@ BOOST_AUTO_TEST_CASE(CombinationsGeneratorConstruction)

auto combBlock = combinations(CombinationsBlockStrictlyUpperSameIndexPolicy(pairBinning, 2, -1, testsA, testsA));

static_assert(std::is_same_v<decltype(combBlock.begin()), CombinationsGenerator<CombinationsBlockStrictlyUpperSameIndexPolicy<BinningPolicy<test::Y, test::FloatZ>, int32_t, TestA, TestA>>::CombinationsIterator>, "Wrong iterator type");
static_assert(std::is_same_v<decltype(*(combBlock.begin())), CombinationsBlockStrictlyUpperSameIndexPolicy<BinningPolicy<test::Y, test::FloatZ>, int32_t, TestA, TestA>::CombinationType&>, "Wrong combination type");
static_assert(std::is_same_v<decltype(combBlock.begin()), CombinationsGenerator<CombinationsBlockStrictlyUpperSameIndexPolicy<ColumnBinningPolicy<test::Y, test::FloatZ>, int32_t, TestA, TestA>>::CombinationsIterator>, "Wrong iterator type");
static_assert(std::is_same_v<decltype(*(combBlock.begin())), CombinationsBlockStrictlyUpperSameIndexPolicy<ColumnBinningPolicy<test::Y, test::FloatZ>, int32_t, TestA, TestA>::CombinationType&>, "Wrong combination type");

auto beginBlockCombination = *(combBlock.begin());
BOOST_REQUIRE_NE(static_cast<test::X>(std::get<0>(beginBlockCombination)).getIterator().mCurrentPos, nullptr);
Expand Down Expand Up @@ -948,8 +948,8 @@ BOOST_AUTO_TEST_CASE(BlockCombinations)
std::vector<double> yBins{VARIABLE_WIDTH, 0, 5, 10, 20, 30, 40, 50, 101};
std::vector<double> zBins{VARIABLE_WIDTH, -7.0, -5.0, -3.0, -1.0, 1.0, 3.0, 5.0, 7.0};

BinningPolicy<test::Y, test::FloatZ> pairBinning{{yBins, zBins}, false};
BinningPolicy<test::Y, test::FloatZ> pairBinningNoOverflows{{yBins, zBins}, true};
ColumnBinningPolicy<test::Y, test::FloatZ> pairBinning{{yBins, zBins}, false};
ColumnBinningPolicy<test::Y, test::FloatZ> pairBinningNoOverflows{{yBins, zBins}, true};

// 2, 3, 5, 8, 9 have overflows in testA
std::vector<std::tuple<int32_t, int32_t>> expectedFullPairsNoOverflows{
Expand Down Expand Up @@ -1168,8 +1168,8 @@ BOOST_AUTO_TEST_CASE(BlockCombinations)
// [3, 5] [0, 4], [7], [1, 6], [2], [8, 9]
// Assuming bins intervals: [ , )
std::vector<double> xBins{VARIABLE_WIDTH, 0, 7, 10};
BinningPolicy<test::X, test::Y, test::FloatZ> tripleBinning{{xBins, yBins, zBins}, false};
BinningPolicy<test::X, test::Y, test::FloatZ> tripleBinningNoOverflows{{xBins, yBins, zBins}, true};
ColumnBinningPolicy<test::X, test::Y, test::FloatZ> tripleBinning{{xBins, yBins, zBins}, false};
ColumnBinningPolicy<test::X, test::Y, test::FloatZ> tripleBinningNoOverflows{{xBins, yBins, zBins}, true};

// 2, 3, 5, 8, 9 have overflows in testA
std::vector<std::tuple<int32_t, int32_t>> expectedFullPairsTripleBinningNoOverflows{
Expand Down Expand Up @@ -1276,7 +1276,7 @@ BOOST_AUTO_TEST_CASE(CombinationsHelpers)
std::vector<double> yBins{VARIABLE_WIDTH, 0, 5, 10, 20, 30, 40, 50, 101};
std::vector<double> zBins{VARIABLE_WIDTH, -7.0, -5.0, -3.0, -1.0, 1.0, 3.0, 5.0, 7.0};

BinningPolicy<test::Y, test::FloatZ> pairBinning{{yBins, zBins}, false};
ColumnBinningPolicy<test::Y, test::FloatZ> pairBinning{{yBins, zBins}, false};

std::vector<std::tuple<int32_t, int32_t>> expectedStrictlyUpperPairs{
{0, 4}, {0, 7}, {4, 7}, {1, 6}, {3, 5}, {2, 8}, {2, 9}, {8, 9}};
Expand Down