def __init__(self, airplaneRequests, lanes=1): """ airplaneRequests: string formated as "name, submission time, requested time, take off time" repeated for as many requests as there are, with newlines between. list of strings formated as "name, submssion time, requested time, take off time" lanes -> integer greater then 0, defaults to 1 """ #if airplaneRequests is a string if isinstance(airplaneRequests, str): self.__airplaneRequests = [] for line in airplaneRequests.split('\n'): if len(line) > 1: self.__airplaneRequests.append(lineToRequst(line)) #if airplaneRequests is a list elif isinstance(airplaneRequests, list): self.__airplaneRequests = [ lineToRequst(line) for line in airplaneRequests ] #expected to be in correct format self.__currentIndexInAirplaneRequests = 0 self.__queue = PriorityQueue.PriorityQueue( PriorityQueue.CreateComparetor([('requested time', False), ('submission time', False), ('take off time', False)], False)) self.__currentTime = -1 self.__runways = [None] * lanes # [{"end time", "request"}]