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

NDAttribute timeseries as circular buffer #388

Closed
hinxx opened this issue Mar 22, 2019 · 6 comments
Closed

NDAttribute timeseries as circular buffer #388

hinxx opened this issue Mar 22, 2019 · 6 comments

Comments

@hinxx
Copy link
Contributor

hinxx commented Mar 22, 2019

Currently it is not possible to have NDAttribute plugin operate circular buffer of timeseries points. I guess this issue is similar to #327.
Would #333 be the way to go for this one, too? I can try to provide a patch.

@MarkRivers
Copy link
Member

I think the same approach we did with NDPluginStats probably makes sense. I’m happy for you to make a pull request.

@hinxx
Copy link
Contributor Author

hinxx commented Mar 22, 2019

I have a dirty patch,...

Current implementation of timeseries in NDAttribute performs callbacks per asyn port address, each containing a 1-D NDArray. If I want to keep this behavior I think I need a NDTimeSeries plugin instance for each NDAttributeN template instance. Also the NDArrays I allocate are single point, 1-D arrays. This is what I have right now.

I like how NDStats does it with 1-D NDArray holding multiple value from the same time point. I think NDAttrabute could do the same for every attribute it tracks, but I'm not sure of the impact of such change on current users. My use case would favor this solution.

@MarkRivers, what do you think?

@hinxx
Copy link
Contributor Author

hinxx commented Mar 22, 2019

Pull request #389 contains changes to achieve behavior as described in the first paragraphs of the previous comment.

@MarkRivers
Copy link
Member

I merged the pull request without reading your comment carefully enough.

I agree that it should be changed to pass all of the values in a single NDArray, like the Stats plugin does. That way only a single time series plugin is plugin is needed

I don't see how this would adversely impact current users, since it currently erases them all at the same time, they are not independent.

I have made the change an pushed to Github. I have also

  • Changed EXAMPLE_commonPlugins.cmd and EXAMPLE_commonPlugins_settings.req to load and save the TimeSeries plugin.
  • Changed the medm screens and autoconverted opi, ui, and edl screens to use the TimeSeries plugin.
  • Added a note on the changes to RELEASE.md for R3-5.

@hinxx
Copy link
Contributor Author

hinxx commented Mar 28, 2019

I see the difference, looks better than what I had. Also thanks for fixing missing bits in pull request!

@MarkRivers
Copy link
Member

This issue is resolved by #389

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