Aimsun Next Scripting: GKBusPreemption Class Reference
Aimsun Next Scripting  22
Public Types | Public Member Functions | List of all members
GKBusPreemption Class Reference

Public Types

enum  GKBusPreemptionType { eAlternative , eAllPhases }
 

Public Member Functions

 GKBusPreemption ()
 
bool addPTLine (GKPublicLine *PTline)
 
bool removePTLine (GKPublicLine *PTline)
 
QVector< GKPublicLine * > getPTLines () const
 
void removePTLines ()
 
bool addDwellPhase (GKControlPhase *idPhase)
 
bool removeDwellPhase (GKControlPhase *idPhase)
 
const QVector< GKControlPhase * > & getDwellPhases () const
 
void removeDwellPhases ()
 
bool addDetectorPriorityRequest (GKDetector *detector)
 
bool removeDetectorPriorityRequest (GKDetector *detector)
 
QVector< GKDetector * > getDetectorPriorityRequest () const
 
void removeDetectorPriorityRequest ()
 
bool addDetectorPriorityEnd (GKDetector *detector)
 
bool removeDetectorPriorityEnd (GKDetector *detector)
 
QVector< GKDetector * > getDetectorPriorityEnd () const
 
void removeDetectorPriorityEnd ()
 
void setDelayTime (const float adelayTime)
 
float getDelayTime () const
 
void setInhibitTime (const float aInhibitTime)
 
float getInhibitTime () const
 
void setMinimumDwellGreen (const float minDwellGreen)
 
float getMinimumDwellGreen () const
 
void setMaximumDwellGreen (const float maxDwellGreen)
 
float getMaximumDwellGreen () const
 
void setReserveTime (const float areserveTime)
 
float getReserveTime () const
 
void setType (const GKBusPreemptionType atype)
 
GKBusPreemptionType getType () const
 

Detailed Description

Priority information in a control plan for a node (GKControlJunction) to foresee the arrival of a transit vehicle in order to anticipate the phase that gives it the right of way. It takes into account the following elements:

If there are several phases in the same node that could receive priority by request, a different Priority Set must be defined for each one.

Member Enumeration Documentation

◆ GKBusPreemptionType

Defines two types of priority to apply: Serve All (eAllPhases) or Alternative (eAlternative). Serve All serves all the remaining phases between the current green phase and the dwell phase with their minimum green time. The Alternative serves the dwell phase as soon as possible.

Enumerator
eAlternative 
eAllPhases 

Constructor & Destructor Documentation

◆ GKBusPreemption()

GKBusPreemption::GKBusPreemption ( )

Member Function Documentation

◆ addDetectorPriorityEnd()

bool GKBusPreemption::addDetectorPriorityEnd ( GKDetector detector)

Adds a detector to the list of detectors that end the priority

◆ addDetectorPriorityRequest()

bool GKBusPreemption::addDetectorPriorityRequest ( GKDetector detector)

Adds a detector to the list of detectors to request priority.

◆ addDwellPhase()

bool GKBusPreemption::addDwellPhase ( GKControlPhase idPhase)

Adds a dwell phase, that is a phase that gives right of way to the emitted priority request, to the bus priority structure. In a multiring control plan one phase per ring (all in the same barrier) should be added. In a single ring just one dwell phase should be defined.

◆ addPTLine()

bool GKBusPreemption::addPTLine ( GKPublicLine PTline)

Adds a Transit Line that will activate a priority request for the dwell phase.

◆ getDelayTime()

float GKBusPreemption::getDelayTime ( ) const

Gets the Delay Time that is the number of seconds defined to delay the start of the priority timing once a vehicle that activated the priority has been detected.

◆ getDetectorPriorityEnd()

QVector< GKDetector * > GKBusPreemption::getDetectorPriorityEnd ( ) const

Returns the list of detectors that end the priority

◆ getDetectorPriorityRequest()

QVector< GKDetector * > GKBusPreemption::getDetectorPriorityRequest ( ) const

Returns the list of detectors to request priority.

◆ getDwellPhases()

const QVector< GKControlPhase * > & GKBusPreemption::getDwellPhases ( ) const

Returns the list of dwell phases defined for this bus priority. In a multiring control plan there should be one phase per ring (all in the same barrier). In a single ring there should be just one dwell phase.

◆ getInhibitTime()

float GKBusPreemption::getInhibitTime ( ) const

Gets the inhibit time, that is the duration of the interval while the activation of any phase that is not the requested priority phase is prevented. This interval starts at the beginning of the request, and during this interval, calls from other phases are not taken into account.

◆ getMaximumDwellGreen()

float GKBusPreemption::getMaximumDwellGreen ( ) const

Gets the maximum duration of the Dwell phase

◆ getMinimumDwellGreen()

float GKBusPreemption::getMinimumDwellGreen ( ) const

Gets the minimum duration of the Dwell phase

◆ getPTLines()

QVector< GKPublicLine * > GKBusPreemption::getPTLines ( ) const

Gets the list of Transit Lines that will activate a priority request for the dwell phase.

◆ getReserveTime()

float GKBusPreemption::getReserveTime ( ) const

Gets the reserve time, that is the time during which any other priority request is prevented when one has just been completed. This is used to prevent frequent priority services.

◆ getType()

GKBusPreemptionType GKBusPreemption::getType ( ) const

Gets the type of priority set to be applied: Serve All (eAllPhases) or Alternative (eAlternative). Serve All serves all the remaining phases between the current green phase and the dwell phase with their minimum green time. The Alternative serves the dwell phase as soon as possible.

◆ removeDetectorPriorityEnd() [1/2]

void GKBusPreemption::removeDetectorPriorityEnd ( )

Clears the list of detectors that end the priority

◆ removeDetectorPriorityEnd() [2/2]

bool GKBusPreemption::removeDetectorPriorityEnd ( GKDetector detector)

Removes a detector from the list of detectors that end the priority

◆ removeDetectorPriorityRequest() [1/2]

void GKBusPreemption::removeDetectorPriorityRequest ( )

Clears the list of detectors to request priority

◆ removeDetectorPriorityRequest() [2/2]

bool GKBusPreemption::removeDetectorPriorityRequest ( GKDetector detector)

Removes a detector from the list of detectors to request priority.

◆ removeDwellPhase()

bool GKBusPreemption::removeDwellPhase ( GKControlPhase idPhase)

Removes a dwell phase from the bus priority structure.

◆ removeDwellPhases()

void GKBusPreemption::removeDwellPhases ( )

Removes all dwell phases defined for this bus priority.

◆ removePTLine()

bool GKBusPreemption::removePTLine ( GKPublicLine PTline)

Removes a Transit Line from the list of lines that activate a priority request for the dwell phase.

◆ removePTLines()

void GKBusPreemption::removePTLines ( )

Removes all Transit Lines from list of lines that will activate a priority request for the dwell phase.

◆ setDelayTime()

void GKBusPreemption::setDelayTime ( const float  adelayTime)

Sets the Delay Time, that is the number of seconds to delay the start of the priority timing once a vehicle that activated the priority has been detected.

◆ setInhibitTime()

void GKBusPreemption::setInhibitTime ( const float  aInhibitTime)

Sets the Inhibit Time, that is the duration of the interval while the activation of any phase that is not the requested priority phase is prevented. This interval starts at the beginning of the request, and during this interval, calls from other phases are not taken into account.

◆ setMaximumDwellGreen()

void GKBusPreemption::setMaximumDwellGreen ( const float  maxDwellGreen)

Sets the maximum duration of the Dwell phase

◆ setMinimumDwellGreen()

void GKBusPreemption::setMinimumDwellGreen ( const float  minDwellGreen)

Sets the minimum duration of the Dwell phase.

◆ setReserveTime()

void GKBusPreemption::setReserveTime ( const float  areserveTime)

Sets the reserve time, that is the time during which any other priority request is prevented when one has just been completed. This is used to prevent frequent priority services.

◆ setType()

void GKBusPreemption::setType ( const GKBusPreemptionType  atype)

It sets the type of priority to apply: Serve All (eAllPhases) or Alternative (eAlternative). Serve All serves all the remaining phases between the current green phase and the dwell phase with their minimum green time. The Alternative serves the dwell phase as soon as possible.

© Aimsun SLU
Aimsun ®