SUMO - Simulation of Urban MObility
|
#include <MSBitSetLogic.h>
Public Types | |
typedef std::vector < std::bitset< N > > | Foes |
Container holding the information which internal lanes prohibt which links Build the same way as Logic. | |
typedef std::vector < std::bitset< N > > | Logic |
Container that holds the right of way bitsets. Each link has it's own bitset. The bits in the bitsets correspond to the links. To create a bitset for a particular link, set the bits to true that correspond to links that have the right of way. All others set to false, including the link's "own" link-bit. |
Public Member Functions | |
const MSLogicJunction::LinkFoes & | getFoesFor (unsigned int linkIndex) const |
Returns the foes of the given link. | |
const std::bitset< 64 > & | getInternalFoesFor (unsigned int linkIndex) const |
bool | getIsCont (unsigned int linkIndex) const |
unsigned int | getLogicSize () const |
virtual bool | isCrossing () const |
MSBitSetLogic (unsigned int nLinks, Logic *logic, Foes *foes, std::bitset< 64 > conts) | |
Use this constructor only. | |
unsigned int | nLinks () |
Returns the logic's number of links. | |
~MSBitSetLogic () | |
Destructor. |
Protected Attributes | |
unsigned int | myNLinks |
The logic's number of links. |
Static Protected Attributes | |
static MSLogicJunction::LinkFoes | myDummyFoes |
A dummy foe container. |
Private Member Functions | |
MSBitSetLogic (const MSBitSetLogic &) | |
Invalidated copy constructor. | |
MSBitSetLogic & | operator= (const MSBitSetLogic &) |
Invalidated assignment operator. |
Private Attributes | |
std::bitset< 64 > | myConts |
Foes * | myInternalLinksFoes |
internal lanes logic | |
Logic * | myLogic |
junctions logic based on std::bitset |
N is sum of the number of links of the junction's inLanes.
Definition at line 52 of file MSBitSetLogic.h.
typedef std::vector< std::bitset< N > > MSBitSetLogic< N >::Foes |
Container holding the information which internal lanes prohibt which links Build the same way as Logic.
Definition at line 64 of file MSBitSetLogic.h.
typedef std::vector< std::bitset< N > > MSBitSetLogic< N >::Logic |
Container that holds the right of way bitsets. Each link has it's own bitset. The bits in the bitsets correspond to the links. To create a bitset for a particular link, set the bits to true that correspond to links that have the right of way. All others set to false, including the link's "own" link-bit.
Definition at line 60 of file MSBitSetLogic.h.
|
inline |
Use this constructor only.
Definition at line 69 of file MSBitSetLogic.h.
|
inline |
Destructor.
Definition at line 78 of file MSBitSetLogic.h.
References MSBitSetLogic< N >::myInternalLinksFoes, and MSBitSetLogic< N >::myLogic.
|
private |
Invalidated copy constructor.
|
inlinevirtual |
Returns the foes of the given link.
Reimplemented from MSJunctionLogic.
Definition at line 85 of file MSBitSetLogic.h.
References MSBitSetLogic< N >::myLogic.
|
inlinevirtual |
Reimplemented from MSJunctionLogic.
Definition at line 89 of file MSBitSetLogic.h.
References MSBitSetLogic< N >::myInternalLinksFoes.
|
inlinevirtual |
Reimplemented from MSJunctionLogic.
Definition at line 93 of file MSBitSetLogic.h.
References MSBitSetLogic< N >::myConts.
|
inlineinherited |
Definition at line 70 of file MSJunctionLogic.h.
References MSJunctionLogic::myNLinks.
Referenced by MSRightOfWayJunction::postloadInit().
|
inlinevirtual |
Reimplemented from MSJunctionLogic.
Definition at line 97 of file MSBitSetLogic.h.
References MSBitSetLogic< N >::myLogic.
|
inherited |
Returns the logic's number of links.
Definition at line 50 of file MSJunctionLogic.cpp.
References MSJunctionLogic::myNLinks.
|
private |
Invalidated assignment operator.
|
private |
Definition at line 113 of file MSBitSetLogic.h.
Referenced by MSBitSetLogic< N >::getIsCont().
|
staticprotectedinherited |
A dummy foe container.
Definition at line 89 of file MSJunctionLogic.h.
Referenced by MSJunctionLogic::getFoesFor(), and MSJunctionLogic::getInternalFoesFor().
|
private |
internal lanes logic
Definition at line 111 of file MSBitSetLogic.h.
Referenced by MSBitSetLogic< N >::getInternalFoesFor(), and MSBitSetLogic< N >::~MSBitSetLogic().
|
private |
junctions logic based on std::bitset
Definition at line 108 of file MSBitSetLogic.h.
Referenced by MSBitSetLogic< N >::getFoesFor(), MSBitSetLogic< N >::isCrossing(), and MSBitSetLogic< N >::~MSBitSetLogic().
|
protectedinherited |
The logic's number of links.
Definition at line 86 of file MSJunctionLogic.h.
Referenced by MSJunctionLogic::getLogicSize(), and MSJunctionLogic::nLinks().