tomato package
- tomato.set_loglevel(loglevel: int)
- tomato.parse_args(parser, verbose, is_tomato=False)
- tomato.run_tomato()
- tomato.run_ketchup()
- tomato.run_passata()
Subpackages
- tomato.daemon package
- tomato.daemon: module of functions comprising the tomato daemon
setup_logging()tomato_daemon()- Submodules
- tomato.daemon.cmd: command parsing for tomato daemon
merge_pipelines()status()stop()setup()pipeline()set_job()get_jobs()driver()device()component()RepositoryObject()Profile()to_rocrate()- tomato.daemon.driver: the driver manager of tomato daemon
tomato_driver_bootstrap()perform_idle_measurements()kill_tomato_driver()tomato_driver()spawn_tomato_driver()stop_tomato_driver()manager()- tomato.daemon.io: functions for storing and loading data
store()load()merge_netcdfs()data_to_pickle()- tomato.daemon.job: the job manager of tomato daemon
method_validate()find_matching_pipelines()kill_tomato_job()manage_running_pips()check_queued_jobs()action_queued_jobs()manager()tomato_job()job_thread()job_main_loop()- tomato.daemon.jobdb: the sqlite database for jobs in tomato
connect_jobdb()jobdb_setup()insert_job()update_job_id()get_job_id()get_jobs_where()comm()
- tomato.driverinterface_2_0 package
- DriverInterface-2.0
in_devmap()to_reply()log_errors()AttrModelInterfaceModelInterface.versionModelInterface.idle_measurement_intervalModelInterface.devmapModelInterface.constantsModelInterface.settingsModelInterface.DeviceFactory()ModelInterface.cmp_register()ModelInterface.cmp_teardown()ModelInterface.cmp_reset()ModelInterface.cmp_set_attr()ModelInterface.cmp_get_attr()ModelInterface.cmp_status()ModelInterface.cmp_capabilities()ModelInterface.cmp_attrs()ModelInterface.cmp_constants()ModelInterface.cmp_last_data()ModelInterface.cmp_measure()ModelInterface.task_start()ModelInterface.task_status()ModelInterface.task_stop()ModelInterface.task_data()ModelInterface.task_validate()ModelInterface.status()ModelInterface.reset()
ModelDeviceModelDevice.driverModelDevice.keyModelDevice.task_listModelDevice.threadModelDevice.dataModelDevice.last_dataModelDevice.runningModelDevice.datalockModelDevice.constantsModelDevice.run()ModelDevice.measure()ModelDevice.task_runner()ModelDevice.meas_runner()ModelDevice.prepare_task()ModelDevice.do_task()ModelDevice.do_measure()ModelDevice.stop_task()ModelDevice.set_attr()ModelDevice.get_attr()ModelDevice.get_data()ModelDevice.get_last_data()ModelDevice.attrs()ModelDevice.capabilities()ModelDevice.status()ModelDevice.reset()
- tomato.driverinterface_2_1 package
- DriverInterface-2.1
AttrModelInterfaceModelInterface.versionModelInterface.idle_measurement_intervalModelInterface.devmapModelInterface.constantsModelInterface.settingsModelInterface.retriesModelInterface.DeviceFactory()ModelInterface.cmp_register()ModelInterface.cmp_teardown()ModelInterface.cmp_reset()ModelInterface.cmp_set_attr()ModelInterface.cmp_get_attr()ModelInterface.cmp_status()ModelInterface.cmp_capabilities()ModelInterface.cmp_attrs()ModelInterface.cmp_constants()ModelInterface.cmp_last_data()ModelInterface.cmp_measure()ModelInterface.task_start()ModelInterface.task_status()ModelInterface.task_stop()ModelInterface.task_data()ModelInterface.task_validate()ModelInterface.status()ModelInterface.reset()
ModelDeviceModelDevice.driverModelDevice.keyModelDevice.task_listModelDevice.threadModelDevice.dataModelDevice.last_dataModelDevice.runningModelDevice.datalockModelDevice.constantsModelDevice.task_runner()ModelDevice.prepare_task()ModelDevice.do_task()ModelDevice.do_measure()ModelDevice.stop_task()ModelDevice.set_attr()ModelDevice.get_attr()ModelDevice.get_data()ModelDevice.get_last_data()ModelDevice.attrs()ModelDevice.capabilities()ModelDevice.status()ModelDevice.reset()
- Submodules
- tomato.ketchup package
- tomato.passata package
- tomato.tomato package
Submodules
tomato.drivers: Shim interfacing with tomato driver packages
Code author: Peter Kraus
- tomato.drivers.driver_to_interface(drivername: str) None | ModelInterface
tomato.models: Pydantic models for internal tomato use
Code author: Peter Kraus
- pydantic model tomato.models.Task
Bases:
BaseModelThe
Taskis a driver/device-independent abstraction describing the measurement steps. The driver-specific information for theTaskcan be provided via thetechnique_nameandtask_paramsparameters.Show JSON schema
{ "title": "Task", "description": "The :class:`Task` is a driver/device-independent abstraction describing the\nmeasurement steps. The driver-specific information for the :class:`Task` can be\nprovided via the :obj:`technique_name` and :obj:`task_params` parameters.", "type": "object", "properties": { "component_role": { "title": "Component Role", "type": "string" }, "max_duration": { "title": "Max Duration", "type": "number" }, "sampling_interval": { "title": "Sampling Interval", "type": "number" }, "polling_interval": { "anyOf": [ { "type": "number" }, { "type": "null" } ], "default": null, "title": "Polling Interval" }, "technique_name": { "title": "Technique Name", "type": "string" }, "task_name": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": null, "title": "Task Name" }, "task_params": { "anyOf": [ { "additionalProperties": true, "type": "object" }, { "type": "null" } ], "title": "Task Params" }, "start_with_task_name": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": null, "title": "Start With Task Name" }, "stop_with_task_name": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": null, "title": "Stop With Task Name" } }, "additionalProperties": false, "required": [ "component_role", "max_duration", "sampling_interval", "technique_name" ] }
- Config:
extra: str = forbid
- Validators:
- field component_role: str [Required]
role of the pipeline component on which this
Taskshould run- Validated by:
- field sampling_interval: float [Required]
the interval between measurements, in seconds
- Validated by:
- field polling_interval: float | None = None
the interval between polling for data by the
tomato-jobprocess, in seconds; defaults to the value in driver settings- Validated by:
- field technique_name: str [Required]
the name of the technique; has to match one of the capabilities of the component on which this
Taskwill be executed- Validated by:
- field task_name: str | None = None
the (optional) name of the current
Task; can be used for triggering otherTaskin parallel to this one viastart_with_task_name- Validated by:
- field task_params: Dict[str, Any] | None [Optional]
a
dictof any additional parameters required to specify the experimental technique; the key-value pairs of thisdictwill be used as attr-val pairs by theset_attr()method of the component executing thisTask- Validated by:
- field start_with_task_name: str | None = None
the
task_nameof theTaskthat thisTaskshould be started in parallel with; when set, thisTaskwill wait for execution until aTaskwith the matchingtask_nameis started- Validated by:
- field stop_with_task_name: str | None = None
the
task_nameof theTaskthat, when started, will stop the execution of thisTask; when set, thisTaskwill execute normally, but if a aTaskwith the matchingtask_nameis started, thisTaskwill be stopped- Validated by:
- validator task_names_cannot_be_same » all fields
- validator convert_str_to_seconds » max_duration, sampling_interval, polling_interval