ns2::Converter Class Reference


Detailed Description

central class of ns2-converter
Author:
Thimor Bohn <bohn@itm.uni-luebeck.de>

Definition at line 13 of file ns2/Converter.java.


Static Public Member Functions

static void convert (String[] args)

Private Member Functions

 Converter (String net, String trace, String activity, String mobility, String config, double begin, double end, double penetration, long seed, boolean hasPenetration)

Static Private Member Functions

static void help ()

Constructor & Destructor Documentation

ns2::Converter::Converter ( String  net,
String  trace,
String  activity,
String  mobility,
String  config,
double  begin,
double  end,
double  penetration,
long  seed,
boolean  hasPenetration 
) [inline, private]

constructor

Parameters:
net name of sumo net file
trace name of sumo trace file
activity name of ns2 activity file
mobility name of ns2 mobility file
config name of ns2 config file
begin sumo time at which ns2 should start to simulate
end sumo time at which ns2 should stop to simulate

Definition at line 63 of file ns2/Converter.java.

Referenced by convert().

00063                                                                                                                                                                                   {
00064         // 1. get net
00065         List<Edge> edges = new LinkedList<Edge>();
00066         Map<String, Junction> junctions = new HashMap<String, Junction>();
00067         NetReader.read(net, edges, junctions);
00068         
00069         // 2. translate net
00070         NetTranslater.translate(edges, junctions);
00071         
00072         // 3. get all vehicles (IDs, first occurence, last occurence)
00073         List<String> vehicleId = new LinkedList<String>();
00074         HashMap<String, Double> vehicleFirstOcc = new HashMap<String, Double>();
00075         HashMap<String, Double> vehicleLastOcc  = new HashMap<String, Double>();
00076         VehicleReader.read(trace, vehicleId, vehicleFirstOcc, vehicleLastOcc);
00077         
00078         // 4. filter vehicles (intersection: [first occurence, last occurence], [begin time, end time]
00079         List<String> wantedVehicle = new LinkedList<String>(vehicleId);
00080         VehicleFilter.filter(vehicleId, wantedVehicle, vehicleFirstOcc, vehicleLastOcc, begin, end);
00081         
00082         // 5. Randomize new id
00083         List<String> vehicleNewId = new LinkedList<String>();
00084         IdRandomizer.randomize(wantedVehicle, vehicleNewId, seed);
00085         
00086         // 6. write mobility file (contains every movement of all (wanted) vehicles
00087         MobilityWriter.write(trace, mobility, wantedVehicle, vehicleNewId, edges, begin, end, penetration, hasPenetration);
00088         
00089         // 7. write activity file (contains first and last occurence of all (wanted -> filtered) vehicles
00090         ActivityWriter.write(activity, wantedVehicle, vehicleNewId, vehicleFirstOcc, vehicleLastOcc, begin, penetration, hasPenetration);
00091 
00092         // 8. write config file (contains statical information about simulation)
00093         ConfigWriter.write(config, activity, mobility, edges, wantedVehicle, vehicleFirstOcc, vehicleLastOcc, begin, penetration, hasPenetration);
00094     }


Member Function Documentation

static void ns2::Converter::convert ( String[]  args  )  [inline, static]

object creation

Parameters:
args command line arguments

Definition at line 18 of file ns2/Converter.java.

References ns2::Parameter::activity, ns2::Parameter::begin, ns2::Parameter::config, Converter(), ns2::Parameter::end, ns2::Parameter::hasPenetration, help(), ns2::Parameter::mobility, ns2::Parameter::net, ns2::Parameter::penetration, ns2::Parameter::seed, and ns2::Parameter::trace.

00018                                               {
00019         // parse parameters
00020         Parameter param = null;
00021         try {
00022             param = Parser.parse(args);
00023         } catch (IllegalArgumentException e) {
00024             System.err.println(e);
00025             help();
00026         }
00027         // call constructor
00028         if (param != null) {
00029             new Converter(param.net, param.trace, param.activity, param.mobility, param.config, param.begin, param.end, param.penetration, param.seed, param.hasPenetration);
00030         } else {
00031             System.err.println("param == null");
00032         }
00033     }

static void ns2::Converter::help (  )  [inline, static, private]

some error occured print parameter options

Definition at line 40 of file ns2/Converter.java.

Referenced by convert().

00040                                {
00041         System.out.println("needed options:");
00042         System.out.println("-n <sumo net.xml file>");
00043         System.out.println("-t <sumo netstate-dump file>");
00044         System.out.println("-a <output activity file>");
00045         System.out.println("-m <output mobility file>");
00046         System.out.println("-c <output config file]");
00047         System.out.println("-b <converting begin time>");
00048         System.out.println("-e <converting end time>");
00049         System.out.println("[ -p <penetration rate (0..1)> ] ");
00050         System.out.println("[ -s <seed for random numbers (used to determine fraction of equipped cars)> ] ");
00051     }


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