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 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
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.