Branch data Line data Source code
1 : : /* 2 : : * ----------------- BEGIN LICENSE BLOCK --------------------------------- 3 : : * 4 : : * Copyright (C) 2018-2020 Intel Corporation 5 : : * 6 : : * SPDX-License-Identifier: MIT 7 : : * 8 : : * ----------------- END LICENSE BLOCK ----------------------------------- 9 : : */ 10 : : 11 : : /** 12 : : * Generated file 13 : : * @file 14 : : * 15 : : * Generator Version : 11.0.0-1997 16 : : */ 17 : : 18 : : #pragma once 19 : : 20 : : #include <cmath> 21 : : #include <limits> 22 : : #include "ad/map/point/ENUHeading.hpp" 23 : : #include "spdlog/fmt/ostr.h" 24 : : #include "spdlog/spdlog.h" 25 : : 26 : : /*! 27 : : * \brief check if the given ENUHeading is within valid input range 28 : : * 29 : : * \param[in] input the ENUHeading as an input value 30 : : * \param[in] logErrors enables error logging 31 : : * 32 : : * \returns \c true if ENUHeading is considered to be within the specified input range 33 : : * 34 : : * \note the specified input range is defined by 35 : : * std::numeric_limits<::ad::map::point::ENUHeading>::lowest() <= \c input <= 36 : : * std::numeric_limits<::ad::map::point::ENUHeading>::max() 37 : : * -3.141592655 <= \c input <= 3.141592655 38 : : */ 39 : 23 : inline bool withinValidInputRange(::ad::map::point::ENUHeading const &input, bool const logErrors = true) 40 : : { 41 : : // check for generic numeric limits of the type 42 [ + - + - ]: 45 : bool inValidInputRange = input.isValid() && (std::numeric_limits<::ad::map::point::ENUHeading>::lowest() <= input) 43 [ + + + - : 45 : && (input <= std::numeric_limits<::ad::map::point::ENUHeading>::max()); + - ] 44 [ + + + - ]: 23 : if (!inValidInputRange && logErrors) 45 : : { 46 [ + - ]: 1 : spdlog::error("withinValidInputRange(::ad::map::point::ENUHeading)>> {} out of numerical limits [{}, {}]", 47 : : input, 48 : 1 : std::numeric_limits<::ad::map::point::ENUHeading>::lowest(), 49 : 2 : std::numeric_limits<::ad::map::point::ENUHeading>::max()); // LCOV_EXCL_BR_LINE 50 : : } 51 : : // check for individual input range 52 [ + + ]: 23 : if (inValidInputRange) 53 : : { 54 : : inValidInputRange 55 [ + - + + : 22 : = (::ad::map::point::ENUHeading(-3.141592655) <= input) && (input <= ::ad::map::point::ENUHeading(3.141592655)); + - + + ] 56 [ + + + - ]: 22 : if (!inValidInputRange && logErrors) 57 : : { 58 [ + - ]: 6 : spdlog::error("withinValidInputRange(::ad::map::point::ENUHeading)>> {} out of valid input range [{}, {}]", 59 : : input, 60 : 6 : ::ad::map::point::ENUHeading(-3.141592655), 61 : 12 : ::ad::map::point::ENUHeading(3.141592655)); // LCOV_EXCL_BR_LINE 62 : : } 63 : : } 64 : 23 : return inValidInputRange; 65 : : }