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

Todo: establish better conventions for axis naming, and generic axis iterables #137

Open
2 tasks
tlambert03 opened this issue Sep 23, 2023 · 0 comments
Open
2 tasks

Comments

@tlambert03
Copy link
Member

tlambert03 commented Sep 23, 2023

axis naming is a hard issue. it's a necessary evil. There are obvious conventions out there (e.g. XYZCT) but extensions are always needed (e.g. P position, G grid, row/col etc...). Ultimately useq-schema should only care about mapping an arbitrary string to an iterable of coordinates for that dimension. This is mostly what MDASequence does, albeit with hard-coded assumptions about the dimensions for now, so as to make it easy to accomplish the vast majority of use cases. The underlying code still just treats it as an iterable (mostly arbitrary) axes. but more could be done

  • first, we definitely need to get rid of axis_order as a string. it should be Sequence[str], not assuming single-character keys Todo: make axis order Sequence[str] not str #138
  • we should make an additional more flexible class
    class NewSeq:
        axes: dict[str, Iterable[coord]]
    MDASequence is essentially a subclass of that more general pattern, with "known" axes PGZCT
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

1 participant