18 lines
446 B
Python
Raw Normal View History

2024-05-09 14:29:10 +09:00
import simpy
2024-05-14 21:19:46 +09:00
from config import Config
2024-05-13 08:49:09 +09:00
from node import Node
from p2p import P2p
2024-05-09 19:37:39 +09:00
2024-05-09 14:29:10 +09:00
class Simulation:
2024-05-14 21:19:46 +09:00
def __init__(self, config: Config):
self.config = config
2024-05-09 14:29:10 +09:00
self.env = simpy.Environment()
2024-05-09 19:37:39 +09:00
self.p2p = P2p(self.env)
2024-05-14 21:19:46 +09:00
self.nodes = [Node(i, self.env, self.p2p, config) for i in range(config.num_nodes)]
2024-05-09 19:37:39 +09:00
self.p2p.add_node(self.nodes)
2024-05-09 14:29:10 +09:00
2024-05-14 21:19:46 +09:00
def run(self):
self.env.run(until=self.config.running_time)