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

Refactor stage class #25

Open
adamkglaser opened this issue Jun 10, 2024 · 1 comment
Open

Refactor stage class #25

adamkglaser opened this issue Jun 10, 2024 · 1 comment
Assignees

Comments

@adamkglaser
Copy link
Collaborator

Proposing that the parent stage device contain:

axis_map of {instrument axis: hardware axis} (required)
joystick_map of {instrument axis: joystick setting} (optional)

This gets input into any subdevice so that the subdevice knows the complete axis and joystick mapping

@waltermwaniki waltermwaniki self-assigned this Jul 8, 2024
@micahwoodard
Copy link
Collaborator

Is your feature request related to a problem? Please describe.
Logic and organization of stage is confusing

Describe the solution you'd like
For the asi stages in the exaspim, we construct the yaml with a parent TigerboxController and then create subsequent children axes with the axis mapping passed in. Additionally, a joystick device is created and the axis map is passed in again. See here. A StageController device should be added to voxel to handle the axis mapping which would reduce overhead in initializing axes and other components. There is one in spim-core called Pose which is similar to what we would want. Then, we could rewrite axes and joystick drivers to obtain the axis mapping from StageController parent.

Acceptance Criteria

  • Create StageController which handles axis maping
  • refactor Stage class
  • refactor Joystick class
  • change affected yamls

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

3 participants