Kite - Detailed Router


Public Member Functions | List of all members
RoutingEventHistory Class Reference

History of RoutingEvent. More...

Public Member Functions

 RoutingEventHistory ()
 
 ~RoutingEventHistory ()
 
bool empty () const
 
size_t size () const
 
RoutingEventgetNth (size_t) const
 
RoutingEventgetRNth (size_t) const
 
void push (RoutingEvent *)
 
void clear ()
 

Detailed Description

History of RoutingEvent.

An history of all the routing events. We can afford to keep an history because while one event is a relatively big object, there is not that much of them (their number is roughly proportional to the number of TrackSegments).

One event is likely to appear more than one time in the history, in fact it will apprears each time it is ripped up.

Lastly, it is a way to keep track of all the allocated RoutingEvents. When history is deleted it will deleted all the events that it knows of.

Constructor & Destructor Documentation

◆ RoutingEventHistory()

Construct an empty RoutingEventHistory.

◆ ~RoutingEventHistory()

Delete a RoutingEventHistory.

Remark: The deletion of this object triggers the deletion of
all the RoutingEvent that are referenced in it.

Member Function Documentation

◆ empty()

bool empty ( ) const
inline

Returns: true if the history is empty.

◆ size()

size_t size ( ) const
inline

Returns: the number of events in the history.

Referenced by RoutingEventHistory::getNth(), and RoutingEventHistory::getRNth().

◆ getNth()

RoutingEvent * getNth ( size_t  pos) const

Returns: The event at index pos from the beginning of the history (NULL if pos exeed the size).

◆ getRNth()

RoutingEvent * getRNth ( size_t  pos) const

Returns: The event at index pos from the end of the history (NULL if pos exeed the size).

Referenced by SegmentFsm::conflictSolveByHistory().

◆ push()

void push ( RoutingEvent event)

Push a new RoutingEvent in the history.

Referenced by RoutingEvent::process().

◆ clear()

void clear ( )

Clear the history, also remove the RoutingEvent that are pointed to.

Referenced by RoutingEventHistory::~RoutingEventHistory().


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


Generated by doxygen 1.8.14 on Sun Nov 21 2021 Return to top of page
Kite - Detailed Router Copyright © 2008-2020 Sorbonne Universite. All rights reserved