6 #include <boost/filesystem.hpp> 9 namespace fs = boost::filesystem;
18 std::equal(rhs.
begin(
false), rhs.
end(
false), lhs.
begin(
false),
19 [](
auto&
p1,
auto&
p2) {
return *
p1.constData() == *
p2.constData(); });
30 std::equal(rhsRegelem.begin(), rhsRegelem.end(), lhsRegelem.begin(),
31 [](
auto& r1,
auto& r2) {
return *r1->constData() == *r2->constData(); });
40 std::equal(rhsOuter.begin(), rhsOuter.end(), lhsOuter.begin(),
41 [](
auto& ls1,
auto& ls2) {
return *ls1.constData() == *ls2.constData(); }) &&
43 std::equal(rhsRegelem.begin(), rhsRegelem.end(), lhsRegelem.begin(),
44 [](
auto& r1,
auto& r2) {
return *r1->constData() == *r2->constData(); });
49 return rhs.
size() == lhs.
size() && std::all_of(rhs.
begin(), rhs.
end(), [&lhs](
auto& v1) {
50 return *v1.constData() == *lhs.
find(v1.id())->constData();
57 return rhs.size() == lhs.size() && std::all_of(rhs.begin(), rhs.end(), [&lhs](
auto& v1) {
58 return *v1->constData() == *(*lhs.find(v1->id()))->constData();
68 namespace test_setup {
69 inline Id getId(
int& num) {
return -(num++); }
96 inline bool hasId(
const Ids& ids,
Id id) {
return std::find(ids.begin(), ids.end(),
id) != ids.end(); }
120 return Area(
getId(num), {lsO1, lsO2}, {{lsI11, lsI12}, {lsI21, lsI22, lsI23}},
127 char dir[] = {
"/tmp/lanelet2_io_test.XXXXXX"};
128 auto* res = mkdtemp(dir);
129 if (res ==
nullptr) {
141 const fs::path&
get()
const {
return path_; }
ConstInnerBounds innerBounds() const
bool hasId(const Ids &ids, Id id)
static constexpr char RuleName[]
RegulatoryElementConstPtrs regulatoryElements() const
std::shared_ptr< RegulatoryElement > RegulatoryElementPtr
Point3d setUpPoint(int &num, int xOffset=0, const std::string &type=AttributeValueString::Start)
static constexpr const char Road[]
const_iterator end() const
IteratorT begin(bool inverted) const noexcept
static constexpr const char Curbstone[]
static constexpr const char RefLine[]
Tempfile & operator=(Tempfile &&rhs) noexcept=delete
Lanelet setUpLanelet(int &num, const std::string &type=AttributeValueString::Road)
static constexpr const char Start[]
ConstLineStrings3d outerBound() const
LineString3d setUpLineString(int &num, const std::string &type=AttributeValueString::Curbstone)
RegulatoryElementPtr setUpRegulatoryElement(int &num)
const_iterator find(Id id) const
static constexpr const char StopLine[]
static constexpr const char TrafficLight[]
static constexpr const char Type[]
static RegulatoryElementPtr create(std::string ruleName, const RegulatoryElementDataPtr &data)
const std::shared_ptr< const LineStringData > & constData() const
const ConstLineString3d & rightBound() const
LaneletLayer laneletLayer
auto size() const noexcept
RegulatoryElementLayer regulatoryElementLayer
RegulatoryElementPtr setUpGenericRegulatoryElement(int &num)
static constexpr char RuleName[]
static constexpr const char Parking[]
Area setUpArea(int &num, const std::string &type=AttributeValueString::Parking)
const_iterator begin() const
const ConstLineString3d & leftBound() const
static constexpr const char Subtype[]
IteratorT end(bool inverted) const noexcept
PolygonLayer polygonLayer
Tempfile(std::string name)
LineStringLayer lineStringLayer
static constexpr const char Refers[]
RegulatoryElementConstPtrs regulatoryElements() const
RuleParameterMap parameters
bool operator==(const ConstLaneletOrArea &lhs, const ConstLaneletOrArea &rhs)