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

VTypes #41

Closed
willrogers opened this issue Sep 30, 2019 · 5 comments
Closed

VTypes #41

willrogers opened this issue Sep 30, 2019 · 5 comments

Comments

@willrogers
Copy link
Collaborator

We will use a well-defined set of types for control system data. These will represent either EPICS normative types or a close approximation.

I have made a start in src/ntypes.ts, but more helper functions and types are needed. I am inclined to look at the so-called VTypes that have been developed in Java, since lessons have been learned by using them and they would translate quite easily to TypeScript. It may be a good idea to replicate the VTypes in TypeScript directly.

More on this wiki page

@skyfrench skyfrench self-assigned this Oct 1, 2019
@skyfrench
Copy link
Contributor

At the moment I can enter numbers & strings into the demo input boxes, and these values are accepted into the store and the readbacks reflect the change. What's the current vision for forcing entry of a number, for example, when only that makes sense?

@willrogers
Copy link
Collaborator Author

First thoughts: this will be going via the control system. In the demo it's the simulator, which is unsophisticated and types are not considered.

If it's a real control system the idea is that you send the value and it is coerced, either by e.g. ConiqlPlugin if it knows enough to do so, or possibly by the IOC.

The real value comes back from the control system: if the update is rejected then the real value won't change. If it has been converted into a number the number should come back.

Cothread is a good example for how this coercion works in Python.

@skyfrench skyfrench removed their assignment Oct 4, 2019
@willrogers
Copy link
Collaborator Author

See #46

@willrogers
Copy link
Collaborator Author

This is started and seems to be working fine. There are more VTypes to be implemented but I think I'll close this ticket.

@willrogers
Copy link
Collaborator Author

... I haven't really thought about how one might include arbitrary structures as opposed to normative types ...

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