karabo 2.20.7__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- karabo/__init__.py +39 -0
- karabo/_version.py +4 -0
- karabo/bound.py +90 -0
- karabo/bound_tool.py +125 -0
- karabo/common/__init__.py +15 -0
- karabo/common/alarm_conditions.py +120 -0
- karabo/common/api.py +72 -0
- karabo/common/const.py +369 -0
- karabo/common/decorators.py +95 -0
- karabo/common/display_types.py +31 -0
- karabo/common/enums.py +53 -0
- karabo/common/module.py +37 -0
- karabo/common/packaging/__init__.py +15 -0
- karabo/common/packaging/tests/__init__.py +15 -0
- karabo/common/packaging/tests/test_utils.py +33 -0
- karabo/common/packaging/utils.py +48 -0
- karabo/common/project/__init__.py +15 -0
- karabo/common/project/api.py +32 -0
- karabo/common/project/bases.py +66 -0
- karabo/common/project/cache.py +145 -0
- karabo/common/project/const.py +27 -0
- karabo/common/project/device.py +185 -0
- karabo/common/project/device_config.py +35 -0
- karabo/common/project/lazy.py +74 -0
- karabo/common/project/macro.py +64 -0
- karabo/common/project/model.py +42 -0
- karabo/common/project/server.py +110 -0
- karabo/common/project/tests/__init__.py +15 -0
- karabo/common/project/tests/test_base.py +47 -0
- karabo/common/project/tests/test_cache.py +31 -0
- karabo/common/project/tests/test_device.py +155 -0
- karabo/common/project/tests/test_macro.py +27 -0
- karabo/common/project/tests/test_model.py +35 -0
- karabo/common/project/tests/test_server.py +234 -0
- karabo/common/project/tests/test_utils.py +246 -0
- karabo/common/project/utils.py +220 -0
- karabo/common/sanity_check.py +200 -0
- karabo/common/savable.py +177 -0
- karabo/common/scenemodel/__init__.py +15 -0
- karabo/common/scenemodel/api.py +79 -0
- karabo/common/scenemodel/bases.py +136 -0
- karabo/common/scenemodel/const.py +107 -0
- karabo/common/scenemodel/exceptions.py +21 -0
- karabo/common/scenemodel/generic_scenes.py +198 -0
- karabo/common/scenemodel/io_utils.py +161 -0
- karabo/common/scenemodel/layouts.py +216 -0
- karabo/common/scenemodel/model.py +192 -0
- karabo/common/scenemodel/modelio.py +57 -0
- karabo/common/scenemodel/registry.py +213 -0
- karabo/common/scenemodel/shapes.py +369 -0
- karabo/common/scenemodel/tests/__init__.py +15 -0
- karabo/common/scenemodel/tests/data/all.svg +234 -0
- karabo/common/scenemodel/tests/data/all2.svg +1 -0
- karabo/common/scenemodel/tests/data/inkscape/all.svg +725 -0
- karabo/common/scenemodel/tests/data/inkscape/drawing.svg +234 -0
- karabo/common/scenemodel/tests/data/inkscape/funny_mix.svg +157 -0
- karabo/common/scenemodel/tests/data/inkscape/shapes.svg +103 -0
- karabo/common/scenemodel/tests/data/legacy/icon-widgets.svg +1 -0
- karabo/common/scenemodel/tests/data/legacy/icon_data/flag.svg +32 -0
- karabo/common/scenemodel/tests/data/version_one_0.svg +76 -0
- karabo/common/scenemodel/tests/data/version_one_1.svg +62 -0
- karabo/common/scenemodel/tests/data/version_one_2.svg +42 -0
- karabo/common/scenemodel/tests/data/version_one_3.svg +12 -0
- karabo/common/scenemodel/tests/data/version_one_4.svg +22 -0
- karabo/common/scenemodel/tests/data/version_one_5.svg +18 -0
- karabo/common/scenemodel/tests/test_data_model_structure.py +95 -0
- karabo/common/scenemodel/tests/test_graph_images.py +105 -0
- karabo/common/scenemodel/tests/test_graph_plots.py +170 -0
- karabo/common/scenemodel/tests/test_io.py +370 -0
- karabo/common/scenemodel/tests/test_registry.py +80 -0
- karabo/common/scenemodel/tests/test_shapes.py +203 -0
- karabo/common/scenemodel/tests/test_widgets_complex.py +194 -0
- karabo/common/scenemodel/tests/test_widgets_icon.py +120 -0
- karabo/common/scenemodel/tests/test_widgets_image.py +72 -0
- karabo/common/scenemodel/tests/test_widgets_links.py +98 -0
- karabo/common/scenemodel/tests/test_widgets_plot.py +82 -0
- karabo/common/scenemodel/tests/test_widgets_simple.py +310 -0
- karabo/common/scenemodel/tests/test_widgets_statefulicon.py +31 -0
- karabo/common/scenemodel/tests/test_widgets_tools.py +27 -0
- karabo/common/scenemodel/tests/test_widgets_vacuum.py +30 -0
- karabo/common/scenemodel/tests/utils.py +57 -0
- karabo/common/scenemodel/widgets/__init__.py +15 -0
- karabo/common/scenemodel/widgets/complex.py +394 -0
- karabo/common/scenemodel/widgets/graph_image.py +213 -0
- karabo/common/scenemodel/widgets/graph_plots.py +451 -0
- karabo/common/scenemodel/widgets/graph_utils.py +304 -0
- karabo/common/scenemodel/widgets/icon.py +232 -0
- karabo/common/scenemodel/widgets/links.py +134 -0
- karabo/common/scenemodel/widgets/plot.py +61 -0
- karabo/common/scenemodel/widgets/simple.py +589 -0
- karabo/common/scenemodel/widgets/statefulicon.py +51 -0
- karabo/common/scenemodel/widgets/tools.py +91 -0
- karabo/common/scenemodel/widgets/vacuum.py +79 -0
- karabo/common/services.py +28 -0
- karabo/common/states.py +310 -0
- karabo/common/tests/__init__.py +15 -0
- karabo/common/tests/test_alarm_condition.py +52 -0
- karabo/common/tests/test_code_quality.py +33 -0
- karabo/common/tests/test_const.py +158 -0
- karabo/common/tests/test_decorators.py +69 -0
- karabo/common/tests/test_macro_sanity_check.py +258 -0
- karabo/common/tests/test_module.py +42 -0
- karabo/common/tests/test_savable.py +137 -0
- karabo/common/tests/test_services.py +20 -0
- karabo/common/tests/test_states.py +239 -0
- karabo/common/tests/test_traits.py +59 -0
- karabo/common/tests/test_util.py +36 -0
- karabo/common/utils.py +107 -0
- karabo/interactive/__init__.py +15 -0
- karabo/interactive/container_monitor.py +78 -0
- karabo/interactive/convert_device_project.py +260 -0
- karabo/interactive/deviceClient.py +747 -0
- karabo/interactive/ideviceclient.py +37 -0
- karabo/interactive/ikarabo.py +35 -0
- karabo/interactive/karabo.py +695 -0
- karabo/interactive/scene2cpp.py +60 -0
- karabo/interactive/scene2python.py +142 -0
- karabo/interactive/startkarabo.py +551 -0
- karabo/interactive/tests/__init__.py +15 -0
- karabo/interactive/tests/test_code_quality.py +27 -0
- karabo/interactive/webaggregatorserver.py +175 -0
- karabo/interactive/webserver.py +403 -0
- karabo/middlelayer/__init__.py +94 -0
- karabo/middlelayer/broker/__init__.py +20 -0
- karabo/middlelayer/broker/amqp_broker.py +600 -0
- karabo/middlelayer/broker/base.py +190 -0
- karabo/middlelayer/broker/compat.py +42 -0
- karabo/middlelayer/broker/jms_broker.py +394 -0
- karabo/middlelayer/broker/openmq.py +442 -0
- karabo/middlelayer/broker/tests/__init__.py +15 -0
- karabo/middlelayer/broker/tests/test_utils.py +77 -0
- karabo/middlelayer/broker/utils.py +68 -0
- karabo/middlelayer/cli/__init__.py +41 -0
- karabo/middlelayer/configuration.py +202 -0
- karabo/middlelayer/conftest.py +52 -0
- karabo/middlelayer/device.py +483 -0
- karabo/middlelayer/device_client.py +1271 -0
- karabo/middlelayer/device_interface.py +207 -0
- karabo/middlelayer/device_server.py +800 -0
- karabo/middlelayer/devicenode.py +112 -0
- karabo/middlelayer/eventloop.py +429 -0
- karabo/middlelayer/heartbeat_mixin.py +184 -0
- karabo/middlelayer/ikarabo.py +168 -0
- karabo/middlelayer/injectable.py +163 -0
- karabo/middlelayer/logger.py +144 -0
- karabo/middlelayer/macro.py +473 -0
- karabo/middlelayer/numeric.py +38 -0
- karabo/middlelayer/output.py +49 -0
- karabo/middlelayer/pipeline.py +1234 -0
- karabo/middlelayer/plugin_loader.py +35 -0
- karabo/middlelayer/proxy.py +641 -0
- karabo/middlelayer/signalslot.py +656 -0
- karabo/middlelayer/synchronization.py +268 -0
- karabo/middlelayer/testing/__init__.py +26 -0
- karabo/middlelayer/testing/device_context.py +87 -0
- karabo/middlelayer/testing/naming.py +53 -0
- karabo/middlelayer/testing/utils.py +162 -0
- karabo/middlelayer/tests/__init__.py +15 -0
- karabo/middlelayer/tests/api_module_test.py +42 -0
- karabo/middlelayer/tests/cli_test.py +264 -0
- karabo/middlelayer/tests/code_quality_test.py +27 -0
- karabo/middlelayer/tests/configuration_test.py +203 -0
- karabo/middlelayer/tests/context_test.py +137 -0
- karabo/middlelayer/tests/device_client_test.py +178 -0
- karabo/middlelayer/tests/device_server_test.py +248 -0
- karabo/middlelayer/tests/device_test.py +666 -0
- karabo/middlelayer/tests/eventloop.py +143 -0
- karabo/middlelayer/tests/eventloop_test.py +133 -0
- karabo/middlelayer/tests/heartbeat_mixin_test.py +206 -0
- karabo/middlelayer/tests/inject_node_test.py +221 -0
- karabo/middlelayer/tests/interfaces_test.py +59 -0
- karabo/middlelayer/tests/macro_test.py +1118 -0
- karabo/middlelayer/tests/monitor_test.py +128 -0
- karabo/middlelayer/tests/ordering_test.py +290 -0
- karabo/middlelayer/tests/pipeline_test.py +499 -0
- karabo/middlelayer/tests/pretty_test.py +322 -0
- karabo/middlelayer/tests/proxy_test.py +215 -0
- karabo/middlelayer/tests/remote_pipeline_test.py +915 -0
- karabo/middlelayer/tests/remote_test.py +1591 -0
- karabo/middlelayer/tests/synchronization_test.py +505 -0
- karabo/middlelayer/tests/unitutil_test.py +80 -0
- karabo/middlelayer/tests/utils_test.py +420 -0
- karabo/middlelayer/unitutil.py +151 -0
- karabo/middlelayer/utils.py +346 -0
- karabo/middlelayer_devices/__init__.py +15 -0
- karabo/middlelayer_devices/configuration_manager.py +728 -0
- karabo/middlelayer_devices/daemon_manager.py +525 -0
- karabo/middlelayer_devices/project_manager.py +533 -0
- karabo/middlelayer_devices/property_test.py +971 -0
- karabo/middlelayer_devices/tests/__init__.py +15 -0
- karabo/middlelayer_devices/tests/projectdb_util.py +212 -0
- karabo/middlelayer_devices/tests/test_code_quality.py +27 -0
- karabo/middlelayer_devices/tests/test_config_manager.py +393 -0
- karabo/middlelayer_devices/tests/test_file_project_manager.py +45 -0
- karabo/middlelayer_devices/tests/test_project_manager.py +53 -0
- karabo/middlelayer_devices/tests/test_propertymdl.py +87 -0
- karabo/native/__init__.py +25 -0
- karabo/native/data/__init__.py +38 -0
- karabo/native/data/bin_reader.py +201 -0
- karabo/native/data/bin_writer.py +171 -0
- karabo/native/data/compare.py +120 -0
- karabo/native/data/enums.py +276 -0
- karabo/native/data/hash.py +732 -0
- karabo/native/data/str_converter.py +247 -0
- karabo/native/data/tests/__init__.py +15 -0
- karabo/native/data/tests/test_compare.py +120 -0
- karabo/native/data/tests/test_converters.py +161 -0
- karabo/native/data/tests/test_hash.py +615 -0
- karabo/native/data/tests/test_schema.py +167 -0
- karabo/native/data/tests/test_serializers.py +326 -0
- karabo/native/data/tests/test_timestamp.py +115 -0
- karabo/native/data/tests/test_utils.py +284 -0
- karabo/native/data/timestamp.py +174 -0
- karabo/native/data/typenums.py +98 -0
- karabo/native/data/utils.py +236 -0
- karabo/native/data/xml_reader.py +284 -0
- karabo/native/data/xml_writer.py +164 -0
- karabo/native/exceptions.py +27 -0
- karabo/native/project/__init__.py +20 -0
- karabo/native/project/api.py +19 -0
- karabo/native/project/convert.py +98 -0
- karabo/native/project/io.py +323 -0
- karabo/native/project/old.py +375 -0
- karabo/native/project/tests/__init__.py +15 -0
- karabo/native/project/tests/test_io.py +270 -0
- karabo/native/schema/__init__.py +32 -0
- karabo/native/schema/basetypes.py +914 -0
- karabo/native/schema/configurable.py +490 -0
- karabo/native/schema/descriptors.py +1362 -0
- karabo/native/schema/image_data.py +282 -0
- karabo/native/schema/jsonencoder.py +54 -0
- karabo/native/schema/ndarray.py +162 -0
- karabo/native/schema/tests/__init__.py +15 -0
- karabo/native/schema/tests/basetypes_test.py +812 -0
- karabo/native/schema/tests/cast_test.py +254 -0
- karabo/native/schema/tests/configurable_test.py +1819 -0
- karabo/native/schema/tests/descriptor_test.py +1307 -0
- karabo/native/schema/tests/json_test.py +57 -0
- karabo/native/schema/tests/ufunc_test.py +2106 -0
- karabo/native/schema/tests/utils.py +29 -0
- karabo/native/schema/tests/utils_test.py +270 -0
- karabo/native/schema/utils.py +217 -0
- karabo/native/tests/__init__.py +15 -0
- karabo/native/tests/test_code_quality.py +27 -0
- karabo/native/tests/time_mixin_test.py +89 -0
- karabo/native/tests/weak_test.py +58 -0
- karabo/native/time_mixin.py +109 -0
- karabo/native/weak.py +53 -0
- karabo/packaging/__init__.py +15 -0
- karabo/packaging/device_template.py +92 -0
- karabo/packaging/versioning.py +218 -0
- karabo/testing/__init__.py +15 -0
- karabo/testing/import_checker.py +91 -0
- karabo/testing/resources/reference.krb +0 -0
- karabo/testing/utils.py +127 -0
- karabo-2.20.7.dist-info/LICENSE.md +355 -0
- karabo-2.20.7.dist-info/METADATA +13 -0
- karabo-2.20.7.dist-info/RECORD +261 -0
- karabo-2.20.7.dist-info/WHEEL +5 -0
- karabo-2.20.7.dist-info/entry_points.txt +8 -0
- karabo-2.20.7.dist-info/top_level.txt +1 -0
karabo/__init__.py
ADDED
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
# This file is part of Karabo.
|
|
2
|
+
#
|
|
3
|
+
# http://www.karabo.eu
|
|
4
|
+
#
|
|
5
|
+
# Copyright (C) European XFEL GmbH Schenefeld. All rights reserved.
|
|
6
|
+
#
|
|
7
|
+
# Karabo is free software: you can redistribute it and/or modify it under
|
|
8
|
+
# the terms of the MPL-2 Mozilla Public License.
|
|
9
|
+
#
|
|
10
|
+
# You should have received a copy of the MPL-2 Public License along with
|
|
11
|
+
# Karabo. If not, see <https://www.mozilla.org/en-US/MPL/2.0/>.
|
|
12
|
+
#
|
|
13
|
+
# Karabo is distributed in the hope that it will be useful, but WITHOUT ANY
|
|
14
|
+
# WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
|
15
|
+
# FITNESS FOR A PARTICULAR PURPOSE.
|
|
16
|
+
"""\
|
|
17
|
+
Useful commands in Karabo:
|
|
18
|
+
==========================
|
|
19
|
+
|
|
20
|
+
connectDevice(deviceId)
|
|
21
|
+
connect to a remote device, returns a proxy to it
|
|
22
|
+
|
|
23
|
+
getDevices()
|
|
24
|
+
get a list of running devices
|
|
25
|
+
|
|
26
|
+
instantiate(serverId, classId, deviceId, **kwargs)
|
|
27
|
+
instantiate a remote device
|
|
28
|
+
|
|
29
|
+
shutdown(deviceId)
|
|
30
|
+
shut down a remote device
|
|
31
|
+
"""
|
|
32
|
+
|
|
33
|
+
try:
|
|
34
|
+
from karabo._version import version
|
|
35
|
+
from karabo.common.packaging import utils
|
|
36
|
+
__version__ = utils.extract_full_version(version)
|
|
37
|
+
except ImportError:
|
|
38
|
+
# Don't cause a failure when running setup.py
|
|
39
|
+
__version__ = ''
|
karabo/_version.py
ADDED
karabo/bound.py
ADDED
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
# This file is part of Karabo.
|
|
2
|
+
#
|
|
3
|
+
# http://www.karabo.eu
|
|
4
|
+
#
|
|
5
|
+
# Copyright (C) European XFEL GmbH Schenefeld. All rights reserved.
|
|
6
|
+
#
|
|
7
|
+
# Karabo is free software: you can redistribute it and/or modify it under
|
|
8
|
+
# the terms of the MPL-2 Mozilla Public License.
|
|
9
|
+
#
|
|
10
|
+
# You should have received a copy of the MPL-2 Public License along with
|
|
11
|
+
# Karabo. If not, see <https://www.mozilla.org/en-US/MPL/2.0/>.
|
|
12
|
+
#
|
|
13
|
+
# Karabo is distributed in the hope that it will be useful, but WITHOUT ANY
|
|
14
|
+
# WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
|
15
|
+
# FITNESS FOR A PARTICULAR PURPOSE.
|
|
16
|
+
# flake8: noqa: F401
|
|
17
|
+
""" This module provides all the bound API names which a Device might need.
|
|
18
|
+
"""
|
|
19
|
+
|
|
20
|
+
from .bound_api.base_fsm import BaseFsm
|
|
21
|
+
from .bound_api.camera_fsm import CameraFsm
|
|
22
|
+
from .bound_api.configurator import Configurator
|
|
23
|
+
from .bound_api.decorators import (
|
|
24
|
+
KARABO_CLASSINFO, KARABO_CONFIGURATION_BASE_CLASS)
|
|
25
|
+
from .bound_api.device import PythonDevice, launchPythonDevice
|
|
26
|
+
from .bound_api.device_client import DeviceClient
|
|
27
|
+
from .bound_api.device_server import DeviceServer, Launcher
|
|
28
|
+
from .bound_api.fsm import (
|
|
29
|
+
KARABO_FSM_ACTION, KARABO_FSM_ACTION0, KARABO_FSM_ACTION1,
|
|
30
|
+
KARABO_FSM_ACTION2, KARABO_FSM_ACTION3, KARABO_FSM_ACTION4,
|
|
31
|
+
KARABO_FSM_CREATE_MACHINE, KARABO_FSM_EVENT0, KARABO_FSM_EVENT1,
|
|
32
|
+
KARABO_FSM_EVENT2, KARABO_FSM_EVENT3, KARABO_FSM_EVENT4, KARABO_FSM_GUARD,
|
|
33
|
+
KARABO_FSM_GUARD0, KARABO_FSM_GUARD1, KARABO_FSM_GUARD2, KARABO_FSM_GUARD3,
|
|
34
|
+
KARABO_FSM_GUARD4, KARABO_FSM_INTERRUPT_STATE,
|
|
35
|
+
KARABO_FSM_INTERRUPT_STATE_A, KARABO_FSM_INTERRUPT_STATE_AE,
|
|
36
|
+
KARABO_FSM_INTERRUPT_STATE_AEE, KARABO_FSM_INTERRUPT_STATE_E,
|
|
37
|
+
KARABO_FSM_INTERRUPT_STATE_EE, KARABO_FSM_NO_TRANSITION_ACTION,
|
|
38
|
+
KARABO_FSM_PERIODIC_ACTION, KARABO_FSM_STATE, KARABO_FSM_STATE_A,
|
|
39
|
+
KARABO_FSM_STATE_AE, KARABO_FSM_STATE_AEE, KARABO_FSM_STATE_E,
|
|
40
|
+
KARABO_FSM_STATE_EE, KARABO_FSM_STATE_MACHINE, KARABO_FSM_STATE_MACHINE_E,
|
|
41
|
+
KARABO_FSM_STATE_MACHINE_EE)
|
|
42
|
+
from .bound_api.no_fsm import NoFsm
|
|
43
|
+
from .bound_api.ok_error_fsm import OkErrorFsm
|
|
44
|
+
from .bound_api.plugin_loader import PluginLoader
|
|
45
|
+
from .bound_api.runner import Runner
|
|
46
|
+
from .bound_api.server_entry_point import runSingleDeviceServer
|
|
47
|
+
from .bound_api.start_stop_fsm import StartStopFsm
|
|
48
|
+
from .bound_api.start_stop_fsm_periodic import StartStopFsmPeriodic
|
|
49
|
+
from .bound_api.worker import QueueWorker, Worker
|
|
50
|
+
from .bound_tool import (
|
|
51
|
+
ADMIN, ALARM_ELEMENT, AMPERE, AMPERE_PER_SECOND, ATTO, ATTOSEC, BAR, BAYER,
|
|
52
|
+
BECQUEREL, BGR, BGRA, BIT, BMP, BOOL_ELEMENT, BYTE, BYTEARRAY_ELEMENT,
|
|
53
|
+
CANDELA, CENTI, CHOICE_ELEMENT, CHOICE_OF_NODES, CMYK, COMMAND, COULOMB,
|
|
54
|
+
COUNT, DAY, DECA, DECI, DEGREE, DEGREE_CELSIUS, DOUBLE_ELEMENT,
|
|
55
|
+
ELECTRONVOLT, EVERY_1MIN, EVERY_1S, EVERY_5S, EVERY_10MIN, EVERY_10S,
|
|
56
|
+
EVERY_100MS, EVERY_EVENT, EXA, EXPERT, FARAD, FEMTO, FEMTOSEC,
|
|
57
|
+
FLOAT_ELEMENT, GIGA, GRAM, GRAY, HECTO, HENRY, HERTZ, HOUR,
|
|
58
|
+
IMAGEDATA_ELEMENT, INIT, INPUT_CHANNEL, INPUT_ELEMENT, INT32_ELEMENT,
|
|
59
|
+
INT64_ELEMENT, INTERNAL, JOULE, JPEG, KATAL, KELVIN, KILO, LEAF,
|
|
60
|
+
LIST_ELEMENT, LIST_OF_NODES, LUMEN, LUX, MANDATORY, MEGA, METER,
|
|
61
|
+
METER_PER_SECOND, MICRO, MICROSEC, MILLI, MILLISEC, MINUTE, MOLE, NANO,
|
|
62
|
+
NANOSEC, NDARRAY_ELEMENT, NEWTON, NO_ARCHIVING, NODE, NODE_ELEMENT, NONE,
|
|
63
|
+
NOT_ASSIGNED, NUMBER, OBSERVER, OHM, ONESECOND, OPERATOR, OPTIONAL,
|
|
64
|
+
OUTPUT_CHANNEL, OUTPUT_ELEMENT, OVERWRITE_ELEMENT, PASCAL, PATH_ELEMENT,
|
|
65
|
+
PERCENT, PETA, PICO, PICOSEC, PIXEL, PNG, PROPERTY, RADIAN, READ, RGB,
|
|
66
|
+
RGBA, SECOND, SIEMENS, SIEVERT, SLOT_ELEMENT, STATE_ELEMENT, STERADIAN,
|
|
67
|
+
STRING_ELEMENT, TABLE_ELEMENT, TERA, TESLA, TIFF, TIME_UNITS,
|
|
68
|
+
UINT32_ELEMENT, UINT64_ELEMENT, UNDEFINED, USER, VECTOR_BOOL_ELEMENT,
|
|
69
|
+
VECTOR_CHAR_ELEMENT, VECTOR_DOUBLE_ELEMENT, VECTOR_FLOAT_ELEMENT,
|
|
70
|
+
VECTOR_INT32_ELEMENT, VECTOR_INT64_ELEMENT, VECTOR_STRING_ELEMENT,
|
|
71
|
+
VECTOR_UINT32_ELEMENT, VECTOR_UINT64_ELEMENT, VOLT, VOLT_PER_SECOND, WATT,
|
|
72
|
+
WEBER, WRITE, YEAR, YOCTO, YOTTA, YUV, ZEPTO, ZETTA, AbstractInput,
|
|
73
|
+
AccessLevel, AccessType, ArchivePolicy, AssemblyRules, AssignmentType,
|
|
74
|
+
BinarySerializerHash, BinarySerializerSchema, Broker, Category, Channel,
|
|
75
|
+
ChannelMetaData, ClassInfo, Connection, ConnectionStatus, DaqDataType,
|
|
76
|
+
DAQPolicy, DateTimeString, Dims, Encoding, Epochstamp, ErrorCode,
|
|
77
|
+
EventLoop, Hash, HashAttributes, HashAttributesNode, HashFilter,
|
|
78
|
+
HashMergePolicy, HashNode, ImageData, InputChannel, InputHash, InputSchema,
|
|
79
|
+
LeafType, Logger, MetricPrefix, NodeType, OutputChannel, OutputHash,
|
|
80
|
+
OutputSchema, Priority, PriorityLevel, Requestor, RollingWindowStatistics,
|
|
81
|
+
Rotation, Schema, SignalSlotable, SignalSlotableIntern, Slot,
|
|
82
|
+
SlotElementBase, TextSerializerHash, TextSerializerSchema, TimeDuration,
|
|
83
|
+
Timestamp, Trainstamp, Types, TypesClass, Unit, Validator,
|
|
84
|
+
ValidatorValidationRules, VectorHash, VectorHashPointer, _DimsIntern,
|
|
85
|
+
fullyEqual, isStdVectorDefaultConversion, loadFromFile, loadHashFromFile,
|
|
86
|
+
loadSchemaFromFile, saveHashToFile, saveSchemaToFile, saveToFile, setDims,
|
|
87
|
+
setStdVectorDefaultConversion, similar, startDeviceServer,
|
|
88
|
+
stopDeviceServer)
|
|
89
|
+
from .common.alarm_conditions import AlarmCondition
|
|
90
|
+
from .common.states import State, StateSignifier
|
karabo/bound_tool.py
ADDED
|
@@ -0,0 +1,125 @@
|
|
|
1
|
+
# This file is part of Karabo.
|
|
2
|
+
#
|
|
3
|
+
# http://www.karabo.eu
|
|
4
|
+
#
|
|
5
|
+
# Copyright (C) European XFEL GmbH Schenefeld. All rights reserved.
|
|
6
|
+
#
|
|
7
|
+
# Karabo is free software: you can redistribute it and/or modify it under
|
|
8
|
+
# the terms of the MPL-2 Mozilla Public License.
|
|
9
|
+
#
|
|
10
|
+
# You should have received a copy of the MPL-2 Public License along with
|
|
11
|
+
# Karabo. If not, see <https://www.mozilla.org/en-US/MPL/2.0/>.
|
|
12
|
+
#
|
|
13
|
+
# Karabo is distributed in the hope that it will be useful, but WITHOUT ANY
|
|
14
|
+
# WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
|
15
|
+
# FITNESS FOR A PARTICULAR PURPOSE.
|
|
16
|
+
# flake8: noqa: F401
|
|
17
|
+
""" This module provides all the bound API names which a Device might need.
|
|
18
|
+
"""
|
|
19
|
+
import os
|
|
20
|
+
|
|
21
|
+
use_karathon = 'USE_KARATHON' in os.environ
|
|
22
|
+
|
|
23
|
+
if use_karathon:
|
|
24
|
+
from karathon import (
|
|
25
|
+
ADMIN, ALARM_ELEMENT, AMPERE, AMPERE_PER_SECOND, ATTO, ATTOSEC, BAR,
|
|
26
|
+
BAYER, BECQUEREL, BGR, BGRA, BIT, BMP, BOOL_ELEMENT, BYTE,
|
|
27
|
+
BYTEARRAY_ELEMENT, CANDELA, CENTI, CHOICE_ELEMENT, CHOICE_OF_NODES,
|
|
28
|
+
CMYK, COMMAND, COULOMB, COUNT, DAY, DECA, DECI, DEGREE, DEGREE_CELSIUS,
|
|
29
|
+
DOUBLE_ELEMENT, ELECTRONVOLT, EVERY_1MIN, EVERY_1S, EVERY_5S,
|
|
30
|
+
EVERY_10MIN, EVERY_10S, EVERY_100MS, EVERY_EVENT, EXA, EXPERT, FARAD,
|
|
31
|
+
FEMTO, FEMTOSEC, FLOAT_ELEMENT, GIGA, GRAM, GRAY, HECTO, HENRY, HERTZ,
|
|
32
|
+
HOUR, IMAGEDATA_ELEMENT, INIT, INPUT_CHANNEL, INPUT_ELEMENT,
|
|
33
|
+
INT32_ELEMENT, INT64_ELEMENT, INTERNAL, JOULE, JPEG, KATAL, KELVIN,
|
|
34
|
+
KILO, LEAF, LIST_ELEMENT, LIST_OF_NODES, LUMEN, LUX, MANDATORY, MEGA,
|
|
35
|
+
METER, METER_PER_SECOND, MICRO, MICROSEC, MILLI, MILLISEC, MINUTE,
|
|
36
|
+
MOLE, NANO, NANOSEC, NDARRAY_ELEMENT, NEWTON, NO_ARCHIVING, NODE,
|
|
37
|
+
NODE_ELEMENT, NONE, NOT_ASSIGNED, NUMBER, OBSERVER, OHM, ONESECOND,
|
|
38
|
+
OPERATOR, OPTIONAL, OUTPUT_CHANNEL, OUTPUT_ELEMENT, OVERWRITE_ELEMENT,
|
|
39
|
+
PASCAL, PATH_ELEMENT, PERCENT, PETA, PICO, PICOSEC, PIXEL, PNG,
|
|
40
|
+
PROPERTY, RADIAN, READ, RGB, RGBA, SECOND, SIEMENS, SIEVERT,
|
|
41
|
+
SLOT_ELEMENT, STATE_ELEMENT, STERADIAN, STRING_ELEMENT, TABLE_ELEMENT,
|
|
42
|
+
TERA, TESLA, TIFF, TIME_UNITS, UINT32_ELEMENT, UINT64_ELEMENT,
|
|
43
|
+
UNDEFINED, USER, VECTOR_BOOL_ELEMENT, VECTOR_CHAR_ELEMENT,
|
|
44
|
+
VECTOR_DOUBLE_ELEMENT, VECTOR_FLOAT_ELEMENT, VECTOR_INT32_ELEMENT,
|
|
45
|
+
VECTOR_INT64_ELEMENT, VECTOR_STRING_ELEMENT, VECTOR_UINT32_ELEMENT,
|
|
46
|
+
VECTOR_UINT64_ELEMENT, VOLT, VOLT_PER_SECOND, WATT, WEBER, WRITE, YEAR,
|
|
47
|
+
YOCTO, YOTTA, YUV, ZEPTO, ZETTA, AbstractInput, AccessLevel,
|
|
48
|
+
AccessType, ArchivePolicy, AssemblyRules, AssignmentType,
|
|
49
|
+
BinarySerializerHash, BinarySerializerSchema, Broker, Category,
|
|
50
|
+
Channel, ChannelMetaData, ClassInfo, Connection, ConnectionStatus,
|
|
51
|
+
DaqDataType, DAQPolicy, DateTimeString,
|
|
52
|
+
DeviceClient as BoundDeviceClient, Dims, Encoding, Epochstamp,
|
|
53
|
+
ErrorCode, EventLoop, Hash, HashAttributes, HashAttributesNode,
|
|
54
|
+
HashFilter, HashMergePolicy, HashNode, ImageData, InputChannel,
|
|
55
|
+
InputHash, InputSchema, LeafType, Logger, MetricPrefix, NodeType,
|
|
56
|
+
OutputChannel, OutputHash, OutputSchema, Priority, PriorityLevel,
|
|
57
|
+
Requestor, RollingWindowStatistics, Rotation, Schema, SignalSlotable,
|
|
58
|
+
SignalSlotableIntern, Slot, SlotElementBase, TextSerializerHash,
|
|
59
|
+
TextSerializerSchema, TimeDuration, Timestamp, Trainstamp, Types,
|
|
60
|
+
TypesClass, Unit, Validator, ValidatorValidationRules, VectorHash,
|
|
61
|
+
VectorHashPointer, _DimsIntern, fullyEqual, generateAutoStartHash,
|
|
62
|
+
isStdVectorDefaultConversion, jsonToHash, loadFromFile,
|
|
63
|
+
loadHashFromFile, loadSchemaFromFile, saveHashToFile, saveSchemaToFile,
|
|
64
|
+
saveToFile, setDims, setStdVectorDefaultConversion, similar,
|
|
65
|
+
startDeviceServer, stopDeviceServer)
|
|
66
|
+
else:
|
|
67
|
+
from karabind import (
|
|
68
|
+
ADMIN, ALARM_ELEMENT, AMPERE, AMPERE_PER_SECOND, ATTO, ATTOSEC, BAR,
|
|
69
|
+
BAYER, BECQUEREL, BGR, BGRA, BIT, BMP, BOOL_ELEMENT, BYTE,
|
|
70
|
+
BYTEARRAY_ELEMENT, CANDELA, CENTI, CHOICE_ELEMENT, CHOICE_OF_NODES,
|
|
71
|
+
CMYK, COMMAND, COULOMB, COUNT, DAY, DECA, DECI, DEGREE, DEGREE_CELSIUS,
|
|
72
|
+
DOUBLE_ELEMENT, ELECTRONVOLT, EVERY_1MIN, EVERY_1S, EVERY_5S,
|
|
73
|
+
EVERY_10MIN, EVERY_10S, EVERY_100MS, EVERY_EVENT, EXA, EXPERT, FARAD,
|
|
74
|
+
FEMTO, FEMTOSEC, FLOAT_ELEMENT, GIGA, GRAM, GRAY, HECTO, HENRY, HERTZ,
|
|
75
|
+
HOUR, IMAGEDATA_ELEMENT, INIT, INPUT_CHANNEL, INPUT_ELEMENT,
|
|
76
|
+
INT32_ELEMENT, INT64_ELEMENT, INTERNAL, JOULE, JPEG, KATAL, KELVIN,
|
|
77
|
+
KILO, LEAF, LIST_ELEMENT, LIST_OF_NODES, LUMEN, LUX, MANDATORY, MEGA,
|
|
78
|
+
METER, METER_PER_SECOND, MICRO, MICROSEC, MILLI, MILLISEC, MINUTE,
|
|
79
|
+
MOLE, NANO, NANOSEC, NDARRAY_ELEMENT, NEWTON, NO_ARCHIVING, NODE,
|
|
80
|
+
NODE_ELEMENT, NONE, NOT_ASSIGNED, NUMBER, OBSERVER, OHM, ONESECOND,
|
|
81
|
+
OPERATOR, OPTIONAL, OUTPUT_CHANNEL, OUTPUT_ELEMENT, OVERWRITE_ELEMENT,
|
|
82
|
+
PASCAL, PATH_ELEMENT, PERCENT, PETA, PICO, PICOSEC, PIXEL, PNG,
|
|
83
|
+
PROPERTY, RADIAN, READ, RGB, RGBA, SECOND, SIEMENS, SIEVERT,
|
|
84
|
+
SLOT_ELEMENT, STATE_ELEMENT, STERADIAN, STRING_ELEMENT, TABLE_ELEMENT,
|
|
85
|
+
TERA, TESLA, TIFF, TIME_UNITS, UINT32_ELEMENT, UINT64_ELEMENT,
|
|
86
|
+
UNDEFINED, USER, VECTOR_BOOL_ELEMENT, VECTOR_CHAR_ELEMENT,
|
|
87
|
+
VECTOR_DOUBLE_ELEMENT, VECTOR_FLOAT_ELEMENT, VECTOR_INT32_ELEMENT,
|
|
88
|
+
VECTOR_INT64_ELEMENT, VECTOR_STRING, VECTOR_STRING_ELEMENT,
|
|
89
|
+
VECTOR_UINT32_ELEMENT, VECTOR_UINT64_ELEMENT, VOLT, VOLT_PER_SECOND,
|
|
90
|
+
WATT, WEBER, WRITE, YEAR, YOCTO, YOTTA, YUV, ZEPTO, ZETTA, AccessLevel,
|
|
91
|
+
AccessType, ArchivePolicy, AssemblyRules, AssignmentType,
|
|
92
|
+
BinarySerializerHash, BinarySerializerSchema, Broker, Category,
|
|
93
|
+
Channel, ChannelMetaData, ClassInfo, Connection, ConnectionStatus,
|
|
94
|
+
DaqDataType, DAQPolicy, DateTimeString,
|
|
95
|
+
DeviceClient as BoundDeviceClient, Dims, Encoding, Epochstamp,
|
|
96
|
+
ErrorCode, EventLoop, Hash, HashAttributes, HashAttributesNode,
|
|
97
|
+
HashFilter, HashMergePolicy, HashNode, ImageData, InputChannel,
|
|
98
|
+
InputHash, InputSchema, LeafType, Logger, MetricPrefix, NodeType,
|
|
99
|
+
OutputChannel, OutputHash, OutputSchema, Priority, PriorityLevel,
|
|
100
|
+
Requestor, RollingWindowStatistics, Rotation, Schema, SignalSlotable,
|
|
101
|
+
SignalSlotableIntern, Slot, SlotElementBase, TextSerializerHash,
|
|
102
|
+
TextSerializerSchema, TimeDuration, Timestamp, Trainstamp, Types,
|
|
103
|
+
TypesClass, Unit, Validator, ValidatorValidationRules, VectorHash,
|
|
104
|
+
VectorHashPointer, _DimsIntern, cppNDArray, cppNDArrayCopy, fullyEqual,
|
|
105
|
+
generateAutoStartHash, jsonToHash, loadFromFile, loadHashFromFile,
|
|
106
|
+
loadSchemaFromFile, saveHashToFile, saveSchemaToFile, saveToFile,
|
|
107
|
+
setDims, similar, startDeviceServer, stopDeviceServer)
|
|
108
|
+
|
|
109
|
+
# For comptibility with old karathon bindings, take care that e.g.
|
|
110
|
+
# str(Types.INT32) is 'INT32' and not 'Types.INT32'
|
|
111
|
+
def __typesToString(self):
|
|
112
|
+
repStr = repr(self) # i.e. '<Types.{this we want}: {enum value}>'
|
|
113
|
+
return repStr[7:repStr.find(':')]
|
|
114
|
+
|
|
115
|
+
setattr(Types, "__str__", __typesToString)
|
|
116
|
+
|
|
117
|
+
|
|
118
|
+
class AbstractInput:
|
|
119
|
+
pass
|
|
120
|
+
|
|
121
|
+
def isStdVectorDefaultConversion():
|
|
122
|
+
return True
|
|
123
|
+
|
|
124
|
+
def setStdVectorDefaultConversion():
|
|
125
|
+
pass
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
# This file is part of Karabo.
|
|
2
|
+
#
|
|
3
|
+
# http://www.karabo.eu
|
|
4
|
+
#
|
|
5
|
+
# Copyright (C) European XFEL GmbH Schenefeld. All rights reserved.
|
|
6
|
+
#
|
|
7
|
+
# Karabo is free software: you can redistribute it and/or modify it under
|
|
8
|
+
# the terms of the MPL-2 Mozilla Public License.
|
|
9
|
+
#
|
|
10
|
+
# You should have received a copy of the MPL-2 Public License along with
|
|
11
|
+
# Karabo. If not, see <https://www.mozilla.org/en-US/MPL/2.0/>.
|
|
12
|
+
#
|
|
13
|
+
# Karabo is distributed in the hope that it will be useful, but WITHOUT ANY
|
|
14
|
+
# WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
|
15
|
+
# FITNESS FOR A PARTICULAR PURPOSE.
|
|
@@ -0,0 +1,120 @@
|
|
|
1
|
+
# This file is part of Karabo.
|
|
2
|
+
#
|
|
3
|
+
# http://www.karabo.eu
|
|
4
|
+
#
|
|
5
|
+
# Copyright (C) European XFEL GmbH Schenefeld. All rights reserved.
|
|
6
|
+
#
|
|
7
|
+
# Karabo is free software: you can redistribute it and/or modify it under
|
|
8
|
+
# the terms of the MPL-2 Mozilla Public License.
|
|
9
|
+
#
|
|
10
|
+
# You should have received a copy of the MPL-2 Public License along with
|
|
11
|
+
# Karabo. If not, see <https://www.mozilla.org/en-US/MPL/2.0/>.
|
|
12
|
+
#
|
|
13
|
+
# Karabo is distributed in the hope that it will be useful, but WITHOUT ANY
|
|
14
|
+
# WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
|
15
|
+
# FITNESS FOR A PARTICULAR PURPOSE.
|
|
16
|
+
from enum import Enum
|
|
17
|
+
from functools import total_ordering
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
@total_ordering
|
|
21
|
+
class AlarmCondition(Enum):
|
|
22
|
+
"""A class for unified alarm conditions.
|
|
23
|
+
|
|
24
|
+
Alarms are categorized by severity, which can either be none, warn, alarm
|
|
25
|
+
or interlock. Interlock is the most severe condition.
|
|
26
|
+
"""
|
|
27
|
+
|
|
28
|
+
NONE = "none"
|
|
29
|
+
WARN = "warn"
|
|
30
|
+
WARN_LOW = "warnLow"
|
|
31
|
+
WARN_HIGH = "warnHigh"
|
|
32
|
+
WARN_VARIANCE_LOW = "warnVarianceLow"
|
|
33
|
+
WARN_VARIANCE_HIGH = "warnVarianceHigh"
|
|
34
|
+
ALARM = "alarm"
|
|
35
|
+
ALARM_LOW = "alarmLow"
|
|
36
|
+
ALARM_HIGH = "alarmHigh"
|
|
37
|
+
ALARM_VARIANCE_LOW = "alarmVarianceLow"
|
|
38
|
+
ALARM_VARIANCE_HIGH = "alarmVarianceHigh"
|
|
39
|
+
INTERLOCK = "interlock"
|
|
40
|
+
|
|
41
|
+
@staticmethod
|
|
42
|
+
def criticalityList():
|
|
43
|
+
"""Return the severity list
|
|
44
|
+
|
|
45
|
+
severity increases from left to right
|
|
46
|
+
:return: an list with alarm severities
|
|
47
|
+
"""
|
|
48
|
+
return [
|
|
49
|
+
AlarmCondition.NONE,
|
|
50
|
+
AlarmCondition.WARN,
|
|
51
|
+
AlarmCondition.ALARM,
|
|
52
|
+
AlarmCondition.INTERLOCK,
|
|
53
|
+
]
|
|
54
|
+
|
|
55
|
+
def criticalityLevel(self):
|
|
56
|
+
"""Return the severity level of this alarm condition"""
|
|
57
|
+
for p in AlarmCondition.criticalityList():
|
|
58
|
+
if p.value in self.value:
|
|
59
|
+
return p
|
|
60
|
+
return self
|
|
61
|
+
|
|
62
|
+
@staticmethod
|
|
63
|
+
def returnMostSignificant(conditionList):
|
|
64
|
+
"""Returns the most severe/significant condition
|
|
65
|
+
|
|
66
|
+
Returns the most severe/significant condition in the given list of
|
|
67
|
+
conditions
|
|
68
|
+
:param conditionList: a list containing alarm conditions
|
|
69
|
+
:return: The most severe condition in the list
|
|
70
|
+
"""
|
|
71
|
+
if len(conditionList) == 0:
|
|
72
|
+
return AlarmCondition.NONE
|
|
73
|
+
else:
|
|
74
|
+
s = conditionList[0]
|
|
75
|
+
for c in conditionList:
|
|
76
|
+
s = s.returnMoreSignificant(c)
|
|
77
|
+
return s.criticalityLevel()
|
|
78
|
+
|
|
79
|
+
def returnMoreSignificant(self, other):
|
|
80
|
+
"""Return the more significant of this and the other condition
|
|
81
|
+
|
|
82
|
+
:param other: The condition to compare against
|
|
83
|
+
"""
|
|
84
|
+
if self.criticalityList().index(
|
|
85
|
+
self.criticalityLevel()
|
|
86
|
+
) > self.criticalityList().index(other.criticalityLevel()):
|
|
87
|
+
return self
|
|
88
|
+
else:
|
|
89
|
+
return other
|
|
90
|
+
|
|
91
|
+
@staticmethod
|
|
92
|
+
def fromString(name):
|
|
93
|
+
"""Return an alarm condition from its stringified representation."""
|
|
94
|
+
return AlarmCondition(name)
|
|
95
|
+
|
|
96
|
+
def asString(self):
|
|
97
|
+
"""Return the string representation of the alarm condition"""
|
|
98
|
+
return self.value
|
|
99
|
+
|
|
100
|
+
def asBaseString(self):
|
|
101
|
+
"""Return the severity level, e.g. base of the alarmcondtions"""
|
|
102
|
+
return self.parent().value
|
|
103
|
+
|
|
104
|
+
def isSameCriticality(self, other):
|
|
105
|
+
"""Return whether *other* is of same criticality/severity
|
|
106
|
+
|
|
107
|
+
Return whether this alarm condition is of same criticality/severity
|
|
108
|
+
as *other*
|
|
109
|
+
:param other: the alarm condition to compare against
|
|
110
|
+
"""
|
|
111
|
+
return self.criticalityList().index(
|
|
112
|
+
self.criticalityLevel()
|
|
113
|
+
) == self.criticalityList().index(other.criticalityLevel())
|
|
114
|
+
|
|
115
|
+
def __lt__(self, other):
|
|
116
|
+
return self.level < other.level
|
|
117
|
+
|
|
118
|
+
|
|
119
|
+
for i, condition in enumerate(AlarmCondition.__members__.values()):
|
|
120
|
+
condition.level = i
|
karabo/common/api.py
ADDED
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
# This file is part of Karabo.
|
|
2
|
+
#
|
|
3
|
+
# http://www.karabo.eu
|
|
4
|
+
#
|
|
5
|
+
# Copyright (C) European XFEL GmbH Schenefeld. All rights reserved.
|
|
6
|
+
#
|
|
7
|
+
# Karabo is free software: you can redistribute it and/or modify it under
|
|
8
|
+
# the terms of the MPL-2 Mozilla Public License.
|
|
9
|
+
#
|
|
10
|
+
# You should have received a copy of the MPL-2 Public License along with
|
|
11
|
+
# Karabo. If not, see <https://www.mozilla.org/en-US/MPL/2.0/>.
|
|
12
|
+
#
|
|
13
|
+
# Karabo is distributed in the hope that it will be useful, but WITHOUT ANY
|
|
14
|
+
# WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
|
15
|
+
# FITNESS FOR A PARTICULAR PURPOSE.
|
|
16
|
+
# flake8: noqa
|
|
17
|
+
from .alarm_conditions import AlarmCondition
|
|
18
|
+
from .const import (
|
|
19
|
+
KARABO_ALARM_HIGH, KARABO_ALARM_LOW, KARABO_ALARM_VARIANCE_HIGH,
|
|
20
|
+
KARABO_ALARM_VARIANCE_LOW, KARABO_EDITABLE_ATTRIBUTES,
|
|
21
|
+
KARABO_LOGGER_CONTENT_DEFAULT, KARABO_RUNTIME_ATTRIBUTES_MDL,
|
|
22
|
+
KARABO_RUNTIME_SCHEMA_UPDATE, KARABO_SCHEMA_ABSOLUTE_ERROR,
|
|
23
|
+
KARABO_SCHEMA_ACCESS_MODE, KARABO_SCHEMA_ALARM_ACK,
|
|
24
|
+
KARABO_SCHEMA_ALARM_INFO, KARABO_SCHEMA_ALIAS,
|
|
25
|
+
KARABO_SCHEMA_ALLOWED_STATES, KARABO_SCHEMA_ARCHIVE_POLICY,
|
|
26
|
+
KARABO_SCHEMA_ASSIGNMENT, KARABO_SCHEMA_ATTRIBUTES, KARABO_SCHEMA_CLASS_ID,
|
|
27
|
+
KARABO_SCHEMA_DAQ_DATA_TYPE, KARABO_SCHEMA_DAQ_POLICY,
|
|
28
|
+
KARABO_SCHEMA_DEFAULT_SCENE, KARABO_SCHEMA_DEFAULT_VALUE,
|
|
29
|
+
KARABO_SCHEMA_DESCRIPTION, KARABO_SCHEMA_DISPLAY_TYPE,
|
|
30
|
+
KARABO_SCHEMA_DISPLAYED_NAME, KARABO_SCHEMA_ENABLE_ROLLING_STATS,
|
|
31
|
+
KARABO_SCHEMA_LEAF_TYPE, KARABO_SCHEMA_MAX, KARABO_SCHEMA_MAX_EXC,
|
|
32
|
+
KARABO_SCHEMA_MAX_INC, KARABO_SCHEMA_MAX_SIZE,
|
|
33
|
+
KARABO_SCHEMA_METRIC_PREFIX_ENUM, KARABO_SCHEMA_METRIC_PREFIX_NAME,
|
|
34
|
+
KARABO_SCHEMA_METRIC_PREFIX_SYMBOL, KARABO_SCHEMA_MIN,
|
|
35
|
+
KARABO_SCHEMA_MIN_EXC, KARABO_SCHEMA_MIN_INC, KARABO_SCHEMA_MIN_SIZE,
|
|
36
|
+
KARABO_SCHEMA_NODE_TYPE, KARABO_SCHEMA_OPTIONS, KARABO_SCHEMA_OVERWRITE,
|
|
37
|
+
KARABO_SCHEMA_REGEX, KARABO_SCHEMA_RELATIVE_ERROR,
|
|
38
|
+
KARABO_SCHEMA_REQUIRED_ACCESS_LEVEL, KARABO_SCHEMA_ROLLING_STATS_EVAL,
|
|
39
|
+
KARABO_SCHEMA_ROW_SCHEMA, KARABO_SCHEMA_SKIP_VALIDATION,
|
|
40
|
+
KARABO_SCHEMA_TAGS, KARABO_SCHEMA_UNIT_ENUM, KARABO_SCHEMA_UNIT_NAME,
|
|
41
|
+
KARABO_SCHEMA_UNIT_SYMBOL, KARABO_SCHEMA_VALUE_TYPE, KARABO_TYPE_BOOL,
|
|
42
|
+
KARABO_TYPE_BYTE_ARRAY, KARABO_TYPE_CHAR, KARABO_TYPE_COMPLEX_DOUBLE,
|
|
43
|
+
KARABO_TYPE_COMPLEX_FLOAT, KARABO_TYPE_DOUBLE, KARABO_TYPE_FLOAT,
|
|
44
|
+
KARABO_TYPE_HASH, KARABO_TYPE_INT8, KARABO_TYPE_INT16, KARABO_TYPE_INT32,
|
|
45
|
+
KARABO_TYPE_INT64, KARABO_TYPE_NONE, KARABO_TYPE_SCHEMA,
|
|
46
|
+
KARABO_TYPE_STRING, KARABO_TYPE_UINT8, KARABO_TYPE_UINT16,
|
|
47
|
+
KARABO_TYPE_UINT32, KARABO_TYPE_UINT64, KARABO_TYPE_VECTOR_BOOL,
|
|
48
|
+
KARABO_TYPE_VECTOR_CHAR, KARABO_TYPE_VECTOR_COMPLEX_DOUBLE,
|
|
49
|
+
KARABO_TYPE_VECTOR_COMPLEX_FLOAT, KARABO_TYPE_VECTOR_DOUBLE,
|
|
50
|
+
KARABO_TYPE_VECTOR_FLOAT, KARABO_TYPE_VECTOR_HASH, KARABO_TYPE_VECTOR_INT8,
|
|
51
|
+
KARABO_TYPE_VECTOR_INT16, KARABO_TYPE_VECTOR_INT32,
|
|
52
|
+
KARABO_TYPE_VECTOR_INT64, KARABO_TYPE_VECTOR_STRING,
|
|
53
|
+
KARABO_TYPE_VECTOR_UINT8, KARABO_TYPE_VECTOR_UINT16,
|
|
54
|
+
KARABO_TYPE_VECTOR_UINT32, KARABO_TYPE_VECTOR_UINT64, KARABO_WARN_HIGH,
|
|
55
|
+
KARABO_WARN_LOW, KARABO_WARN_VARIANCE_HIGH, KARABO_WARN_VARIANCE_LOW)
|
|
56
|
+
from .decorators import karabo_deprecated
|
|
57
|
+
from .display_types import (
|
|
58
|
+
KARABO_SCHEMA_DISPLAY_TYPE_BIN, KARABO_SCHEMA_DISPLAY_TYPE_BITSET,
|
|
59
|
+
KARABO_SCHEMA_DISPLAY_TYPE_CURVE, KARABO_SCHEMA_DISPLAY_TYPE_DIRECTORY,
|
|
60
|
+
KARABO_SCHEMA_DISPLAY_TYPE_FILEIN, KARABO_SCHEMA_DISPLAY_TYPE_FILEOUT,
|
|
61
|
+
KARABO_SCHEMA_DISPLAY_TYPE_HEX, KARABO_SCHEMA_DISPLAY_TYPE_IMAGEDATA,
|
|
62
|
+
KARABO_SCHEMA_DISPLAY_TYPE_OCT, KARABO_SCHEMA_DISPLAY_TYPE_RUNCONFIGURATOR,
|
|
63
|
+
KARABO_SCHEMA_DISPLAY_TYPE_SCENES, KARABO_SCHEMA_DISPLAY_TYPE_STATE)
|
|
64
|
+
from .enums import Capabilities, InstanceStatus, Interfaces, ServerFlags
|
|
65
|
+
from .module import create_module
|
|
66
|
+
from .sanity_check import has_sub_imports
|
|
67
|
+
from .savable import BaseSavableModel, set_initialized_flag, set_modified_flag
|
|
68
|
+
from .services import (
|
|
69
|
+
KARABO_ALARM_SERVICE, KARABO_CONFIG_MANAGER, KARABO_DAEMON_MANAGER,
|
|
70
|
+
KARABO_LOGBOOK_MANAGER, KARABO_PROJECT_MANAGER)
|
|
71
|
+
from .states import State, StateSignifier
|
|
72
|
+
from .utils import WeakMethodRef, walk_traits_object
|