ad_map_access
generated
include
ad
map
match
ENUObjectPositionListValidInputRange.hpp
Go to the documentation of this file.
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
18
#pragma once
19
20
#include <cmath>
21
#include <limits>
22
#include "
ad/map/match/ENUObjectPositionList.hpp
"
23
#include "
ad/map/match/ENUObjectPositionValidInputRange.hpp
"
24
#include "spdlog/fmt/ostr.h"
25
#include "spdlog/spdlog.h"
26
39
inline
bool
withinValidInputRange
(::
ad::map::match::ENUObjectPositionList
const
&input,
bool
const
logErrors =
true
)
40
{
41
bool
inValidInputRange = ((std::size_t(1)) <= input.size());
42
if
(!inValidInputRange && logErrors)
43
{
44
spdlog::error(
"withinValidInputRange(::ad::map::match::ENUObjectPositionList)>> {}, invalid input range"
,
45
input);
// LCOV_EXCL_BR_LINE
46
}
47
48
if
(inValidInputRange)
49
{
50
for
(
auto
const
&member : input)
51
{
52
bool
memberInValidInputRange =
withinValidInputRange
(member, logErrors);
53
inValidInputRange = inValidInputRange && memberInValidInputRange;
54
if
(!memberInValidInputRange && logErrors)
55
{
56
spdlog::error(
"withinValidInputRange(::ad::map::match::ENUObjectPositionList)>> {}, invalid member {}"
,
57
input,
58
member);
// LCOV_EXCL_BR_LINE
59
}
60
}
61
}
62
return
inValidInputRange;
63
}
withinValidInputRange
bool withinValidInputRange(::ad::map::match::ENUObjectPositionList const &input, bool const logErrors=true)
check if the given ENUObjectPositionList is within valid input range
Definition:
ENUObjectPositionListValidInputRange.hpp:39
ad::map::match::ENUObjectPositionList
std::vector<::ad::map::match::ENUObjectPosition > ENUObjectPositionList
DataType ENUObjectPositionList.
Definition:
ENUObjectPositionList.hpp:42
ENUObjectPositionValidInputRange.hpp
ENUObjectPositionList.hpp
Generated by
1.8.17