Eclipse SUMO - Simulation of Urban MObility
GNECandidateElement.h
Go to the documentation of this file.
1 /****************************************************************************/
2 // Eclipse SUMO, Simulation of Urban MObility; see https://eclipse.dev/sumo
3 // Copyright (C) 2001-2024 German Aerospace Center (DLR) and others.
4 // This program and the accompanying materials are made available under the
5 // terms of the Eclipse Public License 2.0 which is available at
6 // https://www.eclipse.org/legal/epl-2.0/
7 // This Source Code may also be made available under the following Secondary
8 // Licenses when the conditions for such availability set forth in the Eclipse
9 // Public License 2.0 are satisfied: GNU General Public License, version 2
10 // or later which is available at
11 // https://www.gnu.org/licenses/old-licenses/gpl-2.0-standalone.html
12 // SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-or-later
13 /****************************************************************************/
18 // class for candidate elements
19 /****************************************************************************/
20 #pragma once
21 #include <config.h>
22 
23 
24 // ===========================================================================
25 // class definitions
26 // ===========================================================================
27 
29 
30 public:
33 
36 
38  void resetCandidateFlags();
39 
41  bool isPossibleCandidate() const;
42 
44  bool isSourceCandidate() const;
45 
47  bool isTargetCandidate() const;
48 
50  bool isSpecialCandidate() const;
51 
53  bool isConflictedCandidate() const;
54 
56  bool isInvalidCandidate() const;
57 
59  void setPossibleCandidate(const bool value);
60 
62  void setSourceCandidate(const bool value);
63 
65  void setTargetCandidate(const bool value);
66 
68  void setSpecialCandidate(const bool value);
69 
71  void setConflictedCandidate(const bool value);
72 
74  void setInvalidCandidate(const bool value);
75 
78 
80  double getReachability() const;
81 
83  void setReachability(const double reachability);
84 
86  void resetReachability();
87 
89 
90 protected:
92  bool myPossibleCandidate = false;
93 
95  bool mySourceCandidate = false;
96 
98  bool myTargetCandidate = false;
99 
101  bool mySpecialCandidate = false;
102 
104  bool myConflictedCandidate = false;
105 
107  bool myInvalidCandidate = false;
108 
110  double myReachability = -1;
111 
112 private:
115 
118 };
void setReachability(const double reachability)
set current reachability (traveltime)
bool myPossibleCandidate
flag to mark this element as possible candidate
GNECandidateElement & operator=(const GNECandidateElement &src)=delete
Invalidated assignment operator.
bool mySpecialCandidate
flag to mark this element as special candidate
bool myInvalidCandidate
flag to mark this element as invalid candidate
void setInvalidCandidate(const bool value)
set element as invalid candidate
bool isSpecialCandidate() const
check if this element is a special candidate
GNECandidateElement(const GNECandidateElement &)=delete
Invalidated copy constructor.
void resetCandidateFlags()
reset candidate flags
void setTargetCandidate(const bool value)
set element as target candidate
bool isPossibleCandidate() const
check if this element is a possible candidate
bool isInvalidCandidate() const
check if this element is a invalid candidate
void resetReachability()
reset reachability (traveltime)
void setPossibleCandidate(const bool value)
set element as possible candidate
GNECandidateElement()
Constructor.
bool isTargetCandidate() const
check if this element is a target candidate
double getReachability() const
get current reachability (traveltime)
void setSourceCandidate(const bool value)
set element as source candidate
bool isSourceCandidate() const
check if this element is a source candidate
bool isConflictedCandidate() const
check if this element is a conflicted candidate
bool myTargetCandidate
flag to mark this element as target candidate
void setConflictedCandidate(const bool value)
set element as conflicted candidate
double myReachability
value for reachability
bool myConflictedCandidate
flag to mark this element as conflicted candidate
bool mySourceCandidate
flag to mark this element as source candidate
void setSpecialCandidate(const bool value)
set element as special candidate
~GNECandidateElement()
Destructor.