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

Consider refactoring DAQ class to enable DAQ devices (i.e. AOTF laser + others) #27

Open
adamkglaser opened this issue Jun 10, 2024 · 0 comments
Assignees

Comments

@adamkglaser
Copy link
Collaborator

Right now, the DAQ class contains all of the information for tasks, AO channels, etc. We could consider refactoring this and instead embedding tasks/AO channels within devices themselves.

This would require passing the DAQ into the device. We could do this by first initializing the DAQ (just sampling rate, Dev name etc) and then passing this minimal DAQ into other devices. Perhaps these "DAQ" devices would be subdevices of the DAQ in the YAML. Or we could define them outside of the DAQ but have a different means of passing the DAQ in.

It is also possible to create many tasks on the DAQ. Right now we are creating one massive task for all of our devices. It may be more compatible with the above to define a dedicated task (named appropriately) for each device, within that device class that inherits the DAQ object. Hardware wise, the only requirement is that there is one task for each multiple of 4 AO channels. So AO0-3 can only contain one task, etc.

@micahwoodard micahwoodard mentioned this issue Aug 1, 2024
4 tasks
@waltermwaniki waltermwaniki self-assigned this Sep 5, 2024
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