Public Member Functions | |
KnownRSUsList () | |
synchronized void | updateRSU (RSU rsu, long ID, int x, int y, boolean isEncrypted) |
void | checkOutdatedRSUs () |
RSU | findNearestRSU (int rsuX, int rsuY, int destX, int destY, int maxDistance) |
KnownRSU[] | getFirstKnownRSU () |
int | getSize () |
void | clear () |
Static Public Member Functions | |
static void | setTimePassed (int time) |
A list of all known Road-Side-Units which was discovered through beacons. In contrast to the KnownPenalties- class, an own class is used for storing the information about the RSUs. Although this means slightly more overhead, it should not be a big case and allows better extensibility.
A simple hash algorithm based on the RSU ID is used to get better performance. The hash determines the corresponding linked list(beginnings of linked lists are found in head_
). Known RSUs with the same hash are connected together through their next_
and previous_
values (see KnownRSU-class).
|
inline |
Empty constructor.
|
inline |
Checks if a RSU is too old so that it can be removed. Note that this function is not synchronized! You need to make sure that no other thread uses any function on this object at the same time!
|
inline |
Clears everything from this data structure.
|
inline |
Finds the nearest known RSU to a destination. Only searches for non encrypted RSUs
|
inline |
Gets an hashed array with known RSUs (array length depends on the HASH_SIZE). You can iterate through all known RSUs by using getNext()
until you get to a null
element on all elements of this array
|
inline |
Gets the amount of known RSUs stored.
|
inlinestatic |
Sets the time passed since simulation start.
time | the new time in milliseconds |
|
inline |