piker icon indicating copy to clipboard operation
piker copied to clipboard

FSP high level UX: parameters generated by func defs, easy hack and reload,

Open goodboy opened this issue 4 years ago • 0 comments

This is a follow up to #268 and obviously will tie in heavily with #270.

Our new (very very wip) @fsp api allows annotating processors both with a decorator and via introspection of the func signature. As an example, the period for a mean can be specified as a default named argument period: int = 16 and this value and annotation is loaded and a field generated in the sidepane for the fsp chart in the UI. We too add more complete support for these parameters, their side effects when changed by the user and further how to recompute history and/or copy the produced output history if needed.


ToDo:

  • support Edit field changes which trigger re computation of the fsp's history and real-time update output
    • [ ] task respawning api via a small messaging layer over a tractor.MsgStream
    • [ ] Param[int] style api which allows for dynamic reads by the fsp code which may result in dynamic real-time data flow changes
  • [ ] declarative graphics controls in the decorator api likely of a form where each outputs: list[str] = [<name>, <name1>] becomes something like outputs: dict[str, dict[str, Any]] which can be loaded and passed to a manager which calls into our graphics config apis.
  • [ ] a context menu and/or button to trigger lookup and load of fsp code into the user's native editor for easy write/save/respawn -> reload chart style development
  • [ ] a panel / button for adding additional compuations onto some flow on a chart without creating a new subchart?
  • [ ] legend for all curves on a subchart?

goodboy avatar Feb 10 '22 13:02 goodboy