Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Passing value between threads in art module #147

Open
sophiemiddleton opened this issue May 9, 2024 · 4 comments
Open

Passing value between threads in art module #147

sophiemiddleton opened this issue May 9, 2024 · 4 comments
Assignees

Comments

@sophiemiddleton
Copy link

Describe your request or issue
Hello,

i'm currently developing the REveMu2e framework for our event display: https://github.com/Mu2e/REve .

we currently have this module: https://github.com/Mu2e/REve/blob/main/src/REveEventDisplay_module.cc which launches a two-threaded process. This is to allow the application to stay open, pause for user input and skip between events.

REve operate like any ROOT based GUI program, using a TApplication setup.

The issue is that I want to enter information in the GUI text field. The display manager( which is added here: https://github.com/Mu2e/REve/blob/main/src/REveEventDisplay_module.cc#L466) sets up the text boxes on the display and takes input from the user...I want to use that information in the module (e.g. for event selection, time cuts, energy cuts, things like that).

So here is the current situation:

https://github.com/Mu2e/REve/blob/main/src/REveEventDisplay_module.cc#L268

which sets up the function where I'm trying access that value and the function which makes. the display object in different threads.

My query is, what would be the best way to pass the value (e.g. run number) from the display class to the event class such that I can use it?

Is this a high-priority issue?

@knoepfel
Copy link
Contributor

@sophiemiddleton, we are trying to understand your use case better. Are you:

  1. Hoping to instruct the art framework as to which event should be processed? (requires driving the input source)
  2. Hoping to display only the event specified by the user while ignoring all other events from the input stream? (could be implemented as a module)

@sophiemiddleton
Copy link
Author

Hi Kyle, at this point I want to either really. But the usecase is more general than that....the usecase of user input via GUI can be applied to anything for example, it could be a time or energy cut, we could be asking for a specific track to be shown etc....so its not just about solving the "go to an event" use case here

@knoepfel knoepfel self-assigned this Jun 17, 2024
@knoepfel
Copy link
Contributor

knoepfel commented Jul 8, 2024

@sophiemiddleton, sorry for the delay. Is this still an issue?

@sophiemiddleton
Copy link
Author

Yes, I did not solve this yet and it would be a useful feature

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

No branches or pull requests

2 participants