コード例 #1
0
ファイル: LaneScheduler.cs プロジェクト: nover/dtu-02165
 public static List<LaneSchedulerAction> Expand(LaneSchedulerState state, LaneSchedulerReservation reservation)
 {
     List<LaneSchedulerAction> actions = new List<LaneSchedulerAction>();
     if (state.IsPossible(reservation))
     {
         for (int lane = 0; lane < state.numberOfLanes; lane++)
         {
             AppWeightPair appWeightPair = state.IsApplicable(lane, reservation.NumberOfLanes, reservation.NumberOfTimeSlots, reservation.StartTimeSlot);
             if (appWeightPair.applicable)
             {
                 actions.Add(new LaneSchedulerAction(lane, reservation, appWeightPair.weight));
             }
         }
     }
     return actions;
 }