Eclipse SUMO - Simulation of Urban MObility
MESegment::Queue Class Reference

Public Member Functions

void addDetector (MSMoveReminder *data)
 
void addReminders (MEVehicle *veh) const
 
bool allows (SUMOVehicleClass vclass) const
 
SUMOTime getBlockTime () const
 
SUMOTime getEntryBlockTime () const
 return the next time at which a vehicle may enter this queue More...
 
std::vector< MEVehicle * > & getModifiableVehicles ()
 
double getOccupancy () const
 
const std::vector< MEVehicle * > & getVehicles () const
 
 Queue (const SVCPermissions permissions)
 
MEVehicleremove (MEVehicle *v)
 
void setBlockTime (SUMOTime t)
 
void setEntryBlockTime (SUMOTime entryBlockTime)
 set the next time at which a vehicle may enter this queue More...
 
void setOccupancy (const double occ)
 
void setPermissions (SVCPermissions p)
 
int size () const
 

Private Attributes

SUMOTime myBlockTime = -1
 The block time. More...
 
std::vector< MSMoveReminder * > myDetectorData
 The data collection for all kinds of detectors. More...
 
SUMOTime myEntryBlockTime = SUMOTime_MIN
 The block time for vehicles who wish to enter this queue. More...
 
double myOccupancy = 0.
 The occupied space (in m) in the queue. More...
 
SVCPermissions myPermissions
 The vClass permissions for this queue. More...
 
std::vector< MEVehicle * > myVehicles
 

Detailed Description

Definition at line 70 of file MESegment.h.

Constructor & Destructor Documentation

◆ Queue()

MESegment::Queue::Queue ( const SVCPermissions  permissions)
inline

Definition at line 72 of file MESegment.h.

Member Function Documentation

◆ addDetector()

void MESegment::Queue::addDetector ( MSMoveReminder data)

Definition at line 84 of file MESegment.cpp.

◆ addReminders()

void MESegment::Queue::addReminders ( MEVehicle veh) const

Definition at line 92 of file MESegment.cpp.

References MSBaseVehicle::addReminder().

◆ allows()

bool MESegment::Queue::allows ( SUMOVehicleClass  vclass) const
inline

Definition at line 89 of file MESegment.h.

References myPermissions.

Referenced by MESegment::hasSpaceFor().

Here is the caller graph for this function:

◆ getBlockTime()

SUMOTime MESegment::Queue::getBlockTime ( ) const
inline

Definition at line 103 of file MESegment.h.

References myBlockTime.

Referenced by MESegment::receive(), and MESegment::send().

Here is the caller graph for this function:

◆ getEntryBlockTime()

SUMOTime MESegment::Queue::getEntryBlockTime ( ) const
inline

return the next time at which a vehicle may enter this queue

Definition at line 94 of file MESegment.h.

References myEntryBlockTime.

Referenced by MESegment::hasSpaceFor().

Here is the caller graph for this function:

◆ getModifiableVehicles()

std::vector<MEVehicle*>& MESegment::Queue::getModifiableVehicles ( )
inline

Definition at line 80 of file MESegment.h.

References myVehicles.

Referenced by MESegment::loadState(), and MESegment::receive().

Here is the caller graph for this function:

◆ getOccupancy()

double MESegment::Queue::getOccupancy ( ) const
inline

Definition at line 83 of file MESegment.h.

References myOccupancy.

Referenced by MESegment::hasSpaceFor(), MESegment::loadState(), MESegment::receive(), and MESegment::send().

Here is the caller graph for this function:

◆ getVehicles()

const std::vector<MEVehicle*>& MESegment::Queue::getVehicles ( ) const
inline

Definition at line 76 of file MESegment.h.

References myVehicles.

Referenced by MESegment::loadState().

Here is the caller graph for this function:

◆ remove()

MEVehicle * MESegment::Queue::remove ( MEVehicle v)

Definition at line 67 of file MESegment.cpp.

References MSVehicleType::getLengthWithGap(), MSBaseVehicle::getVehicleType(), myOccupancy, and myVehicles.

Referenced by MESegment::removeCar().

Here is the caller graph for this function:

◆ setBlockTime()

void MESegment::Queue::setBlockTime ( SUMOTime  t)
inline

Definition at line 106 of file MESegment.h.

References myBlockTime.

Referenced by MESegment::loadState(), and MESegment::send().

Here is the caller graph for this function:

◆ setEntryBlockTime()

void MESegment::Queue::setEntryBlockTime ( SUMOTime  entryBlockTime)
inline

set the next time at which a vehicle may enter this queue

Definition at line 99 of file MESegment.h.

References myEntryBlockTime.

Referenced by MESegment::receive().

Here is the caller graph for this function:

◆ setOccupancy()

void MESegment::Queue::setOccupancy ( const double  occ)
inline

Definition at line 86 of file MESegment.h.

References myOccupancy.

Referenced by MESegment::loadState(), and MESegment::receive().

Here is the caller graph for this function:

◆ setPermissions()

void MESegment::Queue::setPermissions ( SVCPermissions  p)
inline

Definition at line 110 of file MESegment.h.

References myPermissions.

◆ size()

int MESegment::Queue::size ( ) const
inline

Definition at line 73 of file MESegment.h.

References myVehicles.

Referenced by MESegment::hasSpaceFor(), and MESegment::loadState().

Here is the caller graph for this function:

Field Documentation

◆ myBlockTime

SUMOTime MESegment::Queue::myBlockTime = -1
private

The block time.

Definition at line 131 of file MESegment.h.

Referenced by getBlockTime(), and setBlockTime().

◆ myDetectorData

std::vector<MSMoveReminder*> MESegment::Queue::myDetectorData
private

The data collection for all kinds of detectors.

Definition at line 134 of file MESegment.h.

◆ myEntryBlockTime

SUMOTime MESegment::Queue::myEntryBlockTime = SUMOTime_MIN
private

The block time for vehicles who wish to enter this queue.

Definition at line 128 of file MESegment.h.

Referenced by getEntryBlockTime(), and setEntryBlockTime().

◆ myOccupancy

double MESegment::Queue::myOccupancy = 0.
private

The occupied space (in m) in the queue.

Definition at line 125 of file MESegment.h.

Referenced by getOccupancy(), remove(), and setOccupancy().

◆ myPermissions

SVCPermissions MESegment::Queue::myPermissions
private

The vClass permissions for this queue.

Definition at line 120 of file MESegment.h.

Referenced by allows(), and setPermissions().

◆ myVehicles

std::vector<MEVehicle*> MESegment::Queue::myVehicles
private

Definition at line 122 of file MESegment.h.

Referenced by getModifiableVehicles(), getVehicles(), remove(), and size().


The documentation for this class was generated from the following files: