message: fix multiple track files
diff: @@ -145,6 +145,7 @@ class InteractionDataWindowStatesGeometries(ConfigReaderAgentStatesAndGeometries
  window_start = None
  window_end = None
  track_dict_list = None
  + current_track_file = None
  def create_from_config(self, config_param_object, road_corridor):
  track_file_names = config_param_object["TrackFilenames", "Path to track file (csv)",
  "modules/runtime/tests/data/interaction_dataset_DE_merging_vehicle_tracks_*00.csv"]
  @@ -158,34 +159,37 @@ class InteractionDataWindowStatesGeometries(ConfigReaderAgentStatesAndGeometries
  minimum_numbers_per_lane = config_param_object["MinimumNumbersPerLane", "List where each element specifies how man vehicles must be at minimum at this lane,\
  lane position equals list index", [1, 0]]
  - # todo: would be better to load this only once for the whole scenario genarion
  - agent_geometries = []
  - agent_states = []
  - lane_positions = []
  - tracks = []
  -
  -
  window_start = InteractionDataWindowStatesGeometries.window_start
  window_end = InteractionDataWindowStatesGeometries.window_end
  track_dict_list = InteractionDataWindowStatesGeometries.track_dict_list
  + current_track_file = InteractionDataWindowStatesGeometries.current_track_file
  # reset when a new scenario generation starts
  if self.current_scenario_idx == 0:
  window_start = min_time
  window_end = min_time + window_length
  track_dict_list = self.load_tracks(track_file_names)
  - # offset between scenarios
  + current_track_file = 0
  + else:
  window_start += skip_time_scenarios
  window_end += skip_time_scenarios
  - current_track_file = 0
  scenario_track_ids = []
  while len(scenario_track_ids) == 0 and current_track_file < len(track_dict_list):
  track_dict = track_dict_list[current_track_file]
  scenario_track_ids, window_start, window_end = self.find_track_ids_moving_window(window_start, window_end, track_dict, only_on_one_lane, minimum_numbers_per_lane,
  window_length, skip_time_search, min_time, max_time, road_corridor, wheel_base)
  + if len(scenario_track_ids) > 0:
  + break
  + window_start = min_time
  + window_end = min_time + window_length
  + current_track_file += 1
  if len(scenario_track_ids) < 1:
  raise ValueError("No track ids found for scenario idx {}. Consider lowering the number of scenarios.".format(self.current_scenario_idx))
  + agent_geometries = []
  + agent_states = []
  + lane_positions = []
  + tracks = []
  for track_id in scenario_track_ids:
  track = track_dict[track_id]
  numpy_state = self.get_init_state(track, window_start)
  @@ -201,6 +205,8 @@ class InteractionDataWindowStatesGeometries(ConfigReaderAgentStatesAndGeometries
  InteractionDataWindowStatesGeometries.window_start = window_start
  InteractionDataWindowStatesGeometries.window_end = window_end
  InteractionDataWindowStatesGeometries.track_dict_list = track_dict_list
  + InteractionDataWindowStatesGeometries.current_track_file = current_track_file
  +
  return agent_states, agent_geometries, {"track_ids": scenario_track_ids, "tracks" : tracks, \
  "agent_ids" : scenario_track_ids, "start_time" : window_start, "end_time" : window_end, \
  "agent_lane_positions" : lane_positions}, config_param_object
  