Skip to main content
aboutsummaryrefslogtreecommitdiffstats
blob: dd5565373562d557bb48b7947903da55a91f844b (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
package org.eclipse.etrice.integration.tests;

import org.eclipse.etrice.runtime.java.messaging.MessageService;
import org.eclipse.etrice.runtime.java.messaging.RTServices;
import org.eclipse.etrice.runtime.java.messaging.Address;
import org.eclipse.etrice.runtime.java.messaging.IRTObject;
import org.eclipse.etrice.runtime.java.messaging.RTSystemServicesProtocol.*;
import org.eclipse.etrice.runtime.java.modelbase.ActorClassBase;
import org.eclipse.etrice.runtime.java.modelbase.SubSystemClassBase;
import org.eclipse.etrice.runtime.java.modelbase.InterfaceItemBase;

import room.basic.service.timing.*;



public class SubSystemHFSMTest extends SubSystemClassBase{

	
	public SubSystemHFSMTest(String name) {
		super(name);
	}
	
	@Override
	public void receiveEvent(InterfaceItemBase ifitem, int evt, Object data){
	}
	
	@Override	
	public void instantiateMessageServices(){
	
		RTServices.getInstance().getMsgSvcCtrl().addMsgSvc(new MessageService(this, new Address(0, 0, 0),"MessageService_Main"));
		}

	@Override
	public void instantiateActors(){
		
		// all addresses
		// Addresses for the Subsystem Systemport
		Address addr_item_SystemPort_0 = new Address(0,0,109);
		Address addr_item_SystemPort_1 = new Address(0,0,110);
		Address addr_item_SystemPort_2 = new Address(0,0,111);
		Address addr_item_SystemPort_3 = new Address(0,0,112);
		Address addr_item_SystemPort_4 = new Address(0,0,113);
		
		// actor instance /SubSystemHFSMTest/application itself => Systemport Address
		// TODOTJ: For each Actor, multiple addresses should be generated (actor?, systemport, debugport)
		Address addr_item__SubSystemHFSMTest_application = new Address(0,0,101);
		// interface items of /SubSystemHFSMTest/application
		// actor instance /SubSystemHFSMTest/application/HFSM_Tests itself => Systemport Address
		// TODOTJ: For each Actor, multiple addresses should be generated (actor?, systemport, debugport)
		Address addr_item__SubSystemHFSMTest_application_HFSM_Tests = new Address(0,0,102);
		// interface items of /SubSystemHFSMTest/application/HFSM_Tests
		// actor instance /SubSystemHFSMTest/application/HFSM_Tests/HFSM itself => Systemport Address
		// TODOTJ: For each Actor, multiple addresses should be generated (actor?, systemport, debugport)
		Address addr_item__SubSystemHFSMTest_application_HFSM_Tests_HFSM = new Address(0,0,103);
		// interface items of /SubSystemHFSMTest/application/HFSM_Tests/HFSM
		Address addr_item__SubSystemHFSMTest_application_HFSM_Tests_HFSM_fct = new Address(0,0,104);
		// actor instance /SubSystemHFSMTest/application/HFSM_Tests/Tester itself => Systemport Address
		// TODOTJ: For each Actor, multiple addresses should be generated (actor?, systemport, debugport)
		Address addr_item__SubSystemHFSMTest_application_HFSM_Tests_Tester = new Address(0,0,105);
		// interface items of /SubSystemHFSMTest/application/HFSM_Tests/Tester
		Address addr_item__SubSystemHFSMTest_application_HFSM_Tests_Tester_testee = new Address(0,0,106);
		// actor instance /SubSystemHFSMTest/services itself => Systemport Address
		// TODOTJ: For each Actor, multiple addresses should be generated (actor?, systemport, debugport)
		Address addr_item__SubSystemHFSMTest_services = new Address(0,0,107);
		// interface items of /SubSystemHFSMTest/services

		// instantiate all actor instances
		instances = new ActorClassBase[5];
		instances[0] = new App_SubSystemHFSMTest(
			this,
			"application",
			// own interface item addresses
			new Address[][] {{addr_item__SubSystemHFSMTest_application}
			},
			// peer interface item addresses
			new Address[][] {{addr_item_SystemPort_0}
			}
		); 
		instances[1] = new a_HFSM_Tests(
			instances[0],
			"HFSM_Tests",
			// own interface item addresses
			new Address[][] {{addr_item__SubSystemHFSMTest_application_HFSM_Tests}
			},
			// peer interface item addresses
			new Address[][] {{addr_item_SystemPort_1}
			}
		); 
		instances[2] = new a_HFSM(
			instances[1],
			"HFSM",
			// own interface item addresses
			new Address[][] {{addr_item__SubSystemHFSMTest_application_HFSM_Tests_HFSM},
				{
					addr_item__SubSystemHFSMTest_application_HFSM_Tests_HFSM_fct
				}
			},
			// peer interface item addresses
			new Address[][] {{addr_item_SystemPort_2},
				{
					addr_item__SubSystemHFSMTest_application_HFSM_Tests_Tester_testee
				}
			}
		); 
		instances[3] = new a_HFSM_Tester(
			instances[1],
			"Tester",
			// own interface item addresses
			new Address[][] {{addr_item__SubSystemHFSMTest_application_HFSM_Tests_Tester},
				{
					addr_item__SubSystemHFSMTest_application_HFSM_Tests_Tester_testee
				}
			},
			// peer interface item addresses
			new Address[][] {{addr_item_SystemPort_3},
				{
					addr_item__SubSystemHFSMTest_application_HFSM_Tests_HFSM_fct
				}
			}
		); 
		instances[4] = new ATimingService(
			this,
			"services",
			// own interface item addresses
			new Address[][] {{addr_item__SubSystemHFSMTest_services},
				null,
				null
			},
			// peer interface item addresses
			new Address[][] {{addr_item_SystemPort_4},
				null,
				null
			}
		); 
		
		// apply instance attribute configurations

		// create the subsystem system port	
		RTSystemPort = new RTSystemServicesProtocolConjPortRepl(this, "RTSystemPort",
				0, //local ID
				// own addresses
				new Address[]{
					addr_item_SystemPort_0,
					addr_item_SystemPort_1,
					addr_item_SystemPort_2,
					addr_item_SystemPort_3,
					addr_item_SystemPort_4
				},
				// peer addresses
				new Address[]{
					addr_item__SubSystemHFSMTest_application,
					addr_item__SubSystemHFSMTest_application_HFSM_Tests,
					addr_item__SubSystemHFSMTest_application_HFSM_Tests_HFSM,
					addr_item__SubSystemHFSMTest_application_HFSM_Tests_Tester,
					addr_item__SubSystemHFSMTest_services
				});
		}
	
		
		@Override
		public void init(){
			super.init();
		}
			
		@Override
		public void stop(){
			super.stop();
		}
		
};

Back to the top