Eclipse SUMO - Simulation of Urban MObility
NIVissimNodeDef_Edges.h
Go to the documentation of this file.
1 /****************************************************************************/
2 // Eclipse SUMO, Simulation of Urban MObility; see https://eclipse.org/sumo
3 // Copyright (C) 2001-2019 German Aerospace Center (DLR) and others.
4 // This program and the accompanying materials
5 // are made available under the terms of the Eclipse Public License v2.0
6 // which accompanies this distribution, and is available at
7 // http://www.eclipse.org/legal/epl-v20.html
8 // SPDX-License-Identifier: EPL-2.0
9 /****************************************************************************/
14 // -------------------
15 /****************************************************************************/
16 #ifndef NIVissimNodeDef_Edges_h
17 #define NIVissimNodeDef_Edges_h
18 
19 
20 // ===========================================================================
21 // included modules
22 // ===========================================================================
23 #include <config.h>
24 
25 
26 #include <string>
27 #include <map>
30 #include "NIVissimNodeDef.h"
31 
33  public NIVissimNodeDef {
34 public:
35  NIVissimNodeDef_Edges(int id, const std::string& name,
37  virtual ~NIVissimNodeDef_Edges();
38  static bool dictionary(int id, const std::string& name,
40 // virtual void computeBounding();
41 // virtual void searchAndSetConnections();
42  virtual double getEdgePosition(int edgeid) const;
43 
47  class id_matches {
48  public:
49  explicit id_matches(int id) : myEdgeID(id) { }
51  return e->getID() == myEdgeID;
52  }
53  private:
54  int myEdgeID;
55  };
56 
58  public:
61  return e->getEdgeID() == myEdge->getID() &&
63  }
64  private:
66  };
67 
68 protected:
70 };
71 
72 
73 #endif
74 
75 /****************************************************************************/
76 
NIVissimNodeParticipatingEdgeVector
std::vector< NIVissimNodeParticipatingEdge * > NIVissimNodeParticipatingEdgeVector
Definition: NIVissimNodeParticipatingEdgeVector.h:29
NIVissimNodeDef_Edges::id_matches::id_matches
id_matches(int id)
Definition: NIVissimNodeDef_Edges.h:49
NIVissimNodeDef_Edges::getEdgePosition
virtual double getEdgePosition(int edgeid) const
Definition: NIVissimNodeDef_Edges.cpp:102
NIVissimNodeDef_Edges::~NIVissimNodeDef_Edges
virtual ~NIVissimNodeDef_Edges()
Definition: NIVissimNodeDef_Edges.cpp:47
NIVissimExtendedEdgePoint::getEdgeID
int getEdgeID() const
Definition: NIVissimExtendedEdgePoint.cpp:44
NIVissimExtendedEdgePoint
Definition: NIVissimExtendedEdgePoint.h:42
NIVissimNodeDef.h
NIVissimNodeDef_Edges
Definition: NIVissimNodeDef_Edges.h:32
NIVissimNodeDef
Definition: NIVissimNodeDef.h:33
NIVissimNodeDef_Edges::NIVissimNodeDef_Edges
NIVissimNodeDef_Edges(int id, const std::string &name, const NIVissimNodeParticipatingEdgeVector &edges)
Definition: NIVissimNodeDef_Edges.cpp:42
NIVissimNodeDef_Edges::dictionary
static bool dictionary(int id, const std::string &name, const NIVissimNodeParticipatingEdgeVector &edges)
Definition: NIVissimNodeDef_Edges.cpp:56
NIVissimNodeParticipatingEdge
Definition: NIVissimNodeParticipatingEdge.h:36
NIVissimNodeDef_Edges::id_matches
Definition: NIVissimNodeDef_Edges.h:47
NIVissimNodeParticipatingEdge::getID
int getID() const
Definition: NIVissimNodeParticipatingEdge.cpp:38
NIVissimNodeDef_Edges::lying_within_match::operator()
bool operator()(NIVissimExtendedEdgePoint *e)
Definition: NIVissimNodeDef_Edges.h:60
NIVissimExtendedEdgePoint.h
NIVissimNodeParticipatingEdge::positionLiesWithin
bool positionLiesWithin(double pos) const
Definition: NIVissimNodeParticipatingEdge.cpp:44
NIVissimNodeDef_Edges::lying_within_match
Definition: NIVissimNodeDef_Edges.h:57
NIVissimNodeDef_Edges::id_matches::operator()
bool operator()(NIVissimNodeParticipatingEdge *e)
Definition: NIVissimNodeDef_Edges.h:50
NIVissimNodeDef_Edges::myEdges
NIVissimNodeParticipatingEdgeVector myEdges
Definition: NIVissimNodeDef_Edges.h:69
config.h
NIVissimNodeDef_Edges::lying_within_match::lying_within_match
lying_within_match(NIVissimNodeParticipatingEdge *e)
Definition: NIVissimNodeDef_Edges.h:59
NIVissimNodeParticipatingEdgeVector.h
NIVissimExtendedEdgePoint::getPosition
double getPosition() const
Definition: NIVissimExtendedEdgePoint.cpp:50
NIVissimNodeDef_Edges::id_matches::myEdgeID
int myEdgeID
Definition: NIVissimNodeDef_Edges.h:54
NIVissimNodeDef_Edges::lying_within_match::myEdge
NIVissimNodeParticipatingEdge * myEdge
Definition: NIVissimNodeDef_Edges.h:65