Tyelab / bruker_control

Repository for code running the lab's multi-photon imaging experiments at the Bruker Ultima Investigator scope. Unites Arduino, Prairie View, and GenTL machine cameras in Python.
Mozilla Public License 2.0
7 stars 3 forks source link

Change How Metadata Is Stored/Accessed + New Imaging Params File #80

Open jmdelahanty opened 2 years ago

jmdelahanty commented 2 years ago

Adopting .json for configuration files appears to be better practice/common practice for storing metadata. Metadata going forward should be stored as .json. Also, the surgery GUI will be using QJsonDocument. There doesn't appear to be a QYamlDocument....

jmdelahanty commented 2 years ago

This will probably be implemented before the completion of the second refactor.

jmdelahanty commented 2 years ago

I think making things more reliably accessible via a subject class object like how Autopilot does it is the way to go. So this will also be related to how imaging parameters (PMTs, Pockels) will be stored. For now, a new file will be instantiated for this purpose, but in the future there should just be a data model stored in an H5 file that's an extension/plugin for Autopilot. The data models there are, I think, really beautiful and appear very nice to work with!

jmdelahanty commented 1 year ago

Using an Autopilot-like structure and file format for subject information is how I'm going to move forward with this. The H5 file will have all the stuff current YAML files have as well as reference images for both facial recordings and 2p recordings, ideally with multiple planes. Nobody uses the YAML anyways that already exists, so changing to this format will only require minor refactoring on the code side.