Coverage for /opt/conda/envs/apienv/lib/python3.10/site-packages/daiquiri/core/hardware/abstract/tomoimaging.py: 0%
21 statements
« prev ^ index » next coverage.py v7.6.4, created at 2024-11-14 02:13 +0000
« prev ^ index » next coverage.py v7.6.4, created at 2024-11-14 02:13 +0000
1#!/usr/bin/env python
2# -*- coding: utf-8 -*-
3from marshmallow import fields
5from daiquiri.core.hardware.abstract import HardwareObject
6from daiquiri.core.schema.hardware import HardwareSchema
7from daiquiri.core.schema.validators import RequireEmpty
8from daiquiri.core.schema.validators import OneOf
10import logging
12logger = logging.getLogger(__name__)
14TomoImagingStatues = ["READY", "BLOCKED", "ACQUIRING", "UNKNOWN"]
17class _PropertiesSchema(HardwareSchema):
18 state = OneOf(TomoImagingStatues, metadata={"readOnly": True})
19 update_on_move = fields.Bool()
20 exposure_time = fields.Number()
21 settle_time = fields.Number()
24class _CallablesSchema(HardwareSchema):
25 take_proj = RequireEmpty()
26 take_dark = RequireEmpty()
27 take_flat = RequireEmpty()
30class TomoImaging(HardwareObject):
31 _type = "tomoimaging"
32 _properties = _PropertiesSchema()
33 _callables = _CallablesSchema()