-
Notifications
You must be signed in to change notification settings - Fork 9
Open
Description
Hi All, I'm excited to be digging into acquire a bit more!
I wrote down a couple thoughts during my first experiments and would be curious to get your insights.
- Is there a runtime singleton?
acquire.Runtime() is acquire.Runtime()returnsFalse, and it's clear that different return values are not interchangeable.- Is the user expected to manage the lifetime of the runtime?
- What happens if the runtime is garbage collected? (do you maintain an internal reference to the runtime that the user could retrieve?)
- How do physical devices handle being managed multiple runtimes (for example, if two different end-users both tried to use acquire at the same time)
- Is there a device_manager singleton?
runtime.device_manager() is runtime.device_manager()returnsFalse- are the identifiers returned by
dm.selecttied to a specific device_manager, or to the runtime?
- are the identifiers returned by
where does one look (in the docs or in the source code) to find all the valid strings fordm.select? For example, how do I know that"simulated: radial sin"is a valid value (outside of reading it in the getting started docs)?Relatedly (see below) it would be great if an invalid name raised an exception sooner than the(also not sure how I hit this the first time, this time I gotFailed acquire api status checkthat you get when starting the runtimedevice_manager_select_inner_(): Device not found: Camera asdfds)- I think the term
CameraProperties.offsetis potentially confusing, could be conflated with camera amplifier offset rather than the ROI offset (when I think of "camera offset" I definitely think of the amplifier, not the ROI) - enums like
SampleTypeshould be proper enum objects; or at least have a__members__attribute for introspection, a__getitem__method for reverse lookup, and a__call__method for conversion. (It should be easier to cast names to enums and know what enums are available programmatically) RuntimeError: Failed acquire api status check: It would be great if this error was much more informative. I ran into it multiple times, and each time had to guess at what I was doing wrong. (Such as not having a storage, or having a typo in the second argument todm.select())- I find it a bit confusing that you set
camera.settings.shapewith(width, height)but you receive it back from available data as(height, width)
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels
Type
Projects
Status
Priority Backlog