class Process: def __init__(self): self.env = None self.__process = None def start(self, env, *args): self.env = env self.__process = env.process(self.process(*args)) def process(self, *args): raise NotImplementedError class TickProcess(Process): def __init__(self, tick): super().__init__() if tick < 1: raise ValueError('tick must be greatert than or equal to 1') self.tick = tick