private VehicleLocation LookForLocation(DateTime t, Dictionary<long, VehicleLocation> listLocations)
{
long time = ToMilliseconds(t);
// Time at which the GPS position is actually search and found
long actualTime = time;
int millisSTEP = 1;
// 2 seconds (2000 ms) in the log as absolute maximum
int maxIteration = 2000;
bool found = false;
int iteration = 0;
VehicleLocation location = null;
while (!found && iteration < maxIteration)
{
found = listLocations.ContainsKey(actualTime);
if (found)
{
location = listLocations[actualTime];
}
else
{
actualTime += millisSTEP;
iteration++;
}
}
/*if (location == null)
TXT_outputlog.AppendText("Time not found in log: " + time + "\n");
else
TXT_outputlog.AppendText("GPS position found " + (actualTime - time) + " ms away\n");*/
return location;
}