ns2::VehicleFilter Class Reference


Detailed Description

class for selecting vehicles vehicles are selected if they are used between begin and end
Author:
Thimor Bohn <bohn@itm.uni-luebeck.de>

Definition at line 13 of file VehicleFilter.java.


Static Public Member Functions

static void filter (List< String > vehicleId, List< String > wantedVehicle, Map< String, Double > vehicleFirstOcc, Map< String, Double > vehicleLastOcc, double begin, double end)

Member Function Documentation

static void ns2::VehicleFilter::filter ( List< String >  vehicleId,
List< String >  wantedVehicle,
Map< String, Double >  vehicleFirstOcc,
Map< String, Double >  vehicleLastOcc,
double  begin,
double  end 
) [inline, static]

working method

Parameters:
vehicleId list of unique ids of vehicles in sumo simulation
wantedVehicle list of filtered vehicles ids
vehicleFirstOcc map: vehicle id -> first occurence of vehicle in sumo
vehicleLastOcc map: vehicle id -> last occurence of vehicle in sumo
begin sumo time at which ns2 should start to simulate
end sumo time at which ns2 should stop to simulate

Definition at line 23 of file VehicleFilter.java.

00029                         {
00030         for (String id: vehicleId) {
00031             // vehicle too late
00032             if (vehicleFirstOcc.get(id) > end) {
00033                 wantedVehicle.remove(id); // id is an object
00034             }
00035             // begin == end means end is end of sumo simulation, see Parser.java
00036             if (begin != end) {
00037                 // vehicle too early
00038                 if (vehicleLastOcc.get(id) < begin) {
00039                     wantedVehicle.remove(id); // id is an object
00040                 }
00041             } else {
00042                 // update stop time of ns2 simulation
00043                 end = Math.max(end, vehicleLastOcc.get(id));
00044             }
00045         }
00046         // change occurence times for use in ns2
00047         for (String id: wantedVehicle) {
00048             if (vehicleFirstOcc.get(id) < begin) {
00049                 vehicleFirstOcc.put(id, begin);
00050             }
00051             if (vehicleLastOcc.get(id) > end) {
00052                 vehicleLastOcc.put(id, end);
00053             }
00054         }
00055     }


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

Generated on Wed May 5 00:07:02 2010 for Sumo - Simulation of Urban MObility by  doxygen 1.5.6