Branch data Line data Source code
1 : : /* 2 : : * ----------------- BEGIN LICENSE BLOCK --------------------------------- 3 : : * 4 : : * Copyright (C) 2018-2022 Intel Corporation 5 : : * 6 : : * SPDX-License-Identifier: LGPL-2.1-only 7 : : * 8 : : * ----------------- END LICENSE BLOCK ----------------------------------- 9 : : */ 10 : : 11 : : /** 12 : : * Generated file 13 : : * @file 14 : : * 15 : : * Generator Version : 11.0.0-2046 16 : : */ 17 : : 18 : : #pragma once 19 : : 20 : : #include <cmath> 21 : : #include <limits> 22 : : #include "ad/physics/AccelerationValidInputRange.hpp" 23 : : #include "ad/rss/world/LongitudinalRssAccelerationValues.hpp" 24 : : #include "spdlog/fmt/ostr.h" 25 : : #include "spdlog/spdlog.h" 26 : : 27 : : /*! 28 : : * \brief check if the given LongitudinalRssAccelerationValues is within valid input range 29 : : * 30 : : * \param[in] input the LongitudinalRssAccelerationValues as an input value 31 : : * \param[in] logErrors enables error logging 32 : : * 33 : : * \returns \c true if LongitudinalRssAccelerationValues is considered to be within the specified input range 34 : : * 35 : : * \note the specified input range is defined by the ranges of all members, plus: 36 : : * ::ad::physics::Acceleration(0.) <= accel_max <= ::ad::physics::Acceleration(1e2) 37 : : * ::ad::physics::Acceleration(-1e2) <= brake_max <= brake_min 38 : : * brake_max <= brake_min <= brake_min_correct 39 : : * brake_min <= brake_min_correct < ::ad::physics::Acceleration(0.) 40 : : */ 41 : 280782 : inline bool withinValidInputRange(::ad::rss::world::LongitudinalRssAccelerationValues const &input, 42 : : bool const logErrors = true) 43 : : { 44 : : // check for generic member input ranges 45 : 280782 : bool inValidInputRange = true; 46 : 280782 : inValidInputRange = withinValidInputRange(input.accel_max, logErrors) 47 [ + + + + ]: 280760 : && withinValidInputRange(input.brake_max, logErrors) && withinValidInputRange(input.brake_min, logErrors) 48 [ + + + + ]: 561542 : && withinValidInputRange(input.brake_min_correct, logErrors); 49 [ + + + - ]: 280782 : if (!inValidInputRange && logErrors) 50 : : { 51 [ + - ]: 31 : spdlog::error("withinValidInputRange(::ad::rss::world::LongitudinalRssAccelerationValues)>> {} has invalid member", 52 : : input); // LCOV_EXCL_BR_LINE 53 : : } 54 : : 55 : : // check for individual input ranges 56 [ + + ]: 280782 : if (inValidInputRange) 57 : : { 58 : : inValidInputRange 59 [ + - + + : 280751 : = (::ad::physics::Acceleration(0.) <= input.accel_max) && (input.accel_max <= ::ad::physics::Acceleration(1e2)); + - + - ] 60 [ + + + - ]: 280751 : if (!inValidInputRange && logErrors) 61 : : { 62 [ + - ]: 2000 : spdlog::error("withinValidInputRange(::ad::rss::world::LongitudinalRssAccelerationValues)>> {} element {} out of " 63 : : "valid input range [{}, {}]", 64 : : input, 65 [ + - ]: 2000 : input.accel_max, 66 : 2000 : ::ad::physics::Acceleration(0.), 67 : 4000 : ::ad::physics::Acceleration(1e2)); // LCOV_EXCL_BR_LINE 68 : : } 69 : : } 70 : : 71 [ + + ]: 280782 : if (inValidInputRange) 72 : : { 73 [ + - + - : 278751 : inValidInputRange = (::ad::physics::Acceleration(-1e2) <= input.brake_max) && (input.brake_max <= input.brake_min); + - + + ] 74 [ + + + - ]: 278751 : if (!inValidInputRange && logErrors) 75 : : { 76 [ + - ]: 2002 : spdlog::error("withinValidInputRange(::ad::rss::world::LongitudinalRssAccelerationValues)>> {} element {} out of " 77 : : "valid input range [{}, {}]", 78 : : input, 79 [ + - ]: 2002 : input.brake_max, 80 : 2002 : ::ad::physics::Acceleration(-1e2), 81 : 2002 : input.brake_min); // LCOV_EXCL_BR_LINE 82 : : } 83 : : } 84 : : 85 [ + + ]: 280782 : if (inValidInputRange) 86 : : { 87 [ + - + + ]: 276749 : inValidInputRange = (input.brake_max <= input.brake_min) && (input.brake_min <= input.brake_min_correct); 88 [ + + + - ]: 276749 : if (!inValidInputRange && logErrors) 89 : : { 90 [ + - ]: 2005 : spdlog::error("withinValidInputRange(::ad::rss::world::LongitudinalRssAccelerationValues)>> {} element {} out of " 91 : : "valid input range [{}, {}]", 92 : : input, 93 : 2005 : input.brake_min, 94 : 2005 : input.brake_max, 95 : 2005 : input.brake_min_correct); // LCOV_EXCL_BR_LINE 96 : : } 97 : : } 98 : : 99 [ + + ]: 280782 : if (inValidInputRange) 100 : : { 101 : : inValidInputRange 102 [ + - + - : 274744 : = (input.brake_min <= input.brake_min_correct) && (input.brake_min_correct < ::ad::physics::Acceleration(0.)); + - + + ] 103 [ + + + - ]: 274744 : if (!inValidInputRange && logErrors) 104 : : { 105 [ + - ]: 2005 : spdlog::error("withinValidInputRange(::ad::rss::world::LongitudinalRssAccelerationValues)>> {} element {} out of " 106 : : "valid input range [{}, {}]", 107 : : input, 108 : 2005 : input.brake_min_correct, 109 [ + - ]: 2005 : input.brake_min, 110 : 4010 : ::ad::physics::Acceleration(0.)); // LCOV_EXCL_BR_LINE 111 : : } 112 : : } 113 : : 114 : 280782 : return inValidInputRange; 115 : : }