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.
MSBitSetLogic< N >::MSBitSetLogic | ( | unsigned int | nLinks, |
Logic * | logic, | ||
Foes * | foes, | ||
std::bitset< 64 > | conts | ||
) | [inline] |
Use this constructor only.
Definition at line 69 of file MSBitSetLogic.h.
MSBitSetLogic< N >::~MSBitSetLogic | ( | ) | [inline] |
Destructor.
Definition at line 78 of file MSBitSetLogic.h.
References MSBitSetLogic< N >::myInternalLinksFoes, and MSBitSetLogic< N >::myLogic.
MSBitSetLogic< N >::MSBitSetLogic | ( | const MSBitSetLogic< N > & | ) | [private] |
Invalidated copy constructor.
const MSLogicJunction::LinkFoes& MSBitSetLogic< N >::getFoesFor | ( | unsigned int | linkIndex | ) | const [inline, virtual] |
Returns the foes of the given link.
Reimplemented from MSJunctionLogic.
Definition at line 85 of file MSBitSetLogic.h.
References MSBitSetLogic< N >::myLogic.
const std::bitset<64>& MSBitSetLogic< N >::getInternalFoesFor | ( | unsigned int | linkIndex | ) | const [inline, virtual] |
Reimplemented from MSJunctionLogic.
Definition at line 89 of file MSBitSetLogic.h.
References MSBitSetLogic< N >::myInternalLinksFoes.
bool MSBitSetLogic< N >::getIsCont | ( | unsigned int | linkIndex | ) | const [inline, virtual] |
Reimplemented from MSJunctionLogic.
Definition at line 93 of file MSBitSetLogic.h.
References MSBitSetLogic< N >::myConts.
unsigned int MSJunctionLogic::getLogicSize | ( | ) | const [inline, inherited] |
Definition at line 70 of file MSJunctionLogic.h.
References MSJunctionLogic::myNLinks.
Referenced by MSRightOfWayJunction::postloadInit().
virtual bool MSBitSetLogic< N >::isCrossing | ( | ) | const [inline, virtual] |
Reimplemented from MSJunctionLogic.
Definition at line 97 of file MSBitSetLogic.h.
References MSBitSetLogic< N >::myLogic.
unsigned int MSJunctionLogic::nLinks | ( | ) | [inherited] |
Returns the logic's number of links.
Definition at line 50 of file MSJunctionLogic.cpp.
References MSJunctionLogic::myNLinks.
MSBitSetLogic& MSBitSetLogic< N >::operator= | ( | const MSBitSetLogic< N > & | ) | [private] |
Invalidated assignment operator.
std::bitset<64> MSBitSetLogic< N >::myConts [private] |
Definition at line 113 of file MSBitSetLogic.h.
Referenced by MSBitSetLogic< N >::getIsCont().
MSLogicJunction::LinkFoes MSJunctionLogic::myDummyFoes [static, protected, inherited] |
A dummy foe container.
Definition at line 89 of file MSJunctionLogic.h.
Referenced by MSJunctionLogic::getFoesFor(), and MSJunctionLogic::getInternalFoesFor().
Foes* MSBitSetLogic< N >::myInternalLinksFoes [private] |
internal lanes logic
Definition at line 111 of file MSBitSetLogic.h.
Referenced by MSBitSetLogic< N >::getInternalFoesFor(), and MSBitSetLogic< N >::~MSBitSetLogic().
Logic* MSBitSetLogic< N >::myLogic [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().
unsigned int MSJunctionLogic::myNLinks [protected, inherited] |
The logic's number of links.
Definition at line 86 of file MSJunctionLogic.h.
Referenced by MSJunctionLogic::getLogicSize(), and MSJunctionLogic::nLinks().