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

Ability to simulate a real BT easily || generate moc IOCs from a real world example OR swap in a blackboard equivalent of the tree #53

Open
joshc-slac opened this issue Oct 2, 2024 · 1 comment · May be fixed by #68

Comments

@joshc-slac
Copy link
Collaborator

joshc-slac commented Oct 2, 2024

Suggested Solution

We want to keep a 1:1 tree representation.
Does this require some form of scrapping tool?

  • can we scrape our existing control system?
@tangkong
Copy link
Contributor

tangkong commented Oct 2, 2024

From our weekly discussion:
The goal is to easily mock a real tree and test/verify its execution logic. There were a couple of methods proposed for this:

  • Create blackboard analogs to our EPICS-communication-enabled tree items. Alternately: refactor our items to be more one-to-one with the blackboard items.
    • When mocking a tree, we could swap out EPICS-items with Blackboard-items and easily track the variables
    • This might result in us being unsure if the conversion was truly accurate, and was ranked lowest)
  • Programmatically stand up a caproto IOC, after scraping all PV instances from items in the tree, then run the tree against that IOC
    • We could isolate communication by using a different port than the normal CA communication
    • We can scrape our controls system to initialize this caproto IOC
  • Inject blackboard communication by monkeypatching caget/caput
    • snazzy, fun

All of this is important long term, but w.r.t an MVP is maybe of a lower priority

@ZLLentz ZLLentz linked a pull request Nov 14, 2024 that will close this issue
8 tasks
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 a pull request may close this issue.

2 participants