TEveRGBAPaletteOverlay problems


ROOT Version: 6.22.08
Platform: Linux
Compiler: gcc


I have been playing with the TEveRGBPaletteOveraly feature in Eve but I find problems. On the first event it is fine but the more times I reload it the worse it gets. I’ve tried various combinations of machines and displays but they all have problems. Typically root.exe starts taking 100% CPU time, and the overlayed palette display gets messed up, some times I get segmentation violation some times it just hangs. I’ve created an example based on code in the eve tutorials which shows the problem.
boxset.C (4.1 KB)
None of these problems happen if I comment out the code used for the palette overlay.


I think @matevz can help you.

Hi Alex!

I think there was a problem with the palette objects getting messed up – you were adding a new palette into GL viewer on each event and they were getting deleted when boxset got deleted as ref-count wentr to zero. And I think they didn’t get removed from the GLViewer, so the pointers to deleted objects were still there … and the more of them there were, the likelier it was that memory of one of them got stomped.

I did the following:

  • added includes so I was able to run it as root.exe boxset.C+g
  • moved palette creation into boxset() … so we can share it between events.
    note, I call IncRefCount() on pal so it doesn’t auto destruct when boxset is deleted

boxset.C (4.6 KB)

Cheers,
Matevz

Hi Matevz,

Thanks, that works fine.

Alex

I had already tried moving the palette creation out of load_event() but I hadn’t added the IncRefCount().

Can I request a new feature please. I would like to give a title to TEveRGBPaletteOverlay which stays put. I tried palletteOverlay->RefAxis().SetTitle(“something”) but the position is not fixed.

Hi @ajfinch ,
you can open a feature request issue at Issues · root-project/root · GitHub .

Cheers,
Enrico

Alex, I posted a possible workaround to the github ticket, Axis Title for TEveRGBAPaletteOverlay · Issue #8488 · root-project/root · GitHub, would this work for you?

Cheers,
Matevz

Apologies for not responding. Yes I tried that and it works. Thanks.

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.