Skip to content

feat: add event dataset browser with physics-aware filtering (#861)#868

Open
rx18-eng wants to merge 1 commit intoHSF:mainfrom
rx18-eng:feat/event-browser
Open

feat: add event dataset browser with physics-aware filtering (#861)#868
rx18-eng wants to merge 1 commit intoHSF:mainfrom
rx18-eng:feat/event-browser

Conversation

@rx18-eng
Copy link
Copy Markdown
Collaborator

Summary

  • added a new Event Browser panel that pre-scans all loaded events and shows a summary table with object counts per collection type, MET, and event/run numbers
  • the table is sortable and filterable (column filters with >=, <=, =, MET minimum, and search by event number)
  • keyboard nav works with arrow keys in the table + Shift+Left/Right for prev/next event globally

columns are ordered with reconstructed physics objects first (Jets, Muons, Tracks, etc) and detector-level stuff (CaloCells, Hits) pushed to the right. zero values are dimmed so you can quickly scan which events have what. there's a separate "Reco" column that only counts reconstructed objects for easier comparison between events.

follows the same CDK overlay pattern as Collections Info, config-driven via showEventBrowser in UIMenuConfig.

search by event number is there per Edward's feedback. the UI is independent of the loading strategy so lazy-loading can be added later without changing the browser itself (per Sebastien's note on memory).

Test plan

  • load a multi-event file (atlas.json from assets/files/event_data/ works)
  • open Event Browser from toolbar
  • check that reconstructed columns show before detector-level ones
  • try sorting, adding filters, searching by event number
  • click load button and check the spinner + loaded event highlight
  • Shift+Right/Left to navigate events globally
Recording.2026-03-31.012641.mp4

Signed-off-by: rx18-eng <remopanda78@gmail.com>
@rx18-eng
Copy link
Copy Markdown
Collaborator Author

@EdwardMoyse @sponce , please let me know your thoughts on this !

@rx18-eng rx18-eng requested a review from EdwardMoyse March 30, 2026 20:19
@sponce
Copy link
Copy Markdown
Collaborator

sponce commented Mar 31, 2026

I like this a lot. And I've just tested it with LHCb data, it works very nicely. Just a tiny question : what is the "MET" column and why is it always empty ?

@rx18-eng
Copy link
Copy Markdown
Collaborator Author

@sponce Thanks for your review . MET is Missing Transverse Energy, computed from the MissingEnergy collection if the event data has one (e.g. ATLAS JiveXML files). LHCb data doesn't include MET collections since it's a forward spectrometer, so the column stays empty.

IF you want I can hide the MET column entirely when no events have MET data so it doesn't show up as noise for experiments that don't use it.

@sponce
Copy link
Copy Markdown
Collaborator

sponce commented Mar 31, 2026

Thanks for the explanation about MET. Coming from LHCb, I must say I did not know the concept indeed ! Indeed, the columns not appearing at all in data should probably not be displayed, although it's not a big deal. The feature is already very useful like this in my opinion

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants