Commit c1bf2ac8 authored by Uwe Woessner's avatar Uwe Woessner
Browse files

Merge remote-tracking branch 'remotes/origin/master' into hlrs

# Conflicts:
#	OpenPass_Source_Code/defaults.pri
#	OpenPass_Source_Code/global.pri
#	OpenPass_Source_Code/openPASS/Common/basicEvent.h
#	OpenPass_Source_Code/openPASS/Common/collisionEvent.h
#	OpenPass_Source_Code/openPASS/Common/commonTools.h
#	OpenPass_Source_Code/openPASS/Common/dynamicsSignal.h
#	OpenPass_Source_Code/openPASS/Common/eventDetectorDefinitions.h
#	OpenPass_Source_Code/openPASS/Common/eventTypes.h
#	OpenPass_Source_Code/openPASS/Common/globalDefinitions.h
#	OpenPass_Source_Code/openPASS/Common/postCrashDynamic.h
#	OpenPass_Source_Code/openPASS/Common/vector2d.h
#	OpenPass_Source_Code/openPASS/Common/worldDefinitions.h
#	OpenPass_Source_Code/openPASS/Components/Algorithm_Longitudinal/algorithm_longitudinalCalculations.h
#	OpenPass_Source_Code/openPASS/Components/Algorithm_ModularDriver/Algorithm_ModularDriver.cpp
#	OpenPass_Source_Code/openPASS/Components/Algorithm_ModularDriver/Algorithm_ModularDriver.h
#	OpenPass_Source_Code/openPASS/Components/Algorithm_ModularDriver/Algorithm_ModularDriver.pro
#	OpenPass_Source_Code/openPASS/Components/CMakeLists.txt
#	OpenPass_Source_Code/openPASS/Components/ComponentController/componentControllerImplementation.cpp
#	OpenPass_Source_Code/openPASS/Components/ComponentController/componentControllerImplementation.h
#	OpenPass_Source_Code/openPASS/Components/Dynamics_CollisionPostCrash/CMakeLists.txt
#	OpenPass_Source_Code/openPASS/Components/Dynamics_CollisionPostCrash/dynamics_collisionPostCrash.cpp
#	OpenPass_Source_Code/openPASS/Components/Dynamics_CollisionPostCrash/dynamics_collisionPostCrashImplementation.cpp
#	OpenPass_Source_Code/openPASS/Components/Dynamics_CollisionPostCrash/dynamics_collisionPostCrashImplementation.h
#	OpenPass_Source_Code/openPASS/Components/Dynamics_RegularTwoTrack/CMakeLists.txt
#	OpenPass_Source_Code/openPASS/Components/Dynamics_RegularTwoTrack/Dynamics_RegularTwoTrack.pro
#	OpenPass_Source_Code/openPASS/Components/Dynamics_RegularTwoTrack/dynamics_regularTwoTrack.cpp
#	OpenPass_Source_Code/openPASS/Components/Dynamics_RegularTwoTrack/dynamics_regularTwoTrack.h
#	OpenPass_Source_Code/openPASS/Components/Dynamics_RegularTwoTrack/dynamics_regularTwoTrackGlobal.h
#	OpenPass_Source_Code/openPASS/Components/Dynamics_RegularTwoTrack/dynamics_regularTwoTrackImplementation.cpp
#	OpenPass_Source_Code/openPASS/Components/Dynamics_RegularTwoTrack/dynamics_regularTwoTrackImplementation.h
#	OpenPass_Source_Code/openPASS/Components/Sensor_Driver/sensor_driverImplementation.cpp
#	OpenPass_Source_Code/openPASS/Components/Sensor_Driver/sensor_driverImplementation.h
#	OpenPass_Source_Code/openPASS/Components/Sensor_Modular_Driver/Sensor_Modular_Driver.pro
#	OpenPass_Source_Code/openPASS/Components/Sensor_Modular_Driver/sensor_Modular_Driver.cpp
#	OpenPass_Source_Code/openPASS/Components/Sensor_Modular_Driver/sensor_Modular_Driver.h
#	OpenPass_Source_Code/openPASS/Components/Sensor_RecordState/sensor_recordStateImplementation.cpp
#	OpenPass_Source_Code/openPASS/Components/SignalPrioritizer/signalPrioritizerImplementation.cpp
#	OpenPass_Source_Code/openPASS/Components/SignalPrioritizer/signalPrioritizerImplementation.h
#	OpenPass_Source_Code/openPASS/CoreFramework/CoreShare/CMakeLists.txt
#	OpenPass_Source_Code/openPASS/CoreFramework/CoreShare/parameters.cpp
#	OpenPass_Source_Code/openPASS/CoreFramework/CoreShare/parameters.h
#	OpenPass_Source_Code/openPASS/CoreFramework/OpenPassSlave/eventDetectorInterface/eventDetectorBinding.cpp
#	OpenPass_Source_Code/openPASS/CoreFramework/OpenPassSlave/eventDetectorInterface/eventDetectorBinding.h
#	OpenPass_Source_Code/openPASS/CoreFramework/OpenPassSlave/framework/runInstantiator.cpp
#	OpenPass_Source_Code/openPASS/CoreFramework/OpenPassSlave/importer/connection.h
#	OpenPass_Source_Code/openPASS/CoreFramework/OpenPassSlave/importer/junction.h
#	OpenPass_Source_Code/openPASS/CoreFramework/OpenPassSlave/importer/profiles.h
#	OpenPass_Source_Code/openPASS/CoreFramework/OpenPassSlave/importer/road.h
#	OpenPass_Source_Code/openPASS/CoreFramework/OpenPassSlave/importer/road/roadObject.h
#	OpenPass_Source_Code/openPASS/CoreFramework/OpenPassSlave/importer/road/roadSignal.h
#	OpenPass_Source_Code/openPASS/CoreFramework/OpenPassSlave/importer/slaveConfig.h
#	OpenPass_Source_Code/openPASS/CoreFramework/OpenPassSlave/importer/slaveConfigImporter.cpp
#	OpenPass_Source_Code/openPASS/CoreFramework/OpenPassSlave/importer/vehicleModels.h
#	OpenPass_Source_Code/openPASS/CoreFramework/OpenPassSlave/importer/vehicleModelsImporter.cpp
#	OpenPass_Source_Code/openPASS/CoreFramework/OpenPassSlave/manipulatorInterface/manipulatorBinding.cpp
#	OpenPass_Source_Code/openPASS/CoreFramework/OpenPassSlave/manipulatorInterface/manipulatorBinding.h
#	OpenPass_Source_Code/openPASS/CoreFramework/OpenPassSlave/modelElements/agentBlueprint.h
#	OpenPass_Source_Code/openPASS/CoreFramework/OpenPassSlave/modelElements/component.cpp
#	OpenPass_Source_Code/openPASS/CoreFramework/OpenPassSlave/modelElements/component.h
#	OpenPass_Source_Code/openPASS/CoreFramework/OpenPassSlave/modelElements/eventDetectorNetwork.cpp
#	OpenPass_Source_Code/openPASS/CoreFramework/OpenPassSlave/modelElements/eventDetectorNetwork.h
#	OpenPass_Source_Code/openPASS/CoreFramework/OpenPassSlave/modelElements/manipulatorNetwork.cpp
#	OpenPass_Source_Code/openPASS/CoreFramework/OpenPassSlave/modelElements/manipulatorNetwork.h
#	OpenPass_Source_Code/openPASS/CoreFramework/OpenPassSlave/modelElements/spawnItemParameter.h
#	OpenPass_Source_Code/openPASS/CoreFramework/OpenPassSlave/modelInterface/modelBinding.cpp
#	OpenPass_Source_Code/openPASS/CoreFramework/OpenPassSlave/modelInterface/modelBinding.h
#	OpenPass_Source_Code/openPASS/CoreFramework/OpenPassSlave/spawnPointInterface/spawnPointBinding.cpp
#	OpenPass_Source_Code/openPASS/CoreFramework/OpenPassSlave/spawnPointInterface/spawnPointBinding.h
#	OpenPass_Source_Code/openPASS/CoreFramework/OpenPassSlave/spawnPointInterface/spawnPointLibrary.h
#	OpenPass_Source_Code/openPASS/CoreFramework/OpenPassSlave/stochasticsInterface/stochastics.h
#	OpenPass_Source_Code/openPASS/CoreFramework/OpenPassSlave/stochasticsInterface/stochasticsBinding.cpp
#	OpenPass_Source_Code/openPASS/CoreFramework/OpenPassSlave/stochasticsInterface/stochasticsBinding.h
#	OpenPass_Source_Code/openPASS/CoreFramework/OpenPassSlave/worldInterface/world.h
#	OpenPass_Source_Code/openPASS/CoreModules/BasicDataStore/basicDataStoreImplementation.cpp
#	OpenPass_Source_Code/openPASS/CoreModules/Manipulator/CMakeLists.txt
#	OpenPass_Source_Code/openPASS/CoreModules/Manipulator/CollisionManipulator.cpp
#	OpenPass_Source_Code/openPASS/CoreModules/Manipulator/CollisionManipulator.h
#	OpenPass_Source_Code/openPASS/CoreModules/Manipulator/Manipulator.pro
#	OpenPass_Source_Code/openPASS/CoreModules/Manipulator/srcCollisionPostCrash/collisionDetection_Impact_implementation.cpp
#	OpenPass_Source_Code/openPASS/CoreModules/Manipulator/srcCollisionPostCrash/collisionDetection_Impact_implementation.h
#	OpenPass_Source_Code/openPASS/CoreModules/Manipulator/srcCollisionPostCrash/polygon.cpp
#	OpenPass_Source_Code/openPASS/CoreModules/Manipulator/srcCollisionPostCrash/polygon.h
#	OpenPass_Source_Code/openPASS/CoreModules/Observation_Log/observationCyclics.cpp
#	OpenPass_Source_Code/openPASS/CoreModules/Observation_Log/observationFileHandler.cpp
#	OpenPass_Source_Code/openPASS/CoreModules/Observation_Log/observation_logImplementation.h
#	OpenPass_Source_Code/openPASS/CoreModules/SpawnPoints/SpawnPointPreRunCommon_OSI/SpawnPointPreRunCommon.cpp
#	OpenPass_Source_Code/openPASS/CoreModules/SpawnPoints/SpawnPointPreRunCommon_OSI/SpawnPointPreRunCommon.h
#	OpenPass_Source_Code/openPASS/CoreModules/SpawnPoints/SpawnPointPreRunCommon_OSI/SpawnPointPreRunCommonExport.cpp
#	OpenPass_Source_Code/openPASS/CoreModules/SpawnPoints/SpawnPointRuntimeCommon_OSI/SpawnPointRuntimeCommon.cpp
#	OpenPass_Source_Code/openPASS/CoreModules/SpawnPoints/SpawnPointRuntimeCommon_OSI/SpawnPointRuntimeCommon.h
#	OpenPass_Source_Code/openPASS/CoreModules/SpawnPoints/SpawnPointScenario_OSI/SpawnPointScenario.cpp
#	OpenPass_Source_Code/openPASS/CoreModules/SpawnPoints/SpawnPointScenario_OSI/SpawnPointScenario.h
#	OpenPass_Source_Code/openPASS/CoreModules/Stochastics/stochastics_implementation.cpp
#	OpenPass_Source_Code/openPASS/CoreModules/World_OSI/AgentAdapter.cpp
#	OpenPass_Source_Code/openPASS/CoreModules/World_OSI/AgentAdapter.h
#	OpenPass_Source_Code/openPASS/CoreModules/World_OSI/OWL/DataTypes.cpp
#	OpenPass_Source_Code/openPASS/CoreModules/World_OSI/OWL/DataTypes.h
#	OpenPass_Source_Code/openPASS/CoreModules/World_OSI/OWL/LaneGeometryElement.h
#	OpenPass_Source_Code/openPASS/CoreModules/World_OSI/OWL/LaneGeometryJoint.h
#	OpenPass_Source_Code/openPASS/CoreModules/World_OSI/SceneryConverter.cpp
#	OpenPass_Source_Code/openPASS/CoreModules/World_OSI/SceneryConverter.h
#	OpenPass_Source_Code/openPASS/CoreModules/World_OSI/TrafficObjectAdapter.cpp
#	OpenPass_Source_Code/openPASS/CoreModules/World_OSI/TrafficObjectAdapter.h
#	OpenPass_Source_Code/openPASS/CoreModules/World_OSI/WorldImplementation.cpp
#	OpenPass_Source_Code/openPASS/CoreModules/World_OSI/WorldImplementation.h
#	OpenPass_Source_Code/openPASS/Interfaces/agentBlueprintInterface.h
#	OpenPass_Source_Code/openPASS/Interfaces/agentInterface.h
#	OpenPass_Source_Code/openPASS/Interfaces/componentInterface.h
#	OpenPass_Source_Code/openPASS/Interfaces/eventDetectorNetworkInterface.h
#	OpenPass_Source_Code/openPASS/Interfaces/eventInterface.h
#	OpenPass_Source_Code/openPASS/Interfaces/modelInterface.h
#	OpenPass_Source_Code/openPASS/Interfaces/parameterInterface.h
#	OpenPass_Source_Code/openPASS/Interfaces/profilesInterface.h
#	OpenPass_Source_Code/openPASS/Interfaces/roadInterface/junctionInterface.h
#	OpenPass_Source_Code/openPASS/Interfaces/roadInterface/roadInterface.h
#	OpenPass_Source_Code/openPASS/Interfaces/slaveConfigInterface.h
#	OpenPass_Source_Code/openPASS/Interfaces/spawnItemParameterInterface.h
#	OpenPass_Source_Code/openPASS/Interfaces/spawnPointInterface.h
#	OpenPass_Source_Code/openPASS/Interfaces/stochasticsInterface.h
#	OpenPass_Source_Code/openPASS/Interfaces/vehicleModelsInterface.h
#	OpenPass_Source_Code/openPASS/Interfaces/worldInterface.h
#	OpenPass_Source_Code/openPASS/Interfaces/worldObjectInterface.h
#	OpenPass_Source_Code/openPASS/OpenPass_OSI.pro
#	OpenPass_Source_Code/openPASS_GUI/CMakeLists.txt
#	OpenPass_Source_Code/openPASS_GUI/Common_GUI/Plot.h
#	OpenPass_Source_Code/openPASS_GUI/openPASS-AgentConfiguration/CMakeLists.txt
#	OpenPass_Source_Code/openPASS_GUI/openPASS-Component/CMakeLists.txt
#	OpenPass_Source_Code/openPASS_GUI/openPASS-Project/CMakeLists.txt
#	OpenPass_Source_Code/openPASS_GUI/openPASS-Project/Models/ProjectModel.cpp
#	OpenPass_Source_Code/openPASS_GUI/openPASS-Statistics/CMakeLists.txt
#	OpenPass_Source_Code/openPASS_GUI/openPASS-System/CMakeLists.txt
#	OpenPass_Source_Code/openPASS_GUI/openPASS-System/Models/SystemModel.cpp
#	OpenPass_Source_Code/openPASS_GUI/openPASS-System/Views/SystemComponentManagerView.cpp
#	OpenPass_Source_Code/openPASS_GUI/openPASS-TimePlot/CMakeLists.txt
#	OpenPass_Source_Code/openPASS_GUI/openPASS-TrafficSimulation/CMakeLists.txt
#	OpenPass_Source_Code/openPASS_GUI/openPASS-TrafficSimulation/Interfaces/openPASS-TrafficSimulation/EnvironmentInterface.h
#	OpenPass_Source_Code/openPASS_GUI/openPASS-TrafficSimulation/Interfaces/openPASS-TrafficSimulation/TrafficInterface.h
#	OpenPass_Source_Code/openPASS_GUI/openPASS-TrafficSimulation/Models/EnvironmentItemModel.h
#	OpenPass_Source_Code/openPASS_GUI/openPASS-TrafficSimulation/Models/EnvironmentModel.h
#	OpenPass_Source_Code/openPASS_GUI/openPASS-TrafficSimulation/Models/ExperimentModel.h
#	OpenPass_Source_Code/openPASS_GUI/openPASS-TrafficSimulation/Models/ScenarioModel.h
#	OpenPass_Source_Code/openPASS_GUI/openPASS-TrafficSimulation/Models/TrafficItemMapModel.h
#	OpenPass_Source_Code/openPASS_GUI/openPASS-TrafficSimulation/Models/TrafficItemModel.h
#	OpenPass_Source_Code/openPASS_GUI/openPASS-TrafficSimulation/Models/TrafficModel.h
#	OpenPass_Source_Code/openPASS_GUI/openPASS-TrafficSimulation/Models/TrafficSimulationModel.h
#	OpenPass_Source_Code/openPASS_GUI/openPASS-TrafficSimulation/Models/TrafficSimulationXMLBaseModel.cpp
#	OpenPass_Source_Code/openPASS_GUI/openPASS-TrafficSimulation/Models/TrafficSimulationXMLBaseModel.h
#	OpenPass_Source_Code/openPASS_GUI/openPASS-TrafficSimulation/Models/TrafficSimulationXMLLoadModel.h
#	OpenPass_Source_Code/openPASS_GUI/openPASS-TrafficSimulation/Models/TrafficSimulationXMLSaveModel.cpp
#	OpenPass_Source_Code/openPASS_GUI/openPASS-TrafficSimulation/Models/TrafficSimulationXMLSaveModel.h
#	OpenPass_Source_Code/openPASS_GUI/openPASS-TrafficSimulation/Presenters/EnvironmentDisplayPresenter.h
#	OpenPass_Source_Code/openPASS_GUI/openPASS-TrafficSimulation/Presenters/EnvironmentMapPresenter.h
#	OpenPass_Source_Code/openPASS_GUI/openPASS-TrafficSimulation/Presenters/EnvironmentPresenter.h
#	OpenPass_Source_Code/openPASS_GUI/openPASS-TrafficSimulation/Presenters/ExperimentPresenter.h
#	OpenPass_Source_Code/openPASS_GUI/openPASS-TrafficSimulation/Presenters/LibrariesPresenter.cpp
#	OpenPass_Source_Code/openPASS_GUI/openPASS-TrafficSimulation/Presenters/LibrariesPresenter.h
#	OpenPass_Source_Code/openPASS_GUI/openPASS-TrafficSimulation/Presenters/LoggingGroupsPresenter.h
#	OpenPass_Source_Code/openPASS_GUI/openPASS-TrafficSimulation/Presenters/ScenarioAgentsPresenter.h
#	OpenPass_Source_Code/openPASS_GUI/openPASS-TrafficSimulation/Presenters/ScenarioDisplayPresenter.h
#	OpenPass_Source_Code/openPASS_GUI/openPASS-TrafficSimulation/Presenters/ScenarioPresenter.h
#	OpenPass_Source_Code/openPASS_GUI/openPASS-TrafficSimulation/Presenters/TrafficDisplayPresenter.h
#	OpenPass_Source_Code/openPASS_GUI/openPASS-TrafficSimulation/Presenters/TrafficItemMapPresenter.h
#	OpenPass_Source_Code/openPASS_GUI/openPASS-TrafficSimulation/Presenters/TrafficPresenter.h
#	OpenPass_Source_Code/openPASS_GUI/openPASS-TrafficSimulation/Presenters/TrafficSimulationPresenter.cpp
#	OpenPass_Source_Code/openPASS_GUI/openPASS-TrafficSimulation/Presenters/TrafficSimulationPresenter.h
#	OpenPass_Source_Code/openPASS_GUI/openPASS-TrafficSimulation/Views/EnvironmentItemView.cpp
#	OpenPass_Source_Code/openPASS_GUI/openPASS-TrafficSimulation/Views/TrafficItemView.cpp
#	OpenPass_Source_Code/openPASS_GUI/openPASS-TrafficSimulation/Views/TrafficVolumeView.cpp
#	OpenPass_Source_Code/openPASS_GUI/openPASS-Window/CMakeLists.txt
#	OpenPass_Source_Code/openPASS_GUI/openPASS/CMakeLists.txt
#	OpenPass_Source_Code/openPASS_GUI/openPASS/openPASS.rc
#	OpenPass_Source_Code/openPASS_Resource/AEB/configs/VehicleModelsCatalog.xosc
#	OpenPass_Source_Code/openPASS_Resource/OSI_TwoTrack_Collision/configs/PedestrianModelsCatalog.xosc
#	OpenPass_Source_Code/openPASS_Resource/OSI_TwoTrack_Collision/configs/slaveConfig.xml
#	OpenPass_Source_Code/openPASS_Resource/OSI_TwoTrack_Collision/configs/systemConfigBlueprint.xml
#	OpenPass_Source_Code/openPASS_Resource/Static_AgentProfiles/configs/VehicleModelsCatalog.xosc
#	cmake/HelperMacros.cmake
#	gui/application/Interfaces/CMakeLists.txt
#	gui/application/Interfaces/openPASS/CMakeLists.txt
#	gui/application/Models/CMakeLists.txt
#	gui/common/CMakeLists.txt
#	gui/plugins/agentConfiguration/Interfaces/openPASS-AgentConfiguration/CMakeLists.txt
#	gui/plugins/agentConfiguration/Models/CMakeLists.txt
#	gui/plugins/agentConfiguration/Presenters/CMakeLists.txt
#	gui/plugins/component/Interfaces/CMakeLists.txt
#	gui/plugins/component/Interfaces/openPASS-Component/CMakeLists.txt
#	gui/plugins/component/Models/CMakeLists.txt
#	gui/plugins/project/Interfaces/CMakeLists.txt
#	gui/plugins/project/Models/CMakeLists.txt
#	gui/plugins/project/Views/CMakeLists.txt
#	gui/plugins/statistics/Interfaces/CMakeLists.txt
#	gui/plugins/system/Interfaces/CMakeLists.txt
#	gui/plugins/system/Interfaces/openPASS-System/CMakeLists.txt
#	gui/plugins/system/Models/CMakeLists.txt
#	gui/plugins/system/Views/CMakeLists.txt
#	gui/plugins/timePlot/Interfaces/CMakeLists.txt
#	gui/plugins/timePlot/Models/CMakeLists.txt
#	gui/plugins/timePlot/Presenters/CMakeLists.txt
#	gui/plugins/trafficSimulation/Interfaces/openPASS-TrafficSimulation/CMakeLists.txt
#	gui/plugins/trafficSimulation/Models/CMakeLists.txt
#	gui/plugins/trafficSimulation/Presenters/CMakeLists.txt
#	gui/plugins/window/Interfaces/openPASS-Window/CMakeLists.txt
#	gui/plugins/window/Models/CMakeLists.txt
#	gui/plugins/window/Presenters/CMakeLists.txt
#	gui/plugins/window/Views/CMakeLists.txt
#	sim/contrib/examples/Osccar_UseCase_motorway/components/Action_LongitudinalDriver.xml
#	sim/contrib/examples/Osccar_UseCase_motorway/components/Action_SecondaryDriverTasks.xml
#	sim/contrib/examples/Osccar_UseCase_motorway/components/AgentUpdater.xml
#	sim/contrib/examples/Osccar_UseCase_motorway/components/AlgorithmAgentFollowingDriverModel.xml
#	sim/contrib/examples/Osccar_UseCase_motorway/components/Algorithm_AEB.xml
#	sim/contrib/examples/Osccar_UseCase_motorway/components/Algorithm_Lateral.xml
#	sim/contrib/examples/Osccar_UseCase_motorway/components/Algorithm_Longitudinal.xml
#	sim/contrib/examples/Osccar_UseCase_motorway/components/Algorithm_ModularDriver.xml
#	sim/contrib/examples/Osccar_UseCase_motorway/components/ComponentController.xml
#	sim/contrib/examples/Osccar_UseCase_motorway/components/Dynamics_Collision.xml
#	sim/contrib/examples/Osccar_UseCase_motorway/components/Dynamics_CollisionPostCrash.xml
#	sim/contrib/examples/Osccar_UseCase_motorway/components/Dynamics_RegularDriving.xml
#	sim/contrib/examples/Osccar_UseCase_motorway/components/Dynamics_RegularTwoTrack.xml
#	sim/contrib/examples/Osccar_UseCase_motorway/components/Dynamics_TrajectoryFollower.xml
#	sim/contrib/examples/Osccar_UseCase_motorway/components/Parameters_Vehicle.xml
#	sim/contrib/examples/Osccar_UseCase_motorway/components/SensorCriticality.xml
#	sim/contrib/examples/Osccar_UseCase_motorway/components/SensorFusion_OSI.xml
#	sim/contrib/examples/Osccar_UseCase_motorway/components/Sensor_Driver.xml
#	sim/contrib/examples/Osccar_UseCase_motorway/components/Sensor_Modular_Driver.xml
#	sim/contrib/examples/Osccar_UseCase_motorway/components/Sensor_OSI.xml
#	sim/contrib/examples/Osccar_UseCase_motorway/components/Sensor_RecordState.xml
#	sim/contrib/examples/Osccar_UseCase_motorway/components/SignalPrioritizer.xml
#	sim/contrib/examples/Osccar_UseCase_motorway/configs/PedestrianModelsCatalog.xosc
#	sim/contrib/examples/Osccar_UseCase_motorway/configs/ProfilesCatalog.xml
#	sim/contrib/examples/Osccar_UseCase_motorway/configs/Scenario.xosc
#	sim/contrib/examples/Osccar_UseCase_motorway/configs/SceneryConfiguration.xodr
#	sim/contrib/examples/Osccar_UseCase_motorway/configs/SystemConfigFailure.xml
#	sim/contrib/examples/Osccar_UseCase_motorway/configs/SystemConfigJam.xml
#	sim/contrib/examples/Osccar_UseCase_motorway/configs/SystemConfigRegular.xml
#	sim/contrib/examples/Osccar_UseCase_motorway/configs/SystemConfigTruck.xml
#	sim/contrib/examples/Osccar_UseCase_motorway/configs/SystemConfigTruckFailure.xml
#	sim/contrib/examples/Osccar_UseCase_motorway/configs/Trajectory.xml
#	sim/contrib/examples/Osccar_UseCase_motorway/configs/VehicleModelsCatalog.xosc
#	sim/contrib/examples/Osccar_UseCase_motorway/configs/slaveConfig.xml
#	sim/contrib/examples/Osccar_UseCase_motorway/configs/systemConfigBlueprint.xml
#	sim/contrib/examples/Osccar_UseCase_motorway/masterConfig.xml
#	sim/contrib/examples/Osccar_UseCase_onramp/components/Action_LongitudinalDriver.xml
#	sim/contrib/examples/Osccar_UseCase_onramp/components/Action_SecondaryDriverTasks.xml
#	sim/contrib/examples/Osccar_UseCase_onramp/components/AgentUpdater.xml
#	sim/contrib/examples/Osccar_UseCase_onramp/components/AlgorithmAgentFollowingDriverModel.xml
#	sim/contrib/examples/Osccar_UseCase_onramp/components/Algorithm_AEB.xml
#	sim/contrib/examples/Osccar_UseCase_onramp/components/Algorithm_Lateral.xml
#	sim/contrib/examples/Osccar_UseCase_onramp/components/Algorithm_Longitudinal.xml
#	sim/contrib/examples/Osccar_UseCase_onramp/components/Algorithm_ModularDriver.xml
#	sim/contrib/examples/Osccar_UseCase_onramp/components/ComponentController.xml
#	sim/contrib/examples/Osccar_UseCase_onramp/components/Dynamics_Collision.xml
#	sim/contrib/examples/Osccar_UseCase_onramp/components/Dynamics_CollisionPostCrash.xml
#	sim/contrib/examples/Osccar_UseCase_onramp/components/Dynamics_RegularDriving.xml
#	sim/contrib/examples/Osccar_UseCase_onramp/components/Dynamics_RegularTwoTrack.xml
#	sim/contrib/examples/Osccar_UseCase_onramp/components/Dynamics_TrajectoryFollower.xml
#	sim/contrib/examples/Osccar_UseCase_onramp/components/Parameters_Vehicle.xml
#	sim/contrib/examples/Osccar_UseCase_onramp/components/SensorCriticality.xml
#	sim/contrib/examples/Osccar_UseCase_onramp/components/SensorFusion_OSI.xml
#	sim/contrib/examples/Osccar_UseCase_onramp/components/Sensor_Driver.xml
#	sim/contrib/examples/Osccar_UseCase_onramp/components/Sensor_Modular_Driver.xml
#	sim/contrib/examples/Osccar_UseCase_onramp/components/Sensor_OSI.xml
#	sim/contrib/examples/Osccar_UseCase_onramp/components/Sensor_RecordState.xml
#	sim/contrib/examples/Osccar_UseCase_onramp/components/SignalPrioritizer.xml
#	sim/contrib/examples/Osccar_UseCase_onramp/configs/PedestrianModelsCatalog.xosc
#	sim/contrib/examples/Osccar_UseCase_onramp/configs/ProfilesCatalog.xml
#	sim/contrib/examples/Osccar_UseCase_onramp/configs/Scenario.xosc
#	sim/contrib/examples/Osccar_UseCase_onramp/configs/SceneryConfiguration.xodr
#	sim/contrib/examples/Osccar_UseCase_onramp/configs/SystemConfigFailure.xml
#	sim/contrib/examples/Osccar_UseCase_onramp/configs/SystemConfigJam.xml
#	sim/contrib/examples/Osccar_UseCase_onramp/configs/SystemConfigRegular.xml
#	sim/contrib/examples/Osccar_UseCase_onramp/configs/SystemConfigTruck.xml
#	sim/contrib/examples/Osccar_UseCase_onramp/configs/SystemConfigTruckFailure.xml
#	sim/contrib/examples/Osccar_UseCase_onramp/configs/Trajectory.xml
#	sim/contrib/examples/Osccar_UseCase_onramp/configs/VehicleModelsCatalog.xosc
#	sim/contrib/examples/Osccar_UseCase_onramp/configs/slaveConfig.xml
#	sim/contrib/examples/Osccar_UseCase_onramp/configs/systemConfigBlueprint.xml
#	sim/contrib/examples/Osccar_UseCase_onramp/masterConfig.xml
#	sim/contrib/examples/Osccar_UseCase_traffic_jam/components/Action_LongitudinalDriver.xml
#	sim/contrib/examples/Osccar_UseCase_traffic_jam/components/Action_SecondaryDriverTasks.xml
#	sim/contrib/examples/Osccar_UseCase_traffic_jam/components/AgentUpdater.xml
#	sim/contrib/examples/Osccar_UseCase_traffic_jam/components/AlgorithmAgentFollowingDriverModel.xml
#	sim/contrib/examples/Osccar_UseCase_traffic_jam/components/Algorithm_AEB.xml
#	sim/contrib/examples/Osccar_UseCase_traffic_jam/components/Algorithm_Lateral.xml
#	sim/contrib/examples/Osccar_UseCase_traffic_jam/components/Algorithm_Longitudinal.xml
#	sim/contrib/examples/Osccar_UseCase_traffic_jam/components/Algorithm_ModularDriver.xml
#	sim/contrib/examples/Osccar_UseCase_traffic_jam/components/ComponentController.xml
#	sim/contrib/examples/Osccar_UseCase_traffic_jam/components/Dynamics_Collision.xml
#	sim/contrib/examples/Osccar_UseCase_traffic_jam/components/Dynamics_CollisionPostCrash.xml
#	sim/contrib/examples/Osccar_UseCase_traffic_jam/components/Dynamics_RegularDriving.xml
#	sim/contrib/examples/Osccar_UseCase_traffic_jam/components/Dynamics_RegularTwoTrack.xml
#	sim/contrib/examples/Osccar_UseCase_traffic_jam/components/Dynamics_TrajectoryFollower.xml
#	sim/contrib/examples/Osccar_UseCase_traffic_jam/components/Parameters_Vehicle.xml
#	sim/contrib/examples/Osccar_UseCase_traffic_jam/components/SensorCriticality.xml
#	sim/contrib/examples/Osccar_UseCase_traffic_jam/components/SensorFusion_OSI.xml
#	sim/contrib/examples/Osccar_UseCase_traffic_jam/components/Sensor_Driver.xml
#	sim/contrib/examples/Osccar_UseCase_traffic_jam/components/Sensor_Modular_Driver.xml
#	sim/contrib/examples/Osccar_UseCase_traffic_jam/components/Sensor_OSI.xml
#	sim/contrib/examples/Osccar_UseCase_traffic_jam/components/Sensor_RecordState.xml
#	sim/contrib/examples/Osccar_UseCase_traffic_jam/components/SignalPrioritizer.xml
#	sim/contrib/examples/Osccar_UseCase_traffic_jam/configs/PedestrianModelsCatalog.xosc
#	sim/contrib/examples/Osccar_UseCase_traffic_jam/configs/ProfilesCatalog.xml
#	sim/contrib/examples/Osccar_UseCase_traffic_jam/configs/Scenario.xosc
#	sim/contrib/examples/Osccar_UseCase_traffic_jam/configs/SceneryConfiguration.xodr
#	sim/contrib/examples/Osccar_UseCase_traffic_jam/configs/SystemConfigFailure.xml
#	sim/contrib/examples/Osccar_UseCase_traffic_jam/configs/SystemConfigJam.xml
#	sim/contrib/examples/Osccar_UseCase_traffic_jam/configs/SystemConfigRegular.xml
#	sim/contrib/examples/Osccar_UseCase_traffic_jam/configs/SystemConfigTruck.xml
#	sim/contrib/examples/Osccar_UseCase_traffic_jam/configs/SystemConfigTruckFailure.xml
#	sim/contrib/examples/Osccar_UseCase_traffic_jam/configs/Trajectory.xml
#	sim/contrib/examples/Osccar_UseCase_traffic_jam/configs/VehicleModelsCatalog.xosc
#	sim/contrib/examples/Osccar_UseCase_traffic_jam/configs/slaveConfig.xml
#	sim/contrib/examples/Osccar_UseCase_traffic_jam/configs/systemConfigBlueprint.xml
#	sim/contrib/examples/Osccar_UseCase_traffic_jam/masterConfig.xml
#	sim/contrib/examples/StaticAgentCollision/configs/ProfilesCatalog.xml
#	sim/contrib/examples/StaticAgentCollision/configs/ProfilesCatalog_GUI.ui
#	sim/contrib/examples/StaticAgentCollision/configs/Scenario.xosc
#	sim/contrib/examples/StaticAgentCollision/configs/SceneryConfiguration.xodr
#	sim/contrib/examples/StaticAgentCollision/configs/SystemConfig.xml
#	sim/contrib/examples/StaticAgentCollision/configs/VehicleModelsCatalog.xosc
#	sim/contrib/examples/StaticAgentCollision/configs/slaveConfig.xml
#	sim/contrib/examples/StaticAgentCollision/configs/systemConfigBlueprint.xml
#	sim/contrib/examples/StaticAgentCollision/masterConfig.xml
#	sim/src/components/Algorithm_ModularDriver/CMakeLists.txt
#	sim/src/components/Algorithm_ModularDriver/src/ActionDeductionMethods/AbstractLaneChangeModel.cpp
#	sim/src/components/Algorithm_ModularDriver/src/ActionDeductionMethods/AbstractLaneChangeModel.h
#	sim/src/components/Algorithm_ModularDriver/src/ActionDeductionMethods/CFModel.cpp
#	sim/src/components/Algorithm_ModularDriver/src/ActionDeductionMethods/CFModel.h
#	sim/src/components/Algorithm_ModularDriver/src/ActionDeductionMethods/CFModel_Daniel1.cpp
#	sim/src/components/Algorithm_ModularDriver/src/ActionDeductionMethods/CFModel_Daniel1.h
#	sim/src/components/Algorithm_ModularDriver/src/ActionDeductionMethods/LCM_LC2013.cpp
#	sim/src/components/Algorithm_ModularDriver/src/ActionDeductionMethods/LCM_LC2013.h
#	sim/src/components/Algorithm_ModularDriver/src/ActionDeductionMethods/TargetBraking.cpp
#	sim/src/components/Algorithm_ModularDriver/src/ActionDeductionMethods/TargetBraking.h
#	sim/src/components/Algorithm_ModularDriver/src/AlgorithmActionDeduction.cpp
#	sim/src/components/Algorithm_ModularDriver/src/AlgorithmActionDeduction.h
#	sim/src/components/Algorithm_ModularDriver/src/AlgorithmActionExecution.cpp
#	sim/src/components/Algorithm_ModularDriver/src/AlgorithmActionExecution.h
#	sim/src/components/Algorithm_ModularDriver/src/AlgorithmInformationAcquisition.cpp
#	sim/src/components/Algorithm_ModularDriver/src/AlgorithmInformationAcquisition.h
#	sim/src/components/Algorithm_ModularDriver/src/AlgorithmMentalModel.cpp
#	sim/src/components/Algorithm_ModularDriver/src/AlgorithmMentalModel.h
#	sim/src/components/Algorithm_ModularDriver/src/AlgorithmSituationAssessment.cpp
#	sim/src/components/Algorithm_ModularDriver/src/AlgorithmSituationAssessment.h
#	sim/src/components/Algorithm_ModularDriver/src/Algorithm_ModularDriver_global.h
#	sim/src/components/Algorithm_ModularDriver/src/Algorithm_ModularDriver_implementation.cpp
#	sim/src/components/Algorithm_ModularDriver/src/Algorithm_ModularDriver_implementation.h
#	sim/src/components/Algorithm_ModularDriver/src/SituationAssessmentMethods/SituationCalculation.cpp
#	sim/src/components/Algorithm_ModularDriver/src/SituationAssessmentMethods/SituationCalculation.h
#	sim/src/components/Algorithm_ModularDriver/src/SituationAssessmentMethods/SituationLogging.cpp
#	sim/src/components/Algorithm_ModularDriver/src/SituationAssessmentMethods/SituationLogging.h
#	sim/src/components/Algorithm_ModularDriver/src/SituationAssessmentMethods/boundingBoxCalculation.cpp
#	sim/src/components/Algorithm_ModularDriver/src/SituationAssessmentMethods/boundingBoxCalculation.h
#	sim/src/components/Sensor_Modular_Driver/CMakeLists.txt
#	sim/src/components/Sensor_Modular_Driver/src/Container/ContainerStructures.h
#	sim/src/components/Sensor_Modular_Driver/src/Container/MentalModelLane.cpp
#	sim/src/components/Sensor_Modular_Driver/src/Container/MentalModelLane.h
#	sim/src/components/Sensor_Modular_Driver/src/Container/agent_representation.cpp
#	sim/src/components/Sensor_Modular_Driver/src/Container/agent_representation.h
#	sim/src/components/Sensor_Modular_Driver/src/Signals/complexsignals.cpp
#	sim/src/components/Sensor_Modular_Driver/src/Signals/complexsignals.h
#	sim/src/components/Sensor_Modular_Driver/src/Signals/egodata.h
#	sim/src/components/Sensor_Modular_Driver/src/Signals/staticenvironmentdata.h
#	sim/src/components/Sensor_Modular_Driver/src/Signals/surroundingmovingobjectsdata.h
#	sim/src/components/Sensor_Modular_Driver/src/sensor_Modular_Driver_global.h
#	sim/src/components/Sensor_Modular_Driver/src/sensor_Modular_Driver_implementation.cpp
#	sim/src/components/Sensor_Modular_Driver/src/sensor_Modular_Driver_implementation.h
parents be959447 5c8800d5
......@@ -10,6 +10,8 @@ Thumbs.db
.directory
DoxyGen/Function/doxy_build/*
build
*.bak
Doxygen.log
# third party references
deps/*
......@@ -15,6 +15,12 @@ project(openPASS C CXX)
set(CMAKE_MODULE_PATH "${CMAKE_MODULE_PATH}" "${CMAKE_SOURCE_DIR}/cmake")
# used for collecting a list of targets for dependency resolving and installation at the bottom of this file
set_property(GLOBAL PROPERTY exe_target_list)
set_property(GLOBAL PROPERTY lib_target_list)
cmake_policy(SET CMP0087 NEW) # Install CODE|SCRIPT allow the use of generator expressions.
include(global)
set(CPACK_PACKAGE_NAME openPASS)
......@@ -26,12 +32,40 @@ set(CPACK_PACKAGE_CHECKSUM "SHA1")
set(CPACK_STRIP_FILES TRUE)
# descend to sources
add_subdirectory(${CMAKE_CURRENT_LIST_DIR}/OpenPass_Source_Code)
if(WITH_SIMCORE)
add_subdirectory(${CMAKE_CURRENT_LIST_DIR}/sim)
endif()
if(WITH_GUI)
add_subdirectory(${CMAKE_CURRENT_LIST_DIR}/gui)
endif()
if(WITH_TESTS)
enable_testing()
# will be provided in the near future
add_subdirectory(${CMAKE_CURRENT_LIST_DIR}/OpenPass_Test)
endif()
include(CPack)
get_property(EXE_TARGET_LIST GLOBAL PROPERTY exe_target_list)
get_property(LIB_TARGET_LIST GLOBAL PROPERTY lib_target_list)
install(CODE
"
file(GET_RUNTIME_DEPENDENCIES
RESOLVED_DEPENDENCIES_VAR resolved_deps
UNRESOLVED_DEPENDENCIES_VAR unresolved_deps
EXECUTABLES ${EXE_TARGET_LIST}
LIBRARIES ${LIB_TARGET_LIST})
if(UNIX)
list(FILTER resolved_deps EXCLUDE REGEX \"^/lib|^/usr\")
endif()
message(\"Installing deps: \${resolved_deps}\")
message(\"Not found deps: \${unresolved_deps}\")
file(COPY \${resolved_deps}
DESTINATION ${CMAKE_INSTALL_PREFIX}
FOLLOW_SYMLINK_CHAIN)
"
)
<Profiles SchemaVersion="0.2.0">
<AgentProfiles>
<AgentProfile Name="EgoAgent" Type="Static">
<System>
<File>systemConfig.xml</File>
<Id>0</Id>
</System>
<VehicleModel>car_bmw_7_1</VehicleModel>
</AgentProfile>
<AgentProfile Name="LuxuryClassCarAgent" Type="Dynamic">
<DriverProfiles>
<DriverProfile Name="Regular" Probability="1.0"/>
</DriverProfiles>
<VehicleProfiles>
<VehicleProfile Name="BMW 7 1" Probability="0.5"/>
<VehicleProfile Name="BMW 7 2" Probability="0.5"/>
</VehicleProfiles>
</AgentProfile>
<AgentProfile Name="MiddleClassCarAgent" Type="Dynamic">
<DriverProfiles>
<DriverProfile Name="Regular" Probability="1.0"/>
</DriverProfiles>
<VehicleProfiles>
<VehicleProfile Name="Mini Cooper" Probability="0.4"/>
<VehicleProfile Name="BMW i3" Probability="0.3"/>
<VehicleProfile Name="BMW 3" Probability="0.3"/>
</VehicleProfiles>
</AgentProfile>
<AgentProfile Name="TruckAgent" Type="Dynamic">
<DriverProfiles>
<DriverProfile Name="Regular" Probability="1.0"/>
</DriverProfiles>
<VehicleProfiles>
<VehicleProfile Name="Truck" Probability="0.5"/>
<VehicleProfile Name="Bus" Probability="0.5"/>
</VehicleProfiles>
</AgentProfile>
</AgentProfiles>
<!-- ######################################################################################################### -->
<DriverProfiles>
<DriverProfile Name="Regular">
<String Key="Type" Value="AlgorithmAgentFollowingDriverModel"/>
<String Key="AlgorithmLateralModule" Value="AlgorithmLateralAmfd"/>
<String Key="AlgorithmLongitudinalModule" Value="AlgorithmLongitudinalAmfd"/>
</DriverProfile>
</DriverProfiles>
<!-- ######################################################################################################### -->
<VehicleProfiles>
<VehicleProfile Name="BMW 7 1">
<Model Name="car_bmw_7_1"/>
<Components>
</Components>
<Sensors>
</Sensors>
</VehicleProfile>
<VehicleProfile Name="BMW 7 2">
<Model Name="car_bmw_7_2"/>
<Components>
</Components>
<Sensors>
</Sensors>
</VehicleProfile>
<VehicleProfile Name="Mini Cooper">
<Model Name="car_mini_cooper"/>
<Components>
</Components>
<Sensors>
</Sensors>
</VehicleProfile>
<VehicleProfile Name="BMW i3">
<Model Name="car_bmw_i3"/>
<Components>
</Components>
<Sensors>
</Sensors>
</VehicleProfile>
<VehicleProfile Name="BMW 3">
<Model Name="car_bmw_3"/>
<Components>
</Components>
<Sensors>
</Sensors>
</VehicleProfile>
<VehicleProfile Name="Truck">
<Model Name="truck"/>
<Components>
</Components>
<Sensors>
</Sensors>
</VehicleProfile>
<VehicleProfile Name="Bus">
<Model Name="bus"/>
<Components>
</Components>
<Sensors>
</Sensors>
</VehicleProfile>
</VehicleProfiles>
<!-- ######################################################################################################### -->
<VehicleComponentProfiles>
</VehicleComponentProfiles>
<!-- ######################################################################################################### -->
<SensorProfiles>
</SensorProfiles>
</Profiles>
if(WITH_SIMCORE)
add_subdirectory(openPASS)
endif()
if(WITH_GUI)
add_subdirectory(openPASS_GUI)
endif()
TEMPLATE = subdirs
SUBDIRS = \
openPASS/OpenPass_OSI.pro \
# openPASS_GUI/openPASS.pro
set(FOLDER "Core")
include_directories(${CMAKE_CURRENT_LIST_DIR})
include_directories(${CMAKE_CURRENT_LIST_DIR}/Interfaces)
add_subdirectory(Common)
add_subdirectory(Components)
add_subdirectory(CoreFramework)
add_subdirectory(CoreModules)
if(BUILD_PCM)
add_subdirectory(Common_PCM)
add_subdirectory(Components_PCM)
add_subdirectory(CoreModules_PCM)
endif()
/*******************************************************************************
* Copyright (c) 2017, 2018, 2019 in-tech GmbH
* 2020 ITK Engineering GmbH
*
* This program and the accompanying materials are made
* available under the terms of the Eclipse Public License 2.0
* which is available at https://www.eclipse.org/legal/epl-2.0/
*
* SPDX-License-Identifier: EPL-2.0
*******************************************************************************/
//-----------------------------------------------------------------------------
/** @file CollisionEvent.h
* @brief This file contains all functions for collision based events.
*
* This class contains all functionality of the module. */
//-----------------------------------------------------------------------------
#pragma once
#include "basicEvent.h"
#include <Common/globalDefinitions.h>
#include <Common/postCrashDynamic.h>
//-----------------------------------------------------------------------------
/** This class implements all functionality of the CollisionEvent.
*
* \ingroup Events */
//-----------------------------------------------------------------------------
class CollisionEvent : public BasicEvent
{
public:
CollisionEvent(int time, std::string source, bool collisionWithAgent, int collisionAgentId, int collisionOpponentId) :
BasicEvent{time, "Collision", source, {collisionAgentId, collisionOpponentId}, {}},
collisionWithAgent{collisionWithAgent},
collisionAgentId{collisionAgentId},
collisionOpponentId{collisionOpponentId}
{
parameter.emplace("CollisionWithAgent", collisionWithAgent);
}
~CollisionEvent() override = default;
EventDefinitions::EventCategory GetCategory() const override
{
return EventDefinitions::EventCategory::OpenPASS;
}
EventParameters GetParametersAsString() override
{
EventParameters eventParameters = BasicEvent::GetParametersAsString();
return eventParameters;
}
void AddParameters(CollisionAngles angles, PostCrashDynamic postCrashDyn1, PostCrashDynamic postCrashDyn2)
{
parameter.emplace("Velocity", postCrashDyn1.GetVelocity());
parameter.emplace("Velocity", postCrashDyn1.GetVelocity());
parameter.emplace("VelocityChange", postCrashDyn1.GetVelocityChange());
parameter.emplace("VelocityDirection", postCrashDyn1.GetVelocityDirection());
parameter.emplace("YawVelocity", postCrashDyn1.GetYawVelocity());
parameter.emplace("PointOfContactLocalX", postCrashDyn1.GetPointOfContactLocal().x);
parameter.emplace("PointOfContactLocalY", postCrashDyn1.GetPointOfContactLocal().y);
parameter.emplace("CollisionVelocity", postCrashDyn1.GetCollisionVelocity());
parameter.emplace("Sliding", postCrashDyn1.GetSliding());
parameter.emplace("OpponentVelocity", postCrashDyn2.GetVelocity());
parameter.emplace("OpponentVelocityChange", postCrashDyn2.GetVelocityChange());
parameter.emplace("OpponentVelocityDirection", postCrashDyn2.GetVelocityDirection());
parameter.emplace("OpponentYawVelocity", postCrashDyn2.GetYawVelocity());
parameter.emplace("OpponentPointOfContactLocalX", postCrashDyn2.GetPointOfContactLocal().x);
parameter.emplace("OpponentPointOfContactLocalY", postCrashDyn2.GetPointOfContactLocal().y);
parameter.emplace("OpponentCollisionVelocity", postCrashDyn2.GetCollisionVelocity());
parameter.emplace("OpponentSliding", postCrashDyn2.GetSliding());
parameter.emplace("OYA", angles.OYA);
parameter.emplace("HCPAo", angles.HCPAo);
parameter.emplace("OCPAo", angles.OCPAo);
parameter.emplace("HCPA", angles.HCPA);
parameter.emplace("OCPA", angles.OCPA);
}
[[deprecated("Will be replaced by BasicEvent::parameter")]] bool collisionWithAgent;
[[deprecated("Will be replaced by BasicEvent::parameter")]] int collisionAgentId;
[[deprecated("Will be replaced by BasicEvent::parameter")]] int collisionOpponentId;
};
/*******************************************************************************
* Copyright (c) 2019 in-tech GmbH
*
* This program and the accompanying materials are made
* available under the terms of the Eclipse Public License 2.0
* which is available at https://www.eclipse.org/legal/epl-2.0/
*
* SPDX-License-Identifier: EPL-2.0
*******************************************************************************/
//-----------------------------------------------------------------------------
/** \addtogroup ComponentStateChangeEvent
* @{
* \file ComponentStateChangeEvent.h
* \brief This file contains the behaviours for ComponentStateChange events
*
* \details ComponentStateChange Events are intended to be used in conjunction
* with the Vehicle Control Unit to toggle Vehicle Components
* @}
* */
//-----------------------------------------------------------------------------
#pragma once
#include "conditionalEvent.h"
#include "Interfaces/signalInterface.h"
//-----------------------------------------------------------------------------
/** This class implements all functionality of the ComponentStateChangeEvent.
*
* \ingroup Event */
//-----------------------------------------------------------------------------
class ComponentChangeEvent : public ConditionalEvent
{
public:
ComponentChangeEvent(int time, const std::string &eventName, const std::string &source,
std::vector<int> triggeringAgents, std::vector<int> actingAgents,
const std::string &componentName, const std::string &goalStateName) :
ConditionalEvent{time, eventName, source, triggeringAgents, actingAgents},
componentName{componentName},
goalStateName{goalStateName}
{
goalState = ComponentStateMapping.at(goalStateName);
parameter.emplace("ComponentName", componentName);
parameter.emplace("GoalStateName", goalStateName);
}
~ComponentChangeEvent() override = default;
EventDefinitions::EventCategory GetCategory() const override
{
return EventDefinitions::EventCategory::ComponentStateChange;
}
EventParameters GetParametersAsString() override
{
EventParameters eventParameters = ConditionalEvent::GetParametersAsString();
eventParameters.push_back({"ComponentName", componentName});
eventParameters.push_back({"State", goalStateName});
return eventParameters;
}
/*!
* \brief Returns the component name for which the event is targeted
* @return Component Name
*/
std::string GetComponentName() const
{
return componentName;
}
/*!
* \brief Returns the goal state name for which the event is targeted
* @return State Name
*/
std::string GetGoalStateName() const
{
return goalStateName;
}
/*!
* \brief Returns the goal state as a result of the event
* @return State
*/
ComponentState GetGoalState() const
{
return goalState;
}
private:
const std::string componentName;
const std::string goalStateName;
ComponentState goalState = ComponentState::Undefined;
};
/*******************************************************************************
* Copyright (c) 2017, 2018, 2019 in-tech GmbH
* 2020 BMW AG
*
* This program and the accompanying materials are made
* available under the terms of the Eclipse Public License 2.0
* which is available at https://www.eclipse.org/legal/epl-2.0/
*
* SPDX-License-Identifier: EPL-2.0
*******************************************************************************/
//-----------------------------------------------------------------------------
/** @file CustomLaneChangeEvent.h
* @brief This class implements all functionality of the CustomLaneChangeEvent
*
* This class contains all functionality of the module. */
//-----------------------------------------------------------------------------
#pragma once
#include <vector>
#include "vehicleComponentEvent.h"
//-----------------------------------------------------------------------------
/** This class implements all functionality of the AgentBasedEvent.
*
* \ingroup Event */
//-----------------------------------------------------------------------------
class CustomLaneChangeEvent : public VehicleComponentEvent
{
public:
CustomLaneChangeEvent(int time,
const std::string eventName,
std::string source,
int agentId,
const int deltaLaneId):
VehicleComponentEvent(time,
eventName,
source,
agentId),
deltaLaneId(deltaLaneId)
{}
CustomLaneChangeEvent(const CustomLaneChangeEvent&) = delete;
CustomLaneChangeEvent(CustomLaneChangeEvent&&) = delete;
CustomLaneChangeEvent& operator=(const CustomLaneChangeEvent&) = delete;
CustomLaneChangeEvent& operator=(CustomLaneChangeEvent&&) = delete;
virtual ~CustomLaneChangeEvent() = default;
/*!
* \brief Returns the category of the event.
*
* @return EventCategory.
*/
virtual EventDefinitions::EventCategory GetCategory() const override
{
return EventDefinitions::EventCategory::CustomLaneChange;
}
/*!
* \brief Returns all parameters of the event as string list.
* \details Returns the agentId as string list.
*
* @return List of string pairs of the event parameters.
*/
virtual EventParameters GetParametersAsString() override
{
auto eventParameters = VehicleComponentEvent::GetParametersAsString();
eventParameters.push_back({"DeltaLaneId", std::to_string(deltaLaneId)});
return eventParameters;
}
const int deltaLaneId;
};
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment