diff --git a/Utilities/Mergers/src/MergerAlgorithm.cxx b/Utilities/Mergers/src/MergerAlgorithm.cxx index 2cd09712e4a81..f7b452e6dd18d 100644 --- a/Utilities/Mergers/src/MergerAlgorithm.cxx +++ b/Utilities/Mergers/src/MergerAlgorithm.cxx @@ -18,6 +18,7 @@ #include "Mergers/MergeInterface.h" #include "Mergers/ObjectStore.h" +#include "Mergers/Mergeable.h" #include "Framework/Logger.h" #include @@ -63,7 +64,7 @@ auto collectUnderlyingObjects(TCanvas* canvas) -> std::vector auto* primitive = primitives->At(i); if (auto* primitivePad = dynamic_cast(primitive)) { collectFromTPad(primitivePad, objects, collectFromTPad); - } else { + } else if (isMergeable(primitive)) { objects.push_back(primitive); } } diff --git a/Utilities/Mergers/test/test_Algorithm.cxx b/Utilities/Mergers/test/test_Algorithm.cxx index 4e9e538719655..f46362a6893f1 100644 --- a/Utilities/Mergers/test/test_Algorithm.cxx +++ b/Utilities/Mergers/test/test_Algorithm.cxx @@ -26,6 +26,7 @@ #include "Mergers/MergerAlgorithm.h" #include "Mergers/CustomMergeableTObject.h" #include "Mergers/CustomMergeableObject.h" +#include "Mergers/Mergeable.h" #include "Mergers/ObjectStore.h" #include @@ -40,6 +41,7 @@ #include #include #include +#include // using namespace o2::framework; using namespace o2::mergers; @@ -329,6 +331,12 @@ TCanvas* createCanvas(std::string name, std::string title, std::vectorcd(i); hist->Draw(); + + // non-mergeable TPaveText + TPaveText* pt = new TPaveText(.05, .1, .95, .8); + pt->AddText("test"); + pt->Draw(); + ++i; } return canvas; @@ -345,7 +353,7 @@ auto collectUnderlyingObjects(TCanvas* canvas) -> std::vector auto* primitive = primitives->At(i); if (auto* primitivePad = dynamic_cast(primitive)) { collectFromTPad(primitivePad, objects, collectFromTPad); - } else { + } else if (isMergeable(primitive)) { objects.push_back(primitive); } }