Skip to content
Snippets Groups Projects
Select Git revision
  • 63ccc1033ef3ec3920a8c580d4dcaacd344eb130
  • master default protected
2 results

filesystemgenerator.py

Blame
  • filesystemgenerator.py 1.45 KiB
    from lib.filesystemmanager import FileSystemManager
    from lib.tasksetgenerator import TasksetGenerator
    
    class FileSystemGenerator:
    
        def __init__(self, max_hyperperiod, nbr_tasks):
            self.manager = FileSystemManager(max_hyperperiod, nbr_tasks)
            self.max_hyperperiod = max_hyperperiod
            self.nbr_tasks = nbr_tasks
       
        # Generate and collect unsolved tasksets in the given category
        def generate_unsolved_tasksets(self, volume, max_timeout):
            # Get the ones we have that we haven't been able to solve in max_timeout minutes
            tasksets = self.manager.get_all_not_solved_time(max_timeout)
            # If this is less than the number we want:
            # Create some more and save them
            if tasksets is None or len(tasksets) < volume:
                created_tasksets = self.create_tasksets(volume)
                self.manager.save_tasksets(created_tasksets)
    
                # If we created some new ones: update the ones we can run on.
                if tasksets is None or len(tasksets) != self.manager.get_nbr_unsolved_tasksets():
                    tasksets = self.manager.get_all_not_solved_time(max_timeout)
    
            return tasksets
    
        # NOTE: TAKE A NEW LOOK AT THIS ONE
        def load_tasksets(self, volume):
            if self.manager.get_nbr_tasksets(self.max_hyperperiod, self.nbr_tasks) < volume:
                pass
    
        def create_tasksets(self, volume):
            return TasksetGenerator(self.max_hyperperiod, self.nbr_tasks).generate_tasksets(volume)