{ "definitions": { "AindManipulatorAdditionalSettings": { "description": "Additional settings for the manipulator device", "properties": { "spout_axis": { "allOf": [ { "$ref": "#/definitions/Axis" } ], "default": 2, "description": "Spout axis" } }, "title": "AindManipulatorAdditionalSettings", "type": "object" }, "AindManipulatorCalibration": { "description": "Aind manipulator calibration class", "properties": { "device_name": { "default": "AindManipulator", "description": "Must match a device name in rig/instrument", "title": "Device name", "type": "string" }, "input": { "allOf": [ { "$ref": "#/definitions/AindManipulatorCalibrationInput" } ], "title": "Input of the calibration" }, "output": { "allOf": [ { "$ref": "#/definitions/AindManipulatorCalibrationOutput" } ], "title": "Output of the calibration." }, "date": { "default": null, "oneOf": [ { "format": "date-time", "type": "string" }, { "type": "null" } ], "title": "Date" }, "description": { "const": "Calibration of the load cells system", "default": "Calibration of the load cells system", "title": "Description", "type": "string" }, "notes": { "default": null, "oneOf": [ { "type": "string" }, { "type": "null" } ], "title": "Notes" } }, "required": [ "input", "output" ], "title": "AindManipulatorCalibration", "type": "object" }, "AindManipulatorCalibrationInput": { "properties": { "full_step_to_mm": { "allOf": [ { "$ref": "#/definitions/ManipulatorPosition" } ], "default": { "x": 0.01, "y1": 0.01, "y2": 0.01, "z": 0.01 }, "title": "Full step to mm. Used to convert steps to SI Units" }, "axis_configuration": { "default": [ { "axis": 2, "step_acceleration_interval": 100, "step_interval": 100, "microstep_resolution": 0, "maximum_step_interval": 2000, "motor_operation_mode": 0, "max_limit": 25.0, "min_limit": -0.01 }, { "axis": 3, "step_acceleration_interval": 100, "step_interval": 100, "microstep_resolution": 0, "maximum_step_interval": 2000, "motor_operation_mode": 0, "max_limit": 25.0, "min_limit": -0.01 }, { "axis": 1, "step_acceleration_interval": 100, "step_interval": 100, "microstep_resolution": 0, "maximum_step_interval": 2000, "motor_operation_mode": 0, "max_limit": 25.0, "min_limit": -0.01 }, { "axis": 4, "step_acceleration_interval": 100, "step_interval": 100, "microstep_resolution": 0, "maximum_step_interval": 2000, "motor_operation_mode": 0, "max_limit": 25.0, "min_limit": -0.01 } ], "items": { "$ref": "#/definitions/AxisConfiguration" }, "title": "Axes configuration. Only the axes that are configured will be enabled.", "type": "array" }, "homing_order": { "default": [ 2, 3, 1, 4 ], "items": { "$ref": "#/definitions/Axis" }, "title": "Homing order", "type": "array" }, "initial_position": { "allOf": [ { "$ref": "#/definitions/ManipulatorPosition" } ], "default": { "x": 0.0, "y1": 0.0, "y2": 0.0, "z": 0.0 } } }, "title": "AindManipulatorCalibrationInput", "type": "object" }, "AindManipulatorCalibrationOutput": { "properties": {}, "title": "AindManipulatorCalibrationOutput", "type": "object" }, "AindManipulatorDevice": { "description": "Overrides the default settings for the manipulator device by spec'ing additional_settings field", "properties": { "device_type": { "const": "stepperdriver", "default": "stepperdriver", "title": "Device Type", "type": "string" }, "additional_settings": { "allOf": [ { "$ref": "#/definitions/AindManipulatorAdditionalSettings" } ], "default": { "spout_axis": 2 }, "description": "Additional settings" }, "calibration": { "default": null, "oneOf": [ { "$ref": "#/definitions/AindManipulatorCalibration" }, { "type": "null" } ], "title": "Calibration of the manipulator" }, "who_am_i": { "const": 1130, "default": 1130, "title": "Who Am I", "type": "integer" }, "serial_number": { "default": null, "description": "Device serial number", "oneOf": [ { "type": "string" }, { "type": "null" } ], "title": "Serial Number" }, "port_name": { "description": "Device port name", "title": "Port Name", "type": "string" } }, "required": [ "port_name" ], "title": "AindManipulatorDevice", "type": "object" }, "Axis": { "description": "Motor axis available", "enum": [ 0, 1, 2, 3, 4 ], "title": "Axis", "type": "integer", "x-enumNames": [ "None", "X", "Y1", "Y2", "Z" ] }, "AxisConfiguration": { "description": "Axis configuration", "properties": { "axis": { "allOf": [ { "$ref": "#/definitions/Axis" } ], "title": "Axis to be configured" }, "step_acceleration_interval": { "default": 100, "description": "Acceleration of the step interval in microseconds", "maximum": 2000, "minimum": 2, "title": "Acceleration", "type": "integer" }, "step_interval": { "default": 100, "description": "Step interval in microseconds.", "maximum": 20000, "minimum": 100, "title": "Step interval", "type": "integer" }, "microstep_resolution": { "allOf": [ { "$ref": "#/definitions/MicrostepResolution" } ], "default": 0, "title": "Microstep resolution" }, "maximum_step_interval": { "default": 2000, "maximum": 20000, "minimum": 100, "title": "Configures the time between step motor pulses (us) used when starting or stopping a movement", "type": "integer" }, "motor_operation_mode": { "allOf": [ { "$ref": "#/definitions/MotorOperationMode" } ], "default": 0, "title": "Motor operation mode" }, "max_limit": { "default": 25, "title": "Maximum limit in SI units. A value of 0 disables this limit.", "type": "number" }, "min_limit": { "default": -0.01, "title": "Minimum limit in SI units. A value of 0 disables this limit.", "type": "number" } }, "required": [ "axis" ], "title": "AxisConfiguration", "type": "object" }, "BaseModel": { "properties": {}, "title": "BaseModel", "type": "object" }, "CameraController_SpinnakerCamera_": { "properties": { "device_type": { "const": "CameraController", "default": "CameraController", "title": "Device Type", "type": "string" }, "additional_settings": { "default": null, "description": "Additional settings", "oneOf": [ { "$ref": "#/definitions/BaseModel" }, { "type": "null" } ] }, "calibration": { "default": null, "description": "Calibration", "oneOf": [ { "$ref": "#/definitions/BaseModel" }, { "type": "null" } ] }, "cameras": { "additionalProperties": { "$ref": "#/definitions/SpinnakerCamera" }, "description": "Cameras to be instantiated", "title": "Cameras", "type": "object" }, "frame_rate": { "default": 30, "description": "Frame rate of the trigger to all cameras", "oneOf": [ { "minimum": 0, "type": "integer" }, { "type": "null" } ], "title": "Frame Rate" } }, "required": [ "cameras" ], "title": "CameraController[SpinnakerCamera]", "type": "object" }, "CameraController_WebCamera_": { "properties": { "device_type": { "const": "CameraController", "default": "CameraController", "title": "Device Type", "type": "string" }, "additional_settings": { "default": null, "description": "Additional settings", "oneOf": [ { "$ref": "#/definitions/BaseModel" }, { "type": "null" } ] }, "calibration": { "default": null, "description": "Calibration", "oneOf": [ { "$ref": "#/definitions/BaseModel" }, { "type": "null" } ] }, "cameras": { "additionalProperties": { "$ref": "#/definitions/WebCamera" }, "description": "Cameras to be instantiated", "title": "Cameras", "type": "object" }, "frame_rate": { "default": 30, "description": "Frame rate of the trigger to all cameras", "oneOf": [ { "minimum": 0, "type": "integer" }, { "type": "null" } ], "title": "Frame Rate" } }, "required": [ "cameras" ], "title": "CameraController[WebCamera]", "type": "object" }, "HarpAnalogInput": { "properties": { "device_type": { "const": "analoginput", "default": "analoginput", "title": "Device Type", "type": "string" }, "additional_settings": { "default": null, "description": "Additional settings", "oneOf": [ { "$ref": "#/definitions/BaseModel" }, { "type": "null" } ] }, "calibration": { "default": null, "description": "Calibration", "oneOf": [ { "$ref": "#/definitions/BaseModel" }, { "type": "null" } ] }, "who_am_i": { "const": 1236, "default": 1236, "title": "Who Am I", "type": "integer" }, "serial_number": { "default": null, "description": "Device serial number", "oneOf": [ { "type": "string" }, { "type": "null" } ], "title": "Serial Number" }, "port_name": { "description": "Device port name", "title": "Port Name", "type": "string" } }, "required": [ "port_name" ], "title": "HarpAnalogInput", "type": "object" }, "HarpBehavior": { "properties": { "device_type": { "const": "behavior", "default": "behavior", "title": "Device Type", "type": "string" }, "additional_settings": { "default": null, "description": "Additional settings", "oneOf": [ { "$ref": "#/definitions/BaseModel" }, { "type": "null" } ] }, "calibration": { "default": null, "description": "Calibration", "oneOf": [ { "$ref": "#/definitions/BaseModel" }, { "type": "null" } ] }, "who_am_i": { "const": 1216, "default": 1216, "title": "Who Am I", "type": "integer" }, "serial_number": { "default": null, "description": "Device serial number", "oneOf": [ { "type": "string" }, { "type": "null" } ], "title": "Serial Number" }, "port_name": { "description": "Device port name", "title": "Port Name", "type": "string" } }, "required": [ "port_name" ], "title": "HarpBehavior", "type": "object" }, "HarpClockGenerator": { "properties": { "device_type": { "const": "clockgenerator", "default": "clockgenerator", "title": "Device Type", "type": "string" }, "additional_settings": { "default": null, "description": "Additional settings", "oneOf": [ { "$ref": "#/definitions/BaseModel" }, { "type": "null" } ] }, "calibration": { "default": null, "description": "Calibration", "oneOf": [ { "$ref": "#/definitions/BaseModel" }, { "type": "null" } ] }, "who_am_i": { "const": 1158, "default": 1158, "title": "Who Am I", "type": "integer" }, "serial_number": { "default": null, "description": "Device serial number", "oneOf": [ { "type": "string" }, { "type": "null" } ], "title": "Serial Number" }, "port_name": { "description": "Device port name", "title": "Port Name", "type": "string" } }, "required": [ "port_name" ], "title": "HarpClockGenerator", "type": "object" }, "HarpLickometer": { "properties": { "device_type": { "const": "lickometer", "default": "lickometer", "title": "Device Type", "type": "string" }, "additional_settings": { "default": null, "description": "Additional settings", "oneOf": [ { "$ref": "#/definitions/BaseModel" }, { "type": "null" } ] }, "calibration": { "default": null, "description": "Calibration", "oneOf": [ { "$ref": "#/definitions/BaseModel" }, { "type": "null" } ] }, "who_am_i": { "const": 1400, "default": 1400, "title": "Who Am I", "type": "integer" }, "serial_number": { "default": null, "description": "Device serial number", "oneOf": [ { "type": "string" }, { "type": "null" } ], "title": "Serial Number" }, "port_name": { "description": "Device port name", "title": "Port Name", "type": "string" } }, "required": [ "port_name" ], "title": "HarpLickometer", "type": "object" }, "HarpOlfactometer": { "description": "Overrides the default settings for the olfactometer calibration", "properties": { "device_type": { "const": "olfactometer", "default": "olfactometer", "title": "Device Type", "type": "string" }, "additional_settings": { "default": null, "description": "Additional settings", "oneOf": [ { "$ref": "#/definitions/BaseModel" }, { "type": "null" } ] }, "calibration": { "default": null, "description": "Olfactometer calibration", "oneOf": [ { "$ref": "#/definitions/OlfactometerCalibration" }, { "type": "null" } ] }, "who_am_i": { "const": 1140, "default": 1140, "title": "Who Am I", "type": "integer" }, "serial_number": { "default": null, "description": "Device serial number", "oneOf": [ { "type": "string" }, { "type": "null" } ], "title": "Serial Number" }, "port_name": { "description": "Device port name", "title": "Port Name", "type": "string" } }, "required": [ "port_name" ], "title": "HarpOlfactometer", "type": "object" }, "HarpSniffDetector": { "properties": { "device_type": { "const": "sniffdetector", "default": "sniffdetector", "title": "Device Type", "type": "string" }, "additional_settings": { "default": null, "description": "Additional settings", "oneOf": [ { "$ref": "#/definitions/BaseModel" }, { "type": "null" } ] }, "calibration": { "default": null, "description": "Calibration", "oneOf": [ { "$ref": "#/definitions/BaseModel" }, { "type": "null" } ] }, "who_am_i": { "const": 1401, "default": 1401, "title": "Who Am I", "type": "integer" }, "serial_number": { "default": null, "description": "Device serial number", "oneOf": [ { "type": "string" }, { "type": "null" } ], "title": "Serial Number" }, "port_name": { "description": "Device port name", "title": "Port Name", "type": "string" } }, "required": [ "port_name" ], "title": "HarpSniffDetector", "type": "object" }, "HarpTreadmill": { "description": "Overrides the default settings for the treadmill calibration", "properties": { "device_type": { "const": "treadmill", "default": "treadmill", "title": "Device Type", "type": "string" }, "additional_settings": { "default": null, "description": "Additional settings", "oneOf": [ { "$ref": "#/definitions/BaseModel" }, { "type": "null" } ] }, "calibration": { "allOf": [ { "$ref": "#/definitions/Treadmill" } ], "default": { "wheel_diameter": 15.0, "pulses_per_revolution": 28800, "invert_direction": false, "brake_lookup_calibration": [ [ 0.0, 0.0 ], [ 1.0, 65535.0 ] ] }, "description": "Treadmill calibration settings" }, "who_am_i": { "const": 1402, "default": 1402, "title": "Who Am I", "type": "integer" }, "serial_number": { "default": null, "description": "Device serial number", "oneOf": [ { "type": "string" }, { "type": "null" } ], "title": "Serial Number" }, "port_name": { "description": "Device port name", "title": "Port Name", "type": "string" } }, "required": [ "port_name" ], "title": "HarpTreadmill", "type": "object" }, "ManipulatorPosition": { "properties": { "x": { "title": "X coordinate", "type": "number" }, "y1": { "title": "Y1 coordinate", "type": "number" }, "y2": { "title": "Y2 coordinate", "type": "number" }, "z": { "title": "Z coordinate", "type": "number" } }, "required": [ "x", "y1", "y2", "z" ], "title": "ManipulatorPosition", "type": "object" }, "Measurement": { "description": "Input for water valve calibration class", "properties": { "valve_open_interval": { "description": "Time between two consecutive valve openings (s)", "exclusiveMinimum": 0.0, "title": "Valve open interval", "type": "number" }, "valve_open_time": { "description": "Valve open interval (s)", "exclusiveMinimum": 0.0, "title": "Valve open time", "type": "number" }, "water_weight": { "description": "Weight of water delivered (g)", "items": { "exclusiveMinimum": 0.0, "type": "number" }, "minItems": 1, "title": "Water weight", "type": "array" }, "repeat_count": { "description": "Number of times the valve opened.", "minimum": 0, "title": "Repeat count", "type": "integer" } }, "required": [ "valve_open_interval", "valve_open_time", "water_weight", "repeat_count" ], "title": "Measurement", "type": "object" }, "MicrostepResolution": { "enum": [ 0, 1, 2, 3 ], "title": "MicrostepResolution", "type": "integer", "x-enumNames": [ "Microstep8", "Microstep16", "Microstep32", "Microstep64" ] }, "MotorOperationMode": { "enum": [ 0, 1 ], "title": "MotorOperationMode", "type": "integer", "x-enumNames": [ "Quiet", "Dynamic" ] }, "OlfactometerCalibration": { "description": "Olfactometer calibration class", "properties": { "device_name": { "default": "Olfactometer", "description": "Name of the device being calibrated", "title": "Device name", "type": "string" }, "input": { "allOf": [ { "$ref": "#/definitions/OlfactometerCalibrationInput" } ], "title": "Input of the calibration" }, "output": { "allOf": [ { "$ref": "#/definitions/OlfactometerCalibrationOutput" } ], "title": "Output of the calibration" }, "date": { "default": null, "oneOf": [ { "format": "date-time", "type": "string" }, { "type": "null" } ], "title": "Date" }, "description": { "const": "Calibration of the harp olfactometer device", "default": "Calibration of the harp olfactometer device", "title": "Description", "type": "string" }, "notes": { "default": null, "oneOf": [ { "type": "string" }, { "type": "null" } ], "title": "Notes" } }, "required": [ "input", "output" ], "title": "OlfactometerCalibration", "type": "object" }, "OlfactometerCalibrationInput": { "properties": { "channel_config": { "additionalProperties": { "$ref": "#/definitions/OlfactometerChannelConfig" }, "default": {}, "description": "Configuration of olfactometer channels", "title": "Channel Config", "type": "object" } }, "title": "OlfactometerCalibrationInput", "type": "object" }, "OlfactometerCalibrationOutput": { "properties": {}, "title": "OlfactometerCalibrationOutput", "type": "object" }, "OlfactometerChannelConfig": { "properties": { "channel_index": { "title": "Channel index", "type": "integer" }, "channel_type": { "allOf": [ { "$ref": "#/definitions/OlfactometerChannelType" } ], "default": "Odor", "title": "Channel type" }, "flow_rate_capacity": { "default": 100, "enum": [ 100, 1000 ], "title": "Flow capacity. mL/min", "type": "integer" }, "flow_rate": { "default": 100, "maximum": 100.0, "title": "Target flow rate. mL/min. If channel_type == CARRIER, this value is ignored.", "type": "number" }, "odorant": { "default": null, "oneOf": [ { "type": "string" }, { "type": "null" } ], "title": "Odorant name" }, "odorant_dilution": { "default": null, "oneOf": [ { "type": "number" }, { "type": "null" } ], "title": "Odorant dilution (%v/v)" } }, "required": [ "channel_index" ], "title": "OlfactometerChannelConfig", "type": "object" }, "OlfactometerChannelType": { "description": "Channel type", "enum": [ "Odor", "Carrier" ], "title": "OlfactometerChannelType", "type": "string" }, "RigCalibration": { "description": "Container class for calibration models. In a future release these will be moved to the respective devices", "properties": { "water_valve": { "allOf": [ { "$ref": "#/definitions/WaterValveCalibration" } ], "description": "Water valve calibration" } }, "required": [ "water_valve" ], "title": "RigCalibration", "type": "object" }, "Screen": { "properties": { "device_type": { "const": "Screen", "default": "Screen", "description": "Device type", "title": "Device Type", "type": "string" }, "additional_settings": { "default": null, "description": "Additional settings", "oneOf": [ { "$ref": "#/definitions/BaseModel" }, { "type": "null" } ] }, "calibration": { "default": null, "description": "Calibration", "oneOf": [ { "$ref": "#/definitions/BaseModel" }, { "type": "null" } ] }, "display_index": { "default": 1, "description": "Display index", "title": "Display Index", "type": "integer" }, "target_render_frequency": { "default": 60, "description": "Target render frequency", "title": "Target Render Frequency", "type": "number" }, "target_update_frequency": { "default": 120, "description": "Target update frequency", "title": "Target Update Frequency", "type": "number" }, "calibration_directory": { "default": "Calibration\\Monitors\\", "description": "Calibration directory", "title": "Calibration Directory", "type": "string" }, "texture_assets_directory": { "default": "Textures", "description": "Calibration directory", "title": "Texture Assets Directory", "type": "string" }, "brightness": { "default": 0, "description": "Brightness", "maximum": 1.0, "minimum": -1.0, "title": "Brightness", "type": "number" }, "contrast": { "default": 1, "description": "Contrast", "maximum": 1.0, "minimum": -1.0, "title": "Contrast", "type": "number" } }, "title": "Screen", "type": "object" }, "SpinnakerCamera": { "properties": { "device_type": { "const": "SpinnakerCamera", "default": "SpinnakerCamera", "description": "Device type", "title": "Device Type", "type": "string" }, "additional_settings": { "default": null, "description": "Additional settings", "oneOf": [ { "$ref": "#/definitions/BaseModel" }, { "type": "null" } ] }, "calibration": { "default": null, "description": "Calibration", "oneOf": [ { "$ref": "#/definitions/BaseModel" }, { "type": "null" } ] }, "serial_number": { "description": "Camera serial number", "title": "Serial Number", "type": "string" }, "binning": { "default": 1, "description": "Binning", "minimum": 1, "title": "Binning", "type": "integer" }, "color_processing": { "default": "Default", "description": "Color processing", "enum": [ "Default", "NoColorProcessing" ], "title": "Color Processing", "type": "string" }, "exposure": { "default": 1000, "description": "Exposure time", "minimum": 100, "title": "Exposure", "type": "integer" }, "gain": { "default": 0, "description": "Gain", "minimum": 0.0, "title": "Gain", "type": "number" }, "video_writer": { "default": null, "description": "Video writer. If not provided, no video will be saved.", "oneOf": [ { "$ref": "#/definitions/VideoWriter" }, { "type": "null" } ] } }, "required": [ "serial_number" ], "title": "SpinnakerCamera", "type": "object" }, "Treadmill": { "description": "Overrides the default settings for the treadmill calibration by spec'ing brake_lookup_calibration field", "properties": { "wheel_diameter": { "default": 15, "description": "Wheel diameter", "minimum": 0.0, "title": "Wheel Diameter", "type": "number" }, "pulses_per_revolution": { "default": 28800, "description": "Pulses per revolution", "minimum": 1, "title": "Pulses Per Revolution", "type": "integer" }, "invert_direction": { "default": false, "description": "Invert direction", "title": "Invert Direction", "type": "boolean" }, "brake_lookup_calibration": { "default": [ [ 0, 0 ], [ 1, 65535 ] ], "description": "Brake lookup calibration. Each Tuple is (0-1 (percent), 0-full-scale). Values are linearly interpolated", "items": { "description": "A tuple of two values", "items": { "type": "number" }, "maxItems": 2, "minItems": 2, "type": "array" }, "minItems": 2, "title": "Brake Lookup Calibration", "type": "array" } }, "title": "Treadmill", "type": "object" }, "VideoWriter": { "discriminator": { "mapping": { "FFMPEG": "#/definitions/VideoWriterFfmpeg", "OPENCV": "#/definitions/VideoWriterOpenCv" }, "propertyName": "video_writer_type" }, "oneOf": [ { "$ref": "#/definitions/VideoWriterFfmpeg" }, { "$ref": "#/definitions/VideoWriterOpenCv" } ], "title": "VideoWriter" }, "VideoWriterFfmpeg": { "properties": { "video_writer_type": { "const": "FFMPEG", "default": "FFMPEG", "title": "Video Writer Type", "type": "string" }, "frame_rate": { "default": 30, "description": "Encoding frame rate", "minimum": 0, "title": "Frame Rate", "type": "integer" }, "container_extension": { "default": "mp4", "description": "Container extension", "title": "Container Extension", "type": "string" }, "output_arguments": { "default": "-c:v hevc_nvenc -pix_fmt x2rgb10le -color_range full -tune hq -preset p3 -rc vbr -cq 16 -rc-lookahead 56 -temporal-aq 1 -qmin 0 -qmax 10", "description": "Output arguments", "title": "Output Arguments", "type": "string" } }, "title": "VideoWriterFfmpeg", "type": "object" }, "VideoWriterOpenCv": { "properties": { "video_writer_type": { "const": "OPENCV", "default": "OPENCV", "title": "Video Writer Type", "type": "string" }, "frame_rate": { "default": 30, "description": "Encoding frame rate", "minimum": 0, "title": "Frame Rate", "type": "integer" }, "container_extension": { "default": "avi", "description": "Container extension", "title": "Container Extension", "type": "string" }, "four_cc": { "default": "FMP4", "description": "Four character code", "title": "Four Cc", "type": "string" } }, "title": "VideoWriterOpenCv", "type": "object" }, "WaterValveCalibration": { "description": "Water valve calibration class", "properties": { "device_name": { "default": "WaterValve", "description": "Name of the device being calibrated", "title": "Device name", "type": "string" }, "input": { "allOf": [ { "$ref": "#/definitions/WaterValveCalibrationInput" } ], "title": "Input of the calibration" }, "output": { "allOf": [ { "$ref": "#/definitions/WaterValveCalibrationOutput" } ], "title": "Output of the calibration." }, "date": { "default": null, "oneOf": [ { "format": "date-time", "type": "string" }, { "type": "null" } ], "title": "Date" }, "description": { "const": "Calibration of the water valve delivery system", "default": "Calibration of the water valve delivery system", "title": "Description", "type": "string" }, "notes": { "default": null, "oneOf": [ { "type": "string" }, { "type": "null" } ], "title": "Notes" } }, "required": [ "input", "output" ], "title": "WaterValveCalibration", "type": "object" }, "WaterValveCalibrationInput": { "properties": { "measurements": { "default": [], "description": "List of measurements", "items": { "$ref": "#/definitions/Measurement" }, "title": "Measurements", "type": "array" } }, "title": "WaterValveCalibrationInput", "type": "object" }, "WaterValveCalibrationOutput": { "description": "Output for water valve calibration class", "properties": { "interval_average": { "default": null, "description": "Dictionary keyed by measured valve interval and corresponding average single event volume.", "oneOf": [ { "additionalProperties": { "exclusiveMinimum": 0.0, "type": "number" }, "type": "object" }, { "type": "null" } ], "title": "Interval average" }, "slope": { "description": "Slope of the linear regression : Volume(g) = Slope(g/s) * time(s) + offset(g)", "title": "Regression slope", "type": "number" }, "offset": { "description": "Offset of the linear regression : Volume(g) = Slope(g/s) * time(s) + offset(g)", "title": "Regression offset", "type": "number" }, "r2": { "default": null, "description": "R2 metric from the linear model.", "oneOf": [ { "maximum": 1.0, "minimum": 0.0, "type": "number" }, { "type": "null" } ], "title": "R2" }, "valid_domain": { "default": null, "description": "The optional time-intervals the calibration curve was calculated on.", "oneOf": [ { "items": { "exclusiveMinimum": 0.0, "type": "number" }, "minItems": 2, "type": "array" }, { "type": "null" } ], "title": "Valid domain" } }, "required": [ "slope", "offset" ], "title": "WaterValveCalibrationOutput", "type": "object" }, "WebCamera": { "properties": { "device_type": { "const": "WebCamera", "default": "WebCamera", "description": "Device type", "title": "Device Type", "type": "string" }, "additional_settings": { "default": null, "description": "Additional settings", "oneOf": [ { "$ref": "#/definitions/BaseModel" }, { "type": "null" } ] }, "calibration": { "default": null, "description": "Calibration", "oneOf": [ { "$ref": "#/definitions/BaseModel" }, { "type": "null" } ] }, "index": { "default": 0, "description": "Camera index", "minimum": 0, "title": "Index", "type": "integer" }, "video_writer": { "default": null, "description": "Video writer. If not provided, no video will be saved.", "oneOf": [ { "$ref": "#/definitions/VideoWriter" }, { "type": "null" } ] } }, "title": "WebCamera", "type": "object" } }, "properties": { "version": { "const": "0.3.0", "default": "0.3.0", "title": "Version", "type": "string" }, "computer_name": { "description": "Computer name", "title": "Computer Name", "type": "string" }, "rig_name": { "description": "Rig name", "title": "Rig Name", "type": "string" }, "triggered_camera_controller": { "allOf": [ { "$ref": "#/definitions/CameraController_SpinnakerCamera_" } ], "description": "Required camera controller to triggered cameras." }, "monitoring_camera_controller": { "default": null, "description": "Optional camera controller for monitoring cameras.", "oneOf": [ { "$ref": "#/definitions/CameraController_WebCamera_" }, { "type": "null" } ] }, "harp_behavior": { "allOf": [ { "$ref": "#/definitions/HarpBehavior" } ], "description": "Harp behavior" }, "harp_olfactometer": { "allOf": [ { "$ref": "#/definitions/HarpOlfactometer" } ], "description": "Harp olfactometer" }, "harp_lickometer": { "allOf": [ { "$ref": "#/definitions/HarpLickometer" } ], "description": "Harp lickometer" }, "harp_clock_generator": { "allOf": [ { "$ref": "#/definitions/HarpClockGenerator" } ], "description": "Harp clock generator" }, "harp_clock_repeaters": { "default": [], "description": "Harp clock repeaters", "items": { "$ref": "#/definitions/HarpClockGenerator" }, "title": "Harp Clock Repeaters", "type": "array" }, "harp_analog_input": { "default": null, "description": "Harp analog input", "oneOf": [ { "$ref": "#/definitions/HarpAnalogInput" }, { "type": "null" } ] }, "harp_treadmill": { "allOf": [ { "$ref": "#/definitions/HarpTreadmill" } ], "description": "Harp treadmill" }, "harp_sniff_detector": { "default": null, "description": "Sniff detector settings", "oneOf": [ { "$ref": "#/definitions/HarpSniffDetector" }, { "type": "null" } ] }, "manipulator": { "allOf": [ { "$ref": "#/definitions/AindManipulatorDevice" } ], "description": "Manipulator" }, "screen": { "allOf": [ { "$ref": "#/definitions/Screen" } ], "default": { "device_type": "Screen", "additional_settings": null, "calibration": null, "display_index": 1, "target_render_frequency": 60.0, "target_update_frequency": 120.0, "calibration_directory": "Calibration\\Monitors\\", "texture_assets_directory": "Textures", "brightness": 0.0, "contrast": 1.0 }, "description": "Screen settings" }, "calibration": { "allOf": [ { "$ref": "#/definitions/RigCalibration" } ], "description": "Calibration models" } }, "required": [ "rig_name", "triggered_camera_controller", "harp_behavior", "harp_olfactometer", "harp_lickometer", "harp_clock_generator", "harp_treadmill", "manipulator", "calibration" ], "title": "AindVrForagingRig", "type": "object" }