Models#

Pydantic models used throughout miniscope_io.

These models should be kept as generic as possible, and any refinements needed for a specific acquisition class should be defined within that module, inheriting from the relevant parent class. Rule of thumb: keep what is common common, and what is unique unique.

pydantic model miniscope_io.models.Container#

Root model for models intended to be used as runtime data containers, eg. those that actually carry data from a buffer, rather than those that configure positions within a header.

See also: MiniscopeConfig

Show JSON schema
{
   "title": "Container",
   "description": "Root model for models intended to be used as runtime data containers,\neg. those that actually carry data from a buffer, rather than\nthose that configure positions within a header.\n\nSee also: :class:`.MiniscopeConfig`",
   "type": "object",
   "properties": {}
}

pydantic model miniscope_io.models.MiniscopeConfig#

Root model for all configuration models, eg. those that are effectively static at runtime.

Note

Not named Config or BaseConfig because those are both in use already.

See also: Container

Show JSON schema
{
   "title": "MiniscopeConfig",
   "description": "Root model for all configuration models,\neg. those that are effectively static at runtime.\n\n.. note::\n    Not named ``Config`` or ``BaseConfig`` because those are both\n    in use already.\n\nSee also: :class:`.Container`",
   "type": "object",
   "properties": {}
}

pydantic model miniscope_io.models.MiniscopeIOModel#

Root model for all miniscope_io models

Show JSON schema
{
   "title": "MiniscopeIOModel",
   "description": "Root model for all miniscope_io models",
   "type": "object",
   "properties": {}
}