karabo.cpp 3.0.3__tar.gz → 3.0.7__tar.gz
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_cpp-3.0.3 → karabo_cpp-3.0.7}/CMakeLists.txt +0 -1
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/PKG-INFO +2 -2
- karabo_cpp-3.0.3/dist/karabo_cpp-3.0.3-cp312-cp312-manylinux_2_28_aarch64.whl → karabo_cpp-3.0.7/dist/karabo_cpp-3.0.7-cp312-cp312-manylinux_2_28_aarch64.whl +0 -0
- karabo_cpp-3.0.3/dist/karabo_cpp-3.0.3-cp312-cp312-manylinux_2_28_x86_64.whl → karabo_cpp-3.0.7/dist/karabo_cpp-3.0.7-cp312-cp312-manylinux_2_28_x86_64.whl +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/extern/build.sh +6 -6
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/extern/conanfile.txt +2 -2
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/pyproject.toml +3 -3
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabind/PyUtilAlarmElement.cc +2 -1
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabind/PyUtilHash.cc +2 -2
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabind/PyUtilSchemaElement.cc +2 -1
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabind/PyUtilSchemaElement.hh +27 -26
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabind/PyUtilSchemaTableElement.cc +2 -1
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabind/PyUtilStateElement.cc +2 -1
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabind/PyXmsImageDataElement.cc +2 -1
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabind/PyXmsSlotElement.cc +2 -1
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/CMakeLists.txt +2 -2
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/core/Device.cc +37 -10
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/core/Device.hh +18 -6
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/core/DeviceClient.cc +9 -15
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/data/schema/BaseElement.cc +18 -6
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/data/schema/BaseElement.hh +4 -3
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/data/schema/CustomNodeElement.hh +3 -2
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/devices/DataLoggerManager.cc +1 -1
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/net/AmqpClient.cc +31 -10
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/tests/data/schema/Schema_Test.cc +18 -2
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/tests/net/Amqp_Test.cc +15 -4
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/xms/SignalSlotable.cc +5 -16
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/xms/SlotElement.hh +3 -3
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/README.md +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/extern/builder_path_replace.py +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/extern/conanfile-bootstrap.txt +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/extern/conanfile-centos.txt +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/extern/conanprofile.karabo +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/extern/karabo_deployer.py +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/extern/relocate_deps.sh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/extern/requirements-0.txt +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/extern/requirements-1.txt +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/extern/requirements-pre.txt +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/extern/resources/daemontools/CMakeLists.txt +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/extern/resources/daemontools/conanfile.py +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/extern/resources/nss/conandata.yml +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/extern/resources/nss/conanfile.py +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/mod_extern_conanfile.txt +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/prepare_extern.py +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/pyproject.toml.template +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/python/src/karabind/__init__.py +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/python/src/shims/__init__.py +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/python/src/shims/entrypoints.py +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/set_lsb_release_info.sh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/CMakeLists.txt +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/brokerMessageLogger/CMakeLists.txt +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/brokerMessageLogger/brokerMessageLogger.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/cmake/code-coverage.cmake +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/cmake/cxx-options.cmake +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/cmake/import_karabo_lib.cmake +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/cmake/karabo-lib-target-name.cmake +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/deviceServer/CMakeLists.txt +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/deviceServer/deviceServer.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabind/CMakeLists.txt +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabind/ConfigurationTestClasses.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabind/ConfigurationTestClasses.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabind/FromNumpy.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabind/FromNumpy.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabind/HandlerWrap.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabind/HandlerWrap.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabind/PyCoreDeviceClient.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabind/PyIoFileTools.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabind/PyLogLogger.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabind/PyNetConnectionChannel.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabind/PyNetEventLoop.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabind/PyTypes.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabind/PyUtilClassInfo.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabind/PyUtilDateTimeString.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabind/PyUtilDims.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabind/PyUtilEpochstamp.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabind/PyUtilException.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabind/PyUtilHashAttributes.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabind/PyUtilHashNode.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabind/PyUtilJsonToHashParser.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabind/PyUtilNDArray.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabind/PyUtilSchema.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabind/PyUtilSchemaNodeElement.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabind/PyUtilSchemaOverwriteElement.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabind/PyUtilSchemaValidator.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabind/PyUtilTimeDuration.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabind/PyUtilTimeId.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabind/PyUtilTimestamp.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabind/PyUtilTypesReferenceType.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabind/PyXmsInputOutputChannel.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabind/PyXmsSignalSlotable.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabind/PythonFactoryMacros.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabind/ToNumpy.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabind/Wrapper.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabind/Wrapper.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabind/karabind.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabind/karabind_test.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabind/stubs/__init__.pyi +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabind/stubs/py.typed +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/cmake/activateKarabo.in +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/cmake/karaboPackageDependencies-GNU-Linux-x86.pc.in +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/core/DeviceClient.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/core/DeviceServer.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/core/DeviceServer.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/core/InstanceChangeThrottler.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/core/InstanceChangeThrottler.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/core/Runner.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/core/Runner.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/core.hpp +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/data/io/AbstractInput.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/data/io/BinaryFileInput.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/data/io/BinaryFileInput.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/data/io/BinaryFileOutput.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/data/io/BinaryFileOutput.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/data/io/BinarySerializer.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/data/io/BufferSet.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/data/io/BufferSet.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/data/io/FileTools.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/data/io/FileTools.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/data/io/HashBinaryFileInput.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/data/io/HashBinaryFileOutput.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/data/io/HashBinarySerializer.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/data/io/HashBinarySerializer.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/data/io/HashTextFileInput.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/data/io/HashTextFileOutput.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/data/io/HashXmlSerializer.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/data/io/HashXmlSerializer.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/data/io/Input.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/data/io/InputHandler.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/data/io/Output.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/data/io/SchemaBinaryFileInput.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/data/io/SchemaBinaryFileOutput.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/data/io/SchemaBinarySerializer.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/data/io/SchemaBinarySerializer.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/data/io/SchemaTextFileInput.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/data/io/SchemaTextFileOutput.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/data/io/SchemaXmlSerializer.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/data/io/SchemaXmlSerializer.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/data/io/TextFileInput.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/data/io/TextFileInput.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/data/io/TextFileOutput.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/data/io/TextFileOutput.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/data/io/TextSerializer.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/data/io.hpp +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/data/schema/AlarmConditionElement.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/data/schema/AlarmConditionElement.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/data/schema/ByteArrayElement.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/data/schema/Configurator.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/data/schema/Factory.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/data/schema/LeafElement.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/data/schema/NDArrayElement.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/data/schema/NDArrayElement.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/data/schema/NodeElement.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/data/schema/OverwriteElement.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/data/schema/OverwriteElement.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/data/schema/SimpleElement.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/data/schema/StateElement.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/data/schema/StateElement.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/data/schema/TableElement.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/data/schema/TableElement.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/data/schema/Validator.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/data/schema/Validator.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/data/schema/VectorElement.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/data/schema.hpp +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/data/time/DateTimeString.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/data/time/DateTimeString.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/data/time/Epochstamp.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/data/time/Epochstamp.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/data/time/TimeDuration.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/data/time/TimeDuration.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/data/time/TimeId.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/data/time/TimeId.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/data/time/TimePeriod.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/data/time/TimePeriod.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/data/time/Timestamp.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/data/time/Timestamp.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/data/time.hpp +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/data/types/AlarmCondition.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/data/types/AlarmCondition.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/data/types/Base64.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/data/types/Base64.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/data/types/ByteSwap.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/data/types/ByteSwap.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/data/types/ClassInfo.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/data/types/ClassInfo.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/data/types/Dims.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/data/types/Dims.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/data/types/Element.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/data/types/Exception.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/data/types/Exception.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/data/types/FromInt.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/data/types/FromInt.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/data/types/FromLiteral.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/data/types/FromLiteral.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/data/types/FromType.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/data/types/FromTypeInfo.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/data/types/FromTypeInfo.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/data/types/Hash.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/data/types/Hash.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/data/types/HashFilter.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/data/types/HashFilter.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/data/types/NDArray.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/data/types/NDArray.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/data/types/OrderedMap.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/data/types/Schema.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/data/types/Schema.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/data/types/State.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/data/types/State.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/data/types/StateSignifier.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/data/types/StateSignifier.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/data/types/StringTools.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/data/types/StringTools.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/data/types/ToCppString.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/data/types/ToLiteral.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/data/types/ToSize.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/data/types/ToType.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/data/types/Types.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/data/types/Units.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/data/types/details.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/data/types/karaboDll.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/data/types.hpp +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/data.hpp +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/devices/DataLogReader.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/devices/DataLogReader.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/devices/DataLogger.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/devices/DataLogger.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/devices/DataLoggerManager.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/devices/FileDataLogger.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/devices/FileDataLogger.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/devices/FileLogReader.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/devices/FileLogReader.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/devices/GuiServerAuthSessionManager.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/devices/GuiServerAuthSessionManager.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/devices/GuiServerDevice.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/devices/GuiServerDevice.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/devices/InfluxDataLogger.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/devices/InfluxDataLogger.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/devices/InfluxLogReader.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/devices/InfluxLogReader.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/devices/PropertyTest.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/devices/PropertyTest.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/karabo.hpp +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/log/Logger.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/log/Logger.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/log/LoggerStream.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/log/utils.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/log/utils.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/log.hpp +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/net/AmqpBroker.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/net/AmqpBroker.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/net/AmqpClient.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/net/AmqpConnection.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/net/AmqpConnection.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/net/AmqpHashClient.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/net/AmqpHashClient.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/net/AmqpUtils.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/net/AmqpUtils.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/net/Broker.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/net/Broker.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/net/Channel.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/net/Connection.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/net/Connection.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/net/EventLoop.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/net/EventLoop.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/net/HttpClient.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/net/HttpClient.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/net/HttpCommon.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/net/HttpRequestRunner.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/net/HttpRequestRunner.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/net/HttpResponse.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/net/HttpResponse.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/net/HttpsRequestRunner.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/net/HttpsRequestRunner.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/net/InfluxDbClient.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/net/InfluxDbClient.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/net/InfluxDbClientUtils.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/net/InfluxDbClientUtils.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/net/NetworkInterface.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/net/NetworkInterface.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/net/Queues.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/net/Strand.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/net/Strand.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/net/TcpChannel.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/net/TcpChannel.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/net/TcpConnection.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/net/TcpConnection.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/net/UserAuthClient.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/net/UserAuthClient.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/net/utils.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/net/utils.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/net.hpp +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/tests/BrokerUtils.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/tests/BrokerUtils.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/tests/CMakeLists.txt +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/tests/WaitUtils.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/tests/WaitUtils.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/tests/core/DeviceClient_Test.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/tests/core/DeviceClient_Test.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/tests/core/InstanceChangeThrottler_Test.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/tests/core/InstanceChangeThrottler_Test.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/tests/core/Runner_Test.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/tests/core/Runner_Test.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/tests/core/testJsonToHashParsing.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/tests/data/io/BufferSet_Test.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/tests/data/io/BufferSet_Test.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/tests/data/io/FileInputOutput_Test.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/tests/data/io/FileInputOutput_Test.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/tests/data/io/HashBinarySerializer_Test.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/tests/data/io/HashBinarySerializer_Test.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/tests/data/io/HashXmlSerializer_Test.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/tests/data/io/HashXmlSerializer_Test.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/tests/data/io/SchemaSerializer_Test.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/tests/data/io/SchemaSerializer_Test.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/tests/data/io/TestPathSetup.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/tests/data/io/resources/etalonXML_readonly.xml +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/tests/data/io/resources/etalonXSD_readonly.xsd +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/tests/data/io/resources/expectedParamsTextFile.xsd +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/tests/data/io/resources/newTestXml.xml +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/tests/data/io/resources/testSchemaFile_readonly.xsd +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/tests/data/io/resources/xmlForReading_readonly.xml +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/tests/data/schema/ConfigurationTestClasses.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/tests/data/schema/ConfigurationTestClasses.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/tests/data/schema/Configurator_Test.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/tests/data/schema/Configurator_Test.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/tests/data/schema/Factory_Test.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/tests/data/schema/Factory_Test.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/tests/data/schema/Schema_Test.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/tests/data/schema/Validator_Test.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/tests/data/schema/Validator_Test.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/tests/data/time/DateTimeString_Test.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/tests/data/time/DateTimeString_Test.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/tests/data/time/Epochstamp_Test.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/tests/data/time/Epochstamp_Test.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/tests/data/time/TimeClasses_Test.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/tests/data/time/TimeClasses_Test.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/tests/data/types/AlarmCondition_Test.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/tests/data/types/AlarmCondition_Test.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/tests/data/types/Base64_Test.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/tests/data/types/Base64_Test.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/tests/data/types/ByteSwap_Test.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/tests/data/types/ByteSwap_Test.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/tests/data/types/ClassInfo_Test.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/tests/data/types/ClassInfo_Test.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/tests/data/types/Dims_Test.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/tests/data/types/Dims_Test.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/tests/data/types/Exception_Test.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/tests/data/types/Exception_Test.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/tests/data/types/HashFilter_Test.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/tests/data/types/HashFilter_Test.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/tests/data/types/Hash_Test.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/tests/data/types/Hash_Test.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/tests/data/types/NDArray_Test.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/tests/data/types/NDArray_Test.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/tests/data/types/Serializable_Test.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/tests/data/types/Serializable_Test.h +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/tests/data/types/States_Test.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/tests/data/types/States_Test.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/tests/data/types/StringTools_Test.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/tests/data/types/StringTools_Test.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/tests/data/types/Types_Test.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/tests/data/types/Types_Test.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/tests/log/Logger_Test.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/tests/log/Logger_Test.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/tests/net/Amqp_Test.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/tests/net/Broker_Test.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/tests/net/Broker_Test.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/tests/net/EventLoop_Test.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/tests/net/EventLoop_Test.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/tests/net/HttpClient_Test.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/tests/net/HttpClient_Test.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/tests/net/InfluxDbClient_Test.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/tests/net/InfluxDbClient_Test.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/tests/net/MQTcpNetworking.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/tests/net/MQTcpNetworking.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/tests/net/NetworkInterface_Test.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/tests/net/NetworkInterface_Test.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/tests/net/ParseUrl_Test.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/tests/net/ParseUrl_Test.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/tests/net/ReadAsyncStringUntil_Test.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/tests/net/ReadAsyncStringUntil_Test.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/tests/net/Strand_Test.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/tests/net/Strand_Test.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/tests/net/TcpNetworking_Test.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/tests/net/TcpNetworking_Test.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/tests/testRunner.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/tests/testRunner.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/tests/testRunnerNoLoop.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/tests/util/DataLogUtils_Test.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/tests/util/DataLogUtils_Test.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/tests/util/MetaTools_Test.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/tests/util/MetaTools_Test.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/tests/util/Version_Test.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/tests/util/Version_Test.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/tests/xms/ImageData_Test.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/tests/xms/ImageData_Test.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/tests/xms/InputOutputChannel_Test.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/tests/xms/InputOutputChannel_Test.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/tests/xms/Memory_Test.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/tests/xms/Memory_Test.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/tests/xms/SignalSlotable_Test.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/tests/xms/SignalSlotable_Test.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/tests/xms/Signal_Test.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/tests/xms/Signal_Test.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/tests/xms/Slot_Test.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/tests/xms/Slot_Test.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/util/ArrayTools.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/util/DataLogUtils.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/util/DataLogUtils.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/util/JsonToHashParser.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/util/JsonToHashParser.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/util/MetaTools.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/util/PackParameters.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/util/PluginLoader.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/util/PluginLoader.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/util/TimeProfiler.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/util/TimeProfiler.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/util/Version.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/util/Version.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/util/VersionMacros.in +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/util.hpp +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/xms/ImageData.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/xms/ImageData.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/xms/InputChannel.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/xms/InputChannel.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/xms/Memory.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/xms/Memory.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/xms/OutputChannel.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/xms/OutputChannel.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/xms/Signal.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/xms/Signal.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/xms/SignalSlotable.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/xms/Slot.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/xms/Slot.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/xms/Statics.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/xms/Statics.hh +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/karabo/xms.hpp +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/tools/brokerRates/CMakeLists.txt +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/tools/brokerRates/brokerRates.cpp +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/tools/dataLoggerIndex/CMakeLists.txt +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/tools/dataLoggerIndex/idxBuild.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/tools/dataLoggerIndex/idxView.cc +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/tools/scripts/activate.tmpl +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/tools/scripts/karabo-inspectbrokertopic +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/tools/scripts/karabo-monitorjmsbroker +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/tools/scripts/karabo-querybroker +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/tools/scripts/karabo-startinfluxdb +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/tools/scripts/karabo-startopenmq +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/tools/scripts/karabo-startprojectdb +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/tools/scripts/karabo-startrabbitmq +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/tools/scripts/karabo-stopbroker +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/tools/scripts/karabo-stopinfluxdb +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/tools/scripts/karabo-stopprojectdb +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/src/tools/scripts/karabo-stoprabbitmq +0 -0
- {karabo_cpp-3.0.3 → karabo_cpp-3.0.7}/wheel_tests/test_console.py +0 -0
|
@@ -37,7 +37,6 @@ install(DIRECTORY extern/build/include/
|
|
|
37
37
|
PATTERN "boost/fusion" EXCLUDE
|
|
38
38
|
PATTERN "boost/geometry" EXCLUDE
|
|
39
39
|
PATTERN "boost/spirit" EXCLUDE
|
|
40
|
-
PATTERN "boost/preprocessor" EXCLUDE
|
|
41
40
|
PATTERN "boost/wave" EXCLUDE
|
|
42
41
|
PATTERN "boost/beast" EXCLUDE
|
|
43
42
|
PATTERN "boost/qvm" EXCLUDE
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: karabo.cpp
|
|
3
|
-
Version: 3.0.
|
|
3
|
+
Version: 3.0.7
|
|
4
4
|
Summary: Karabo's C++ API and Python bindings thereof
|
|
5
5
|
Keywords: Karabo,SCADA,async,control system
|
|
6
6
|
Author-Email: European XFEL GmbH <opensource@xfel.eu>
|
|
@@ -13,7 +13,7 @@ Project-URL: Homepage, https://github.com/European-XFEL/Karabo
|
|
|
13
13
|
Project-URL: Bug Reports, https://github.com/European-XFEL/Karabo/issues
|
|
14
14
|
Project-URL: Source, https://github.com/European-XFEL/Karabo
|
|
15
15
|
Requires-Python: ==3.12.*
|
|
16
|
-
Requires-Dist: karabo-native==3.0.
|
|
16
|
+
Requires-Dist: karabo-native==3.0.7
|
|
17
17
|
Description-Content-Type: text/markdown
|
|
18
18
|
|
|
19
19
|
# Karabo SCADA Framework - C++ API and Service Devices
|
|
Binary file
|
|
Binary file
|
|
@@ -145,12 +145,6 @@ install_python() {
|
|
|
145
145
|
safeRunCommandQuiet "conan remote update conancenter --url https://center2.conan.io"
|
|
146
146
|
fi
|
|
147
147
|
|
|
148
|
-
# Some dependencies, like libpng specify minimum required versions of cmake to be older than
|
|
149
|
-
# "3.5" - starting with cmake "4.X", the minimum cmake version must be at least "3.5".
|
|
150
|
-
# Details at https://cmake.org/cmake/help/v4.0/release/4.0.html#id14
|
|
151
|
-
# Setting the environment variable below allows passing the cmake check.
|
|
152
|
-
export CMAKE_POLICY_VERSION_MINIMUM="3.5"
|
|
153
|
-
|
|
154
148
|
safeRunCommandQuiet "conan install conanfile-bootstrap.txt $folder_opts $build_opts $profile_opts"
|
|
155
149
|
|
|
156
150
|
# ensure that python can always find its libpython.so
|
|
@@ -283,6 +277,12 @@ else
|
|
|
283
277
|
conan --version
|
|
284
278
|
fi
|
|
285
279
|
|
|
280
|
+
# Some dependencies, like libpng specify minimum required versions of cmake to be older than
|
|
281
|
+
# "3.5" - starting with cmake "4.X", the minimum cmake version must be at least "3.5".
|
|
282
|
+
# Details at https://cmake.org/cmake/help/v4.0/release/4.0.html#id14
|
|
283
|
+
# Setting the environment variable below allows passing the cmake check.
|
|
284
|
+
export CMAKE_POLICY_VERSION_MINIMUM="3.5"
|
|
285
|
+
|
|
286
286
|
# python download and install to allow full bootstrap
|
|
287
287
|
# install framework python dependencies via pip
|
|
288
288
|
check_for $INSTALL_PREFIX/bin/python
|
|
@@ -3,7 +3,7 @@ requires = ["scikit-build-core"]
|
|
|
3
3
|
build-backend = "scikit_build_core.build"
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
|
-
version = "3.0.
|
|
6
|
+
version = "3.0.7"
|
|
7
7
|
name = "karabo.cpp"
|
|
8
8
|
description = "Karabo's C++ API and Python bindings thereof"
|
|
9
9
|
readme = "README.md"
|
|
@@ -38,7 +38,7 @@ classifiers = [
|
|
|
38
38
|
# For an analysis of this field vs pip's requirements files see:
|
|
39
39
|
# https://packaging.python.org/discussions/install-requires-vs-requirements/
|
|
40
40
|
dependencies = [
|
|
41
|
-
"karabo-native==3.0.
|
|
41
|
+
"karabo-native==3.0.7",
|
|
42
42
|
]
|
|
43
43
|
|
|
44
44
|
|
|
@@ -130,5 +130,5 @@ before-build = "pip3 install conan==2.19.0 && pip3 install numpy==2.0.1 && pytho
|
|
|
130
130
|
|
|
131
131
|
test-requires = ["pytest"]
|
|
132
132
|
# these are minimally required for a C++ server to start
|
|
133
|
-
before-test = "mkdir /karabo && mkdir /karabo/var && mkdir /karabo/var/data && mkdir /karabo/plugins && pip install karabo.native==3.0.
|
|
133
|
+
before-test = "mkdir /karabo && mkdir /karabo/var && mkdir /karabo/var/data && mkdir /karabo/plugins && pip install karabo.native==3.0.7 --index-url 'https://gitlab-ci-token:glcbt-64_rQzK5PzG5pw-grW5ESAR@git.xfel.eu/api/v4/projects/5003/packages/pypi/simple' --extra-index-url https://pypi.org"
|
|
134
134
|
test-command = "KARABO=/karabo KARABO_BROKER=amqp://xfel:karabo@exfl-broker-1:5672 pytest {project}/wheel_tests"
|
|
@@ -49,7 +49,8 @@ void exportPyUtilAlarmConditionElement(py::module_& m) {
|
|
|
49
49
|
|
|
50
50
|
a.def("displayedName", &AlarmConditionElement::displayedName, py::return_value_policy::reference_internal);
|
|
51
51
|
|
|
52
|
-
a.def("key", &AlarmConditionElement::key, py::
|
|
52
|
+
a.def("key", &AlarmConditionElement::key, py::arg("name"), py::arg("strict") = true,
|
|
53
|
+
py::return_value_policy::reference_internal);
|
|
53
54
|
|
|
54
55
|
a.def("tags",
|
|
55
56
|
(AlarmConditionElement & (AlarmConditionElement::*)(std::string const&, std::string const&)) &
|
|
@@ -461,8 +461,8 @@ void exportPyUtilHash(py::module_& m) {
|
|
|
461
461
|
g = h.get('a.b') # reference to Hash('c', 1)
|
|
462
462
|
g.set('c', 2)
|
|
463
463
|
assert(h.get('a.b.c') == 2)
|
|
464
|
-
del
|
|
465
|
-
print(g) #
|
|
464
|
+
del h # delete whole tree
|
|
465
|
+
print(g) # inner Hash still valid
|
|
466
466
|
)pbdoc");
|
|
467
467
|
|
|
468
468
|
h.def(
|
|
@@ -217,7 +217,8 @@ void exportPyUtilSchemaElement(py::module_& m) {
|
|
|
217
217
|
.def("description", &NDArrayElement::description, py::return_value_policy::reference_internal)
|
|
218
218
|
.def("displayedName", &NDArrayElement::displayedName, py::return_value_policy::reference_internal)
|
|
219
219
|
.def("init", &NDArrayElement::init, py::return_value_policy::reference_internal)
|
|
220
|
-
.def("key", &NDArrayElement::key, py::
|
|
220
|
+
.def("key", &NDArrayElement::key, py::arg("name"), py::arg("strict") = true,
|
|
221
|
+
py::return_value_policy::reference_internal)
|
|
221
222
|
.def("readOnly", &NDArrayElement::readOnly, py::return_value_policy::reference_internal)
|
|
222
223
|
.def("reconfigurable", &NDArrayElement::reconfigurable, py::return_value_policy::reference_internal)
|
|
223
224
|
.def("commit", &NDArrayElement::commit, py::return_value_policy::reference_internal);
|
|
@@ -234,31 +234,31 @@ class CommonWrap {
|
|
|
234
234
|
KARABO_PYTHON_NUMERIC_ATTRIBUTES(T); \
|
|
235
235
|
}
|
|
236
236
|
|
|
237
|
-
#define KARABO_PYTHON_COMMON_ATTRIBUTES(T)
|
|
238
|
-
.def("observerAccess", &T::observerAccess, py::return_value_policy::reference_internal)
|
|
239
|
-
.def("operatorAccess", &T::operatorAccess, py::return_value_policy::reference_internal)
|
|
240
|
-
.def("expertAccess", &T::expertAccess, py::return_value_policy::reference_internal)
|
|
241
|
-
.def("allowedStates", &CommonWrap<T>::allowedStatesPy, py::return_value_policy::reference_internal)
|
|
242
|
-
.def("assignmentInternal", &T::assignmentInternal, py::return_value_policy::reference_internal)
|
|
243
|
-
.def("assignmentMandatory", &T::assignmentMandatory, py::return_value_policy::reference_internal)
|
|
244
|
-
.def("assignmentOptional", &T::assignmentOptional, py::return_value_policy::reference_internal)
|
|
245
|
-
.def("alias", &AliasAttributeWrap<T>::aliasPy, py::return_value_policy::reference_internal)
|
|
246
|
-
.def("commit", &T::commit, py::return_value_policy::reference_internal)
|
|
247
|
-
.def("commit", (T & (T::*)(karabo::data::Schema&))(&T::commit), py::arg("expected"),
|
|
248
|
-
py::return_value_policy::reference_internal)
|
|
249
|
-
.def("description", &T::description, py::return_value_policy::reference_internal)
|
|
250
|
-
.def("displayedName", &T::displayedName, py::return_value_policy::reference_internal)
|
|
251
|
-
.def("unit", &T::unit, py::return_value_policy::reference_internal)
|
|
252
|
-
.def("metricPrefix", &T::metricPrefix, py::return_value_policy::reference_internal)
|
|
253
|
-
.def("init", &T::init, py::return_value_policy::reference_internal)
|
|
254
|
-
.def("key", &T::key, py::return_value_policy::reference_internal)
|
|
255
|
-
.def("setSpecialDisplayType", (T & (T::*)(std::string const&))(&T::setSpecialDisplayType),
|
|
256
|
-
py::arg("displayType"), py::return_value_policy::reference_internal)
|
|
257
|
-
.def("readOnly", &T::readOnly, py::return_value_policy::reference_internal)
|
|
258
|
-
.def("reconfigurable", &T::reconfigurable, py::return_value_policy::reference_internal)
|
|
259
|
-
.def("tags", (T & (T::*)(std::string const&, std::string const&))(&T::tags), py::arg("tags"),
|
|
260
|
-
py::arg("sep") = " ,;", py::return_value_policy::reference_internal)
|
|
261
|
-
.def("tags", (T & (T::*)(std::vector<std::string> const&))(&T::tags), py::arg("tags"),
|
|
237
|
+
#define KARABO_PYTHON_COMMON_ATTRIBUTES(T) \
|
|
238
|
+
.def("observerAccess", &T::observerAccess, py::return_value_policy::reference_internal) \
|
|
239
|
+
.def("operatorAccess", &T::operatorAccess, py::return_value_policy::reference_internal) \
|
|
240
|
+
.def("expertAccess", &T::expertAccess, py::return_value_policy::reference_internal) \
|
|
241
|
+
.def("allowedStates", &CommonWrap<T>::allowedStatesPy, py::return_value_policy::reference_internal) \
|
|
242
|
+
.def("assignmentInternal", &T::assignmentInternal, py::return_value_policy::reference_internal) \
|
|
243
|
+
.def("assignmentMandatory", &T::assignmentMandatory, py::return_value_policy::reference_internal) \
|
|
244
|
+
.def("assignmentOptional", &T::assignmentOptional, py::return_value_policy::reference_internal) \
|
|
245
|
+
.def("alias", &AliasAttributeWrap<T>::aliasPy, py::return_value_policy::reference_internal) \
|
|
246
|
+
.def("commit", &T::commit, py::return_value_policy::reference_internal) \
|
|
247
|
+
.def("commit", (T & (T::*)(karabo::data::Schema&))(&T::commit), py::arg("expected"), \
|
|
248
|
+
py::return_value_policy::reference_internal) \
|
|
249
|
+
.def("description", &T::description, py::return_value_policy::reference_internal) \
|
|
250
|
+
.def("displayedName", &T::displayedName, py::return_value_policy::reference_internal) \
|
|
251
|
+
.def("unit", &T::unit, py::return_value_policy::reference_internal) \
|
|
252
|
+
.def("metricPrefix", &T::metricPrefix, py::return_value_policy::reference_internal) \
|
|
253
|
+
.def("init", &T::init, py::return_value_policy::reference_internal) \
|
|
254
|
+
.def("key", &T::key, py::arg("name"), py::arg("strict") = true, py::return_value_policy::reference_internal) \
|
|
255
|
+
.def("setSpecialDisplayType", (T & (T::*)(std::string const&))(&T::setSpecialDisplayType), \
|
|
256
|
+
py::arg("displayType"), py::return_value_policy::reference_internal) \
|
|
257
|
+
.def("readOnly", &T::readOnly, py::return_value_policy::reference_internal) \
|
|
258
|
+
.def("reconfigurable", &T::reconfigurable, py::return_value_policy::reference_internal) \
|
|
259
|
+
.def("tags", (T & (T::*)(std::string const&, std::string const&))(&T::tags), py::arg("tags"), \
|
|
260
|
+
py::arg("sep") = " ,;", py::return_value_policy::reference_internal) \
|
|
261
|
+
.def("tags", (T & (T::*)(std::vector<std::string> const&))(&T::tags), py::arg("tags"), \
|
|
262
262
|
py::return_value_policy::reference_internal)
|
|
263
263
|
|
|
264
264
|
#define KARABO_PYTHON_OPTIONS_NONVECTOR(T) \
|
|
@@ -315,7 +315,8 @@ class CommonWrap {
|
|
|
315
315
|
.def("observerAccess", &NameElem::observerAccess, py::return_value_policy::reference_internal) \
|
|
316
316
|
.def("operatorAccess", &NameElem::operatorAccess, py::return_value_policy::reference_internal) \
|
|
317
317
|
.def("expertAccess", &NameElem::expertAccess, py::return_value_policy::reference_internal) \
|
|
318
|
-
.def("key", &NameElem::key, py::
|
|
318
|
+
.def("key", &NameElem::key, py::arg("name"), py::arg("strict") = true, \
|
|
319
|
+
py::return_value_policy::reference_internal) \
|
|
319
320
|
.def("description", &NameElem::description, py::return_value_policy::reference_internal) \
|
|
320
321
|
.def("displayedName", &NameElem::displayedName, py::return_value_policy::reference_internal) \
|
|
321
322
|
.def("alias", &AliasAttributeWrap<NameElem>::aliasPy, py::return_value_policy::reference_internal) \
|
|
@@ -125,7 +125,8 @@ void exportPyUtilSchemaTableElement(py::module_& m) {
|
|
|
125
125
|
.def("description", &TableElement::description, py::return_value_policy::reference_internal)
|
|
126
126
|
.def("displayedName", &TableElement::displayedName, py::return_value_policy::reference_internal)
|
|
127
127
|
.def("init", &TableElement::init, py::return_value_policy::reference_internal)
|
|
128
|
-
.def("key", &TableElement::key, py::
|
|
128
|
+
.def("key", &TableElement::key, py::arg("name"), py::arg("strict") = true,
|
|
129
|
+
py::return_value_policy::reference_internal)
|
|
129
130
|
.def("reconfigurable", &TableElement::reconfigurable, py::return_value_policy::reference_internal)
|
|
130
131
|
.def("tags",
|
|
131
132
|
(TableElement & (TableElement::*)(std::string const&, std::string const&)) & TableElement::tags,
|
|
@@ -47,7 +47,8 @@ void exportPyUtilStateElement(py::module_& m) {
|
|
|
47
47
|
|
|
48
48
|
se.def("displayedName", &StateElement::displayedName, py::return_value_policy::reference_internal);
|
|
49
49
|
|
|
50
|
-
se.def("key", &StateElement::key, py::
|
|
50
|
+
se.def("key", &StateElement::key, py::arg("name"), py::arg("strict") = true,
|
|
51
|
+
py::return_value_policy::reference_internal);
|
|
51
52
|
|
|
52
53
|
se.def("tags", (StateElement & (StateElement::*)(std::string const&, std::string const&)) & StateElement::tags,
|
|
53
54
|
py::arg("tags"), py::arg("sep") = " ,;", py::return_value_policy::reference_internal);
|
|
@@ -210,7 +210,8 @@ void exportPyXmsImageDataElement(py::module_& m) {
|
|
|
210
210
|
|
|
211
211
|
el.def(py::init<Schema&>(), py::arg("expected"));
|
|
212
212
|
|
|
213
|
-
el.def("key", &ImageDataElement::key, py::arg("key"), py::
|
|
213
|
+
el.def("key", &ImageDataElement::key, py::arg("key"), py::arg("strict") = true,
|
|
214
|
+
py::return_value_policy::reference_internal);
|
|
214
215
|
|
|
215
216
|
el.def("displayedName", &ImageDataElement::displayedName, py::arg("name"),
|
|
216
217
|
py::return_value_policy::reference_internal);
|
|
@@ -85,7 +85,8 @@ void exportPyXmsSlotElement(py::module_& m) {
|
|
|
85
85
|
sl.def("displayedName", &SlotElementBase<SLOT_ELEMENT>::displayedName, py::arg("displayedName"),
|
|
86
86
|
py::return_value_policy::reference_internal);
|
|
87
87
|
|
|
88
|
-
sl.def("key", &SlotElementBase<SLOT_ELEMENT>::key, py::arg("name"), py::
|
|
88
|
+
sl.def("key", &SlotElementBase<SLOT_ELEMENT>::key, py::arg("name"), py::arg("strict") = true,
|
|
89
|
+
py::return_value_policy::reference_internal);
|
|
89
90
|
|
|
90
91
|
sl.def("alias", &wrapper::AliasAttributePy<SLOT_ELEMENT>::setAlias, py::return_value_policy::reference_internal);
|
|
91
92
|
|
|
@@ -66,10 +66,10 @@ endif()
|
|
|
66
66
|
# Extracts KARABO_VERSION from the appropriate Git tag, writes to
|
|
67
67
|
# a file to be used by the Karabo Framework at build time.
|
|
68
68
|
message(STATUS "Resolving Karabo Version from Git repository")
|
|
69
|
-
set(KARABO_VERSION "3.0.
|
|
69
|
+
set(KARABO_VERSION "3.0.7")
|
|
70
70
|
set(KARABO_VERSION_MAJOR "3")
|
|
71
71
|
set(KARABO_VERSION_MINOR "0")
|
|
72
|
-
set(KARABO_VERSION_PATCH "
|
|
72
|
+
set(KARABO_VERSION_PATCH "7")
|
|
73
73
|
message(STATUS "Karabo Version: ${KARABO_VERSION}")
|
|
74
74
|
message(STATUS "Karabo Version Major: ${KARABO_VERSION_MAJOR}")
|
|
75
75
|
message(STATUS "Karabo Version Minor: ${KARABO_VERSION_MINOR}")
|
|
@@ -158,10 +158,7 @@ namespace karabo {
|
|
|
158
158
|
ALARM_ELEMENT(expected)
|
|
159
159
|
.key("alarmCondition")
|
|
160
160
|
.displayedName("Alarm condition")
|
|
161
|
-
.description(
|
|
162
|
-
"The current alarm condition of the device. "
|
|
163
|
-
"Evaluates to the highest condition on any"
|
|
164
|
-
" property if not set manually.")
|
|
161
|
+
.description("The current alarm condition of the device.")
|
|
165
162
|
.initialValue(AlarmCondition::NONE)
|
|
166
163
|
.commit();
|
|
167
164
|
|
|
@@ -717,23 +714,53 @@ namespace karabo {
|
|
|
717
714
|
onTimeTick(id, sec, frac, period);
|
|
718
715
|
}
|
|
719
716
|
|
|
720
|
-
|
|
721
717
|
void Device::appendSchemaMaxSize(const std::string& path, unsigned int value, bool emitFlag) {
|
|
718
|
+
internalAppendSchemaMultiMaxSize({path}, {value}, emitFlag);
|
|
719
|
+
}
|
|
720
|
+
|
|
721
|
+
void Device::appendSchemaMultiMaxSize(const std::vector<std::string>& paths,
|
|
722
|
+
const std::vector<unsigned int>& values) {
|
|
723
|
+
internalAppendSchemaMultiMaxSize(paths, values, true);
|
|
724
|
+
}
|
|
725
|
+
|
|
726
|
+
void Device::internalAppendSchemaMultiMaxSize(const std::vector<std::string>& paths,
|
|
727
|
+
const std::vector<unsigned int>& values, bool emitFlag) {
|
|
722
728
|
using karabo::data::OVERWRITE_ELEMENT;
|
|
729
|
+
|
|
730
|
+
if (paths.size() != values.size()) {
|
|
731
|
+
throw KARABO_PARAMETER_EXCEPTION("Number of paths and values differs.");
|
|
732
|
+
}
|
|
723
733
|
std::lock_guard<std::mutex> lock(m_objectStateChangeMutex);
|
|
724
|
-
|
|
725
|
-
|
|
734
|
+
for (const std::string& path : paths) {
|
|
735
|
+
if (!m_fullSchema.has(path)) {
|
|
736
|
+
throw KARABO_PARAMETER_EXCEPTION("Path \"" + path + "\" not found in the device schema.");
|
|
737
|
+
}
|
|
726
738
|
}
|
|
727
739
|
m_stateDependentSchema.clear();
|
|
728
740
|
// Do not touch static schema - that must be restorable via updateSchema(Schema())
|
|
729
741
|
// OVERWRITE_ELEMENT checks whether max size attribute makes sense for path
|
|
730
|
-
|
|
731
|
-
|
|
732
|
-
|
|
742
|
+
size_t index = 0;
|
|
743
|
+
for (const std::string& path : paths) {
|
|
744
|
+
const unsigned int value = values[index++]; // postfix!
|
|
745
|
+
OVERWRITE_ELEMENT(m_fullSchema).key(path).setNewMaxSize(value).commit();
|
|
746
|
+
if (m_injectedSchema.has(path)) {
|
|
747
|
+
OVERWRITE_ELEMENT(m_injectedSchema).key(path).setNewMaxSize(value).commit();
|
|
748
|
+
}
|
|
733
749
|
}
|
|
734
750
|
|
|
735
751
|
// Notify the distributed system if needed
|
|
752
|
+
// (and, as in updateSchema and appendSchema, better before recreating output channels):
|
|
736
753
|
if (emitFlag) emit("signalSchemaUpdated", m_fullSchema, m_deviceId);
|
|
754
|
+
|
|
755
|
+
// If the vector was part of an output channel schema, recreate the channel.
|
|
756
|
+
// The new incarnation of the channel receives the up-to-date schema for validation.
|
|
757
|
+
for (const std::string& output : getOutputChannelNames()) {
|
|
758
|
+
for (const std::string& path : paths) {
|
|
759
|
+
if (path.starts_with(output)) {
|
|
760
|
+
prepareOutputChannel(output);
|
|
761
|
+
}
|
|
762
|
+
}
|
|
763
|
+
}
|
|
737
764
|
}
|
|
738
765
|
|
|
739
766
|
|
|
@@ -811,20 +811,32 @@ namespace karabo {
|
|
|
811
811
|
unsigned long long period) {}
|
|
812
812
|
|
|
813
813
|
/**
|
|
814
|
-
* Append Schema to change
|
|
814
|
+
* Append Schema to change or set the maximum size for a vector or table property
|
|
815
815
|
*
|
|
816
816
|
* This is similar to the more general appendSchema, but dedicated to a common use case.
|
|
817
817
|
*
|
|
818
|
-
*
|
|
818
|
+
* Use 'appendSchemaMultiMaxSize' if the maximum size of several properties should be changed.
|
|
819
819
|
*
|
|
820
|
-
* @param path indicates the
|
|
821
|
-
* @param value is the new maximum size of the
|
|
820
|
+
* @param path indicates the property which should be a Vector- or TableElement
|
|
821
|
+
* @param value is the new maximum size of the property
|
|
822
822
|
* @param emitFlag indicates if others should be informed about this Schema update.
|
|
823
|
-
*
|
|
824
|
-
* set this to true only for the last call.
|
|
823
|
+
* Should only be set to false if followed by a call to appendSchema(..).
|
|
825
824
|
*/
|
|
826
825
|
void appendSchemaMaxSize(const std::string& path, unsigned int value, bool emitFlag = true);
|
|
827
826
|
|
|
827
|
+
/**
|
|
828
|
+
* Append Schema to change or set the maximum size information for several properties
|
|
829
|
+
*
|
|
830
|
+
* @param paths property names of Vector- or TableElements
|
|
831
|
+
* @param values the new maximum sizes of these properties (same order and length as 'paths')
|
|
832
|
+
*/
|
|
833
|
+
void appendSchemaMultiMaxSize(const std::vector<std::string>& paths,
|
|
834
|
+
const std::vector<unsigned int>& values);
|
|
835
|
+
|
|
836
|
+
private:
|
|
837
|
+
void internalAppendSchemaMultiMaxSize(const std::vector<std::string>& paths,
|
|
838
|
+
const std::vector<unsigned int>& values, bool emitFlag);
|
|
839
|
+
|
|
828
840
|
protected: // Functions and Classes
|
|
829
841
|
virtual void preReconfigure(karabo::data::Hash& incomingReconfiguration) {}
|
|
830
842
|
|
|
@@ -58,7 +58,6 @@ namespace karabo {
|
|
|
58
58
|
// See also OutputChannel::initializeServerConnection(...)
|
|
59
59
|
const int kMaxCompleteInitializationAttempts = 2500;
|
|
60
60
|
|
|
61
|
-
// TODO: Move this to a constant of ConfigurationManager device once it becomes part of the Framework.
|
|
62
61
|
const std::string DEFAULT_CONFIG_MANAGER_ID("KaraboConfigurationManager");
|
|
63
62
|
|
|
64
63
|
void DeviceClient::initServiceDeviceIds(const Hash& serviceDeviceIds) {
|
|
@@ -81,8 +80,7 @@ namespace karabo {
|
|
|
81
80
|
m_internalTimeout(3000),
|
|
82
81
|
m_topologyInitialized(false),
|
|
83
82
|
m_ageingTimer(karabo::net::EventLoop::getIOService()),
|
|
84
|
-
m_getOlder(false) // Sic! To start aging in setAgeing below.
|
|
85
|
-
,
|
|
83
|
+
m_getOlder(false), // Sic! To start aging in setAgeing below.
|
|
86
84
|
m_signalsChangedTimer(karabo::net::EventLoop::getIOService()),
|
|
87
85
|
m_runSignalsChangedTimer(false),
|
|
88
86
|
m_signalsChangedInterval(-1),
|
|
@@ -119,8 +117,7 @@ namespace karabo {
|
|
|
119
117
|
m_internalTimeout(2000),
|
|
120
118
|
m_topologyInitialized(false),
|
|
121
119
|
m_ageingTimer(karabo::net::EventLoop::getIOService()),
|
|
122
|
-
m_getOlder(false) // Sic! To start aging in setAgeing below.
|
|
123
|
-
,
|
|
120
|
+
m_getOlder(false), // Sic! To start aging in setAgeing below.
|
|
124
121
|
m_signalsChangedTimer(karabo::net::EventLoop::getIOService()),
|
|
125
122
|
m_runSignalsChangedTimer(false),
|
|
126
123
|
m_signalsChangedInterval(-1),
|
|
@@ -203,18 +200,15 @@ namespace karabo {
|
|
|
203
200
|
bind_weak(&karabo::core::DeviceClient::_slotClassSchema, this, _1, _2, _3), "_slotClassSchema");
|
|
204
201
|
p->registerSlot<Schema, string>(bind_weak(&karabo::core::DeviceClient::_slotSchemaUpdated, this, _1, _2),
|
|
205
202
|
"_slotSchemaUpdated");
|
|
203
|
+
// We hook our methods to the existing (in SignalSlotable) slots for instance monitoring
|
|
206
204
|
p->registerSlot<string, Hash>(bind_weak(&karabo::core::DeviceClient::_slotInstanceNew, this, _1, _2),
|
|
207
|
-
"
|
|
205
|
+
"slotInstanceNew");
|
|
208
206
|
p->registerSlot<string, Hash>(bind_weak(&karabo::core::DeviceClient::_slotInstanceGone, this, _1, _2),
|
|
209
|
-
"
|
|
207
|
+
"slotInstanceGone");
|
|
210
208
|
p->registerSlot<string, Hash>(bind_weak(&karabo::core::DeviceClient::_slotInstanceUpdated, this, _1, _2),
|
|
211
|
-
"
|
|
209
|
+
"slotInstanceUpdated");
|
|
210
|
+
// A slot to follow logger map updates
|
|
212
211
|
p->registerSlot<Hash>(bind_weak(&karabo::core::DeviceClient::_slotLoggerMap, this, _1), "_slotLoggerMap");
|
|
213
|
-
|
|
214
|
-
// No advantage from asyncConnect since connecting to one's own signal is just a call chain:
|
|
215
|
-
p->connect("", "signalInstanceNew", "_slotInstanceNew");
|
|
216
|
-
p->connect("", "signalInstanceGone", "_slotInstanceGone");
|
|
217
|
-
p->connect("", "signalInstanceUpdated", "_slotInstanceUpdated");
|
|
218
212
|
}
|
|
219
213
|
|
|
220
214
|
|
|
@@ -380,11 +374,11 @@ namespace karabo {
|
|
|
380
374
|
//
|
|
381
375
|
// As a workaround, we try to clarify the situation:
|
|
382
376
|
// - Take care that we do not track the instance.
|
|
383
|
-
// - Trigger a call to our
|
|
377
|
+
// - Trigger a call to our slotDiscoverAnswer that will then trigger "slotInstanceNew" (but only
|
|
384
378
|
// if instance is untracked).
|
|
385
379
|
if (auto sigSlot = m_signalSlotable.lock()) {
|
|
386
380
|
const bool wasTracked = sigSlot->eraseTrackedInstance(instanceId);
|
|
387
|
-
sigSlot->call(instanceId, "
|
|
381
|
+
sigSlot->call(instanceId, "slotDiscover", getInstanceId());
|
|
388
382
|
KARABO_LOG_FRAMEWORK_WARN << getInstanceId() << ": Received instance update from '"
|
|
389
383
|
<< instanceId << "' although it is not in runtime description"
|
|
390
384
|
<< (wasTracked ? " (but was tracked!)" : "")
|
|
@@ -23,21 +23,33 @@
|
|
|
23
23
|
#include "karabo/data/types/Exception.hh"
|
|
24
24
|
#include "karabo/data/types/Hash.hh"
|
|
25
25
|
|
|
26
|
-
void karabo::data::checkPropertyPath(const std::string& name) {
|
|
26
|
+
void karabo::data::checkPropertyPath(const std::string& name, bool strict) {
|
|
27
27
|
if (name.empty() || name.back() == Hash::k_defaultSep) {
|
|
28
28
|
throw KARABO_PARAMETER_EXCEPTION(("Bad (sub-)key '" + name) += "': empty");
|
|
29
29
|
}
|
|
30
30
|
// '/' is special: only allowed for backward compatibility in metro devices of DA group
|
|
31
31
|
constexpr char allowedCharacters[] =
|
|
32
|
-
".0123456789_/"
|
|
32
|
+
".0123456789_/" // In 3.1.X move '/' to tolerated characters?
|
|
33
33
|
"abcdefghijklmnopqrstuvwxyz"
|
|
34
34
|
"ABCDEFGHIJKLMNOPQRSTUVWXYZ";
|
|
35
35
|
assert(allowedCharacters[0] == karabo::data::Hash::k_defaultSep);
|
|
36
36
|
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
37
|
+
if (strict) {
|
|
38
|
+
const size_t pos = name.find_first_not_of(allowedCharacters);
|
|
39
|
+
if (pos != std::string::npos) {
|
|
40
|
+
std::string msg(("Bad (sub-)key '" + name) += "': illegal character at position ");
|
|
41
|
+
throw KARABO_PARAMETER_EXCEPTION(msg += toString(pos));
|
|
42
|
+
}
|
|
43
|
+
} else {
|
|
44
|
+
// If requested to be not strict, we tolerate some characters.
|
|
45
|
+
// Note we must not tolerate ',', '=', or space for sake of the influxDB line protocol!
|
|
46
|
+
const std::string toleratedCharacters("@-");
|
|
47
|
+
const std::string allAllowedCharacters(allowedCharacters + toleratedCharacters);
|
|
48
|
+
const size_t pos = name.find_first_not_of(allAllowedCharacters);
|
|
49
|
+
if (pos != std::string::npos) {
|
|
50
|
+
std::string msg(("Bad (sub-)key '" + name) += "': not tolerated character at position ");
|
|
51
|
+
throw KARABO_PARAMETER_EXCEPTION(msg += toString(pos));
|
|
52
|
+
}
|
|
41
53
|
}
|
|
42
54
|
// Now check that leading character of (last part of) name is not a digit
|
|
43
55
|
// (non-last parts are checked when their nodes were added)
|
|
@@ -40,8 +40,9 @@ namespace karabo {
|
|
|
40
40
|
* Nestes paths (i.e. paths with dots) are allowed.
|
|
41
41
|
*
|
|
42
42
|
* @param name the key to be checked
|
|
43
|
+
* @param strict specify whether to tolerate more than just letter, digits, underscore
|
|
43
44
|
*/
|
|
44
|
-
void checkPropertyPath(const std::string& name);
|
|
45
|
+
void checkPropertyPath(const std::string& name, bool strict);
|
|
45
46
|
|
|
46
47
|
/**
|
|
47
48
|
* The BaseElement class is a base class for various element types: simple, vector, choice, list
|
|
@@ -74,13 +75,13 @@ namespace karabo {
|
|
|
74
75
|
* .commit();
|
|
75
76
|
* @endcode
|
|
76
77
|
*/
|
|
77
|
-
virtual Derived& key(const std::string& name) {
|
|
78
|
+
virtual Derived& key(const std::string& name, bool strict = true) {
|
|
78
79
|
// Check whether full path (that in fact has to be specified here!) or its last
|
|
79
80
|
// key is empty - empty non-last keys are caught elsewhere.
|
|
80
81
|
// Also ensure that keys are usable with MDL proxies, i.e. only letters, digits,
|
|
81
82
|
// underscores - and a digit not as first character.
|
|
82
83
|
|
|
83
|
-
checkPropertyPath(name); // throws if not OK
|
|
84
|
+
checkPropertyPath(name, strict); // throws if not OK
|
|
84
85
|
|
|
85
86
|
m_node->m_key = name;
|
|
86
87
|
return *(static_cast<Derived*>(this));
|
|
@@ -92,6 +92,7 @@ namespace karabo {
|
|
|
92
92
|
/**
|
|
93
93
|
* The <b>key</b> method serves for setting up a unique name for the element.
|
|
94
94
|
* @param name Unique name for the key
|
|
95
|
+
* @param strict keep as true to get the strongly recommended strict validation of characters in 'name'
|
|
95
96
|
* @return reference to the Element (to allow method's chaining)
|
|
96
97
|
*
|
|
97
98
|
* <b>Example:</b>
|
|
@@ -102,10 +103,10 @@ namespace karabo {
|
|
|
102
103
|
* .commit();
|
|
103
104
|
* @endcode
|
|
104
105
|
*/
|
|
105
|
-
Derived& key(const std::string& key) {
|
|
106
|
+
Derived& key(const std::string& key, bool strict = true) {
|
|
106
107
|
using namespace karabo::data;
|
|
107
108
|
m_key = key;
|
|
108
|
-
NODE_ELEMENT(m_schema).key(m_key).template appendParametersOf<Described>().commit();
|
|
109
|
+
NODE_ELEMENT(m_schema).key(m_key, strict).template appendParametersOf<Described>().commit();
|
|
109
110
|
|
|
110
111
|
return *(static_cast<Derived*>(this));
|
|
111
112
|
}
|
|
@@ -682,7 +682,7 @@ namespace karabo {
|
|
|
682
682
|
remote().enableInstanceTracking();
|
|
683
683
|
|
|
684
684
|
// Publish logger map read from disc. Do that as late as possible in the initialization procedure
|
|
685
|
-
// to give those interested the chance to register their slots after we sent
|
|
685
|
+
// to give those interested the chance to register their slots after we sent slotInstanceNew.
|
|
686
686
|
{
|
|
687
687
|
std::lock_guard<std::mutex> lock(
|
|
688
688
|
m_loggerMapMutex); // m_loggerMap must not be changed while we process it
|
|
@@ -570,11 +570,14 @@ namespace karabo::net {
|
|
|
570
570
|
<< static_cast<int>(m_channelStatus);
|
|
571
571
|
break;
|
|
572
572
|
case ChannelStatus::CREATE_QUEUE: {
|
|
573
|
-
|
|
573
|
+
// auto-delete: deleted when last consumer is finished using it
|
|
574
|
+
// exclusive: can be accessed only from our connection, deleted when that closes
|
|
575
|
+
m_channel->declareQueue(m_queue, AMQP::autodelete + AMQP::exclusive, m_queueArgs)
|
|
574
576
|
.onSuccess([wSelf](const std::string& name, int msgCount, int consumerCount) {
|
|
575
577
|
if (auto self = wSelf.lock()) {
|
|
576
578
|
if (consumerCount > 0) {
|
|
577
579
|
// Queue already exists, but we need a unique one for us - attach timestamp
|
|
580
|
+
// (since queue is exclusive, happens only for same id using same connection)
|
|
578
581
|
KARABO_LOG_FRAMEWORK_INFO_C("AmqpClient")
|
|
579
582
|
<< "Queue " << self->m_queue
|
|
580
583
|
<< " already has a consumer, append some bytes from clock and try again.";
|
|
@@ -601,15 +604,33 @@ namespace karabo::net {
|
|
|
601
604
|
}) // end of success handler
|
|
602
605
|
.onError([wSelf](const char* message) {
|
|
603
606
|
if (auto self = wSelf.lock()) {
|
|
604
|
-
const std::
|
|
605
|
-
|
|
606
|
-
|
|
607
|
-
|
|
608
|
-
|
|
609
|
-
|
|
610
|
-
|
|
611
|
-
|
|
612
|
-
|
|
607
|
+
const std::string_view msg(message);
|
|
608
|
+
constexpr auto np = std::string::npos;
|
|
609
|
+
if (msg.find("RESOURCE_LOCKED") != np && msg.find("cannot obtain exclusive") != np) {
|
|
610
|
+
KARABO_LOG_FRAMEWORK_INFO
|
|
611
|
+
<< "Queue " << self->m_queue
|
|
612
|
+
<< " already created, append some bytes from clock and try again. "
|
|
613
|
+
<< "Will recreate channel (was " << (self->m_channel->usable() ? "" : "not ")
|
|
614
|
+
<< "OK)."; // should be not OK
|
|
615
|
+
std::ostringstream oss;
|
|
616
|
+
oss << ":" << std::hex << std::chrono::steady_clock::now().time_since_epoch().count();
|
|
617
|
+
self->m_queue += oss.str();
|
|
618
|
+
self->m_channelStatus = ChannelStatus::CREATE;
|
|
619
|
+
AsyncHandler callback;
|
|
620
|
+
callback.swap(self->m_channelPreparationCallback);
|
|
621
|
+
self->asyncPrepareChannel(std::move(callback));
|
|
622
|
+
} else {
|
|
623
|
+
const std::string queue(self->m_instanceId == self->m_queue ? ""
|
|
624
|
+
: self->m_queue + " ");
|
|
625
|
+
KARABO_LOG_FRAMEWORK_WARN << self->m_instanceId << ": Declaring queue " << queue
|
|
626
|
+
<< "failed: " << message;
|
|
627
|
+
// reset channel
|
|
628
|
+
self->m_channel.reset();
|
|
629
|
+
self->m_channelStatus = ChannelStatus::REQUEST;
|
|
630
|
+
AsyncHandler callback;
|
|
631
|
+
callback.swap(self->m_channelPreparationCallback);
|
|
632
|
+
callback(make_error_code(AmqpCppErrc::eCreateQueueError));
|
|
633
|
+
}
|
|
613
634
|
}
|
|
614
635
|
}); // end of failure handler
|
|
615
636
|
} break;
|