IEnumerable<DataValue> GetSelectedDataValues(LogItemSchema schema)
{
List<DataValue> combined = new List<DataValue>();
List<Flight> selected = GetSelectedFlights();
if (selected.Count == 0)
{
// show everything.
selected.Add(new Flight() { StartTime = DateTime.MinValue, Duration = TimeSpan.MaxValue });
}
foreach (IDataLog log in this.logs)
{
if (log != null)
{
foreach (var flight in selected)
{
if (flight.Log == null || flight.Log == log)
{
combined.AddRange(log.GetDataValues(schema, flight.StartTime, flight.Duration));
}
}
}
}
return combined;
}