From 8c4377486dba3e6267774d490b89adcf0e4d04ae Mon Sep 17 00:00:00 2001
From: KIEU Thi phuong <thi-phuong.kieu@lis-lab.fr>
Date: Tue, 7 Jan 2025 13:22:27 +0100
Subject: [PATCH] System coupled model

---
 src/CMSystem.java | 46 ++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 46 insertions(+)
 create mode 100644 src/CMSystem.java

diff --git a/src/CMSystem.java b/src/CMSystem.java
new file mode 100644
index 0000000..0185315
--- /dev/null
+++ b/src/CMSystem.java
@@ -0,0 +1,46 @@
+package carfollowing_2024_05_02;
+
+import DEVSModel.DEVSCoupled;
+
+public class CMSystem extends DEVSCoupled {
+	
+	AMGenerator gen1;
+	AMRoad road1;
+	AMTransducer trans;
+	
+	@Override
+	public void setSelectPriority() {
+		// TODO Auto-generated method stub
+		
+	}
+	
+	public CMSystem() {
+		super();
+		name = "Car-following model simulation";
+		
+		// Create AMs Generator
+		this.gen1 = new AMGenerator("gen1");
+		
+		// Create AMs Road with name, length (m), vMax (m/s)
+		this.road1 = new AMRoad("1", (float) 1000, 13);
+		
+		// Create AMTransducer
+		this.trans = new AMTransducer();
+		
+		// Get sub models
+		this.getSubModels().add(gen1);
+		
+		this.getSubModels().add(road1);
+		
+		this.getSubModels().add(trans);
+		
+		// Link ports
+		
+		this.addIC(this.gen1.getOutPort("car_generated"), this.road1.getInPort("car_enter_road"));
+		
+		this.addIC(this.road1.getOutPort("car_exit_road"), this.trans.getInPort("car_received"));
+		
+		// Test 2024_04_17
+//		this.addIC(this.gen1.getOutPort("car_generated"), this.trans.getInPort("car_received"));
+	}	
+}
-- 
GitLab