36 /***********************************************************************/ |
36 /***********************************************************************/ |
37 /***********************************************************************/ |
37 /***********************************************************************/ |
38 /***********************************************************************/ |
38 /***********************************************************************/ |
39 /***********************************************************************/ |
39 /***********************************************************************/ |
40 |
40 |
|
41 class transition_element { |
|
42 |
|
43 private: |
|
44 transition_c *transition; |
|
45 char priority; |
|
46 char index; |
|
47 transition_element *prev; |
|
48 transition_element *next; |
|
49 |
|
50 public: |
|
51 transition_element(transition_c *tr, char pr, char idx) { |
|
52 transition = tr; |
|
53 priority = pr; |
|
54 index = idx; |
|
55 } |
|
56 |
|
57 void set_prev(transition_element *tr) {prev = tr;} |
|
58 void set_next(transition_element *tr) {next = tr;} |
|
59 transition_element *get_prev(void) {return prev;} |
|
60 transition_element *get_next(void) {return next;} |
|
61 transition_c *get_transition(void) {return transition;} |
|
62 char get_priority(void) {return priority;} |
|
63 char get_index(void) {return index;} |
|
64 }; |
|
65 |
|
66 |
|
67 |
|
68 |
|
69 /***********************************************************************/ |
|
70 /***********************************************************************/ |
|
71 /***********************************************************************/ |
|
72 /***********************************************************************/ |
|
73 |
|
74 class generate_cc_sfc_transitionresetsteps_c: public generate_cc_base_c { |
|
75 |
|
76 private: |
|
77 char transition_number; |
|
78 |
|
79 public: |
|
80 generate_cc_sfc_transitionresetsteps_c(stage4out_c *s4o_ptr, symbol_c *scope, const char *variable_prefix = NULL) |
|
81 : generate_cc_base_c(s4o_ptr) { |
|
82 this->set_variable_prefix(variable_prefix); |
|
83 } |
|
84 |
|
85 void set_transition_number(char number) {transition_number = number;} |
|
86 void reset_transition_number(void) {transition_number = 0;} |
|
87 void print_transition_number(void) { |
|
88 char str[10]; |
|
89 sprintf(str, "%d", transition_number); |
|
90 s4o.print(str); |
|
91 } |
|
92 |
|
93 void print_step_argument(symbol_c *step_name, const char* argument) { |
|
94 print_variable_prefix(); |
|
95 s4o.print("step_list["); |
|
96 s4o.print(SFC_STEP_ACTION_PREFIX); |
|
97 step_name->accept(*this); |
|
98 s4o.print("]."); |
|
99 s4o.print(argument); |
|
100 } |
|
101 |
|
102 void print_reset_step(symbol_c *step_name) { |
|
103 s4o.print(s4o.indent_spaces); |
|
104 print_step_argument(step_name, "state"); |
|
105 s4o.print(" = 0;\n" + s4o.indent_spaces); |
|
106 print_step_argument(step_name, "elapsed_time"); |
|
107 s4o.print(" = __time_to_timespec(1, 0, 0, 0, 0, 0);\n"); |
|
108 } |
|
109 |
|
110 /*********************************************/ |
|
111 /* B.1.6 Sequential function chart elements */ |
|
112 /*********************************************/ |
|
113 |
|
114 void *visit(initial_step_c *symbol) {return NULL;} |
|
115 |
|
116 void *visit(step_c *symbol) {return NULL;} |
|
117 |
|
118 void *visit(transition_c *symbol) { |
|
119 if (symbol->integer == NULL) { |
|
120 s4o.print(s4o.indent_spaces + "if ("); |
|
121 print_variable_prefix(); |
|
122 s4o.print("transition_list["); |
|
123 print_transition_number(); |
|
124 s4o.print("]) {\n"); |
|
125 s4o.indent_right(); |
|
126 symbol->from_steps->accept(*this); |
|
127 s4o.indent_left(); |
|
128 s4o.print(s4o.indent_spaces + "}\n"); |
|
129 } |
|
130 transition_number++; |
|
131 return NULL; |
|
132 } |
|
133 |
|
134 void *visit(steps_c *symbol) { |
|
135 if (symbol->step_name != NULL) { |
|
136 print_reset_step(symbol->step_name); |
|
137 } |
|
138 if (symbol->step_name_list != NULL) { |
|
139 symbol->step_name_list->accept(*this); |
|
140 } |
|
141 return NULL; |
|
142 } |
|
143 |
|
144 void *visit(step_name_list_c *symbol) { |
|
145 for(int i = 0; i < symbol->n; i++) { |
|
146 print_reset_step(symbol->elements[i]); |
|
147 } |
|
148 return NULL; |
|
149 } |
|
150 |
|
151 void *visit(action_c *symbol) {return NULL;} |
|
152 |
|
153 }; /* generate_cc_sfc_transitionresetsteps_c */ |
|
154 |
|
155 |
|
156 |
|
157 |
|
158 /***********************************************************************/ |
|
159 /***********************************************************************/ |
|
160 /***********************************************************************/ |
|
161 /***********************************************************************/ |
|
162 |
|
163 class generate_cc_sfc_transitionsetsteps_c: public generate_cc_base_c { |
|
164 |
|
165 private: |
|
166 char transition_number; |
|
167 |
|
168 public: |
|
169 generate_cc_sfc_transitionsetsteps_c(stage4out_c *s4o_ptr, symbol_c *scope, const char *variable_prefix = NULL) |
|
170 : generate_cc_base_c(s4o_ptr) { |
|
171 this->set_variable_prefix(variable_prefix); |
|
172 } |
|
173 |
|
174 void reset_transition_number(void) {transition_number = 0;} |
|
175 void print_transition_number(void) { |
|
176 char str[10]; |
|
177 sprintf(str, "%d", transition_number); |
|
178 s4o.print(str); |
|
179 } |
|
180 |
|
181 void print_step_argument(symbol_c *step_name, const char* argument) { |
|
182 print_variable_prefix(); |
|
183 s4o.print("step_list["); |
|
184 s4o.print(SFC_STEP_ACTION_PREFIX); |
|
185 step_name->accept(*this); |
|
186 s4o.print("]."); |
|
187 s4o.print(argument); |
|
188 } |
|
189 |
|
190 void print_set_step(symbol_c *step_name) { |
|
191 s4o.print(s4o.indent_spaces); |
|
192 print_step_argument(step_name, "state"); |
|
193 s4o.print(" = 1;\n"); |
|
194 } |
|
195 |
|
196 /*********************************************/ |
|
197 /* B.1.6 Sequential function chart elements */ |
|
198 /*********************************************/ |
|
199 |
|
200 void *visit(initial_step_c *symbol) {return NULL;} |
|
201 |
|
202 void *visit(step_c *symbol) {return NULL;} |
|
203 |
|
204 void *visit(transition_c *symbol) { |
|
205 s4o.print(s4o.indent_spaces + "if ("); |
|
206 print_variable_prefix(); |
|
207 s4o.print("transition_list["); |
|
208 print_transition_number(); |
|
209 s4o.print("]) {\n"); |
|
210 s4o.indent_right(); |
|
211 symbol->to_steps->accept(*this); |
|
212 s4o.indent_left(); |
|
213 s4o.print(s4o.indent_spaces + "}\n"); |
|
214 transition_number++; |
|
215 return NULL; |
|
216 } |
|
217 |
|
218 void *visit(steps_c *symbol) { |
|
219 if (symbol->step_name != NULL) { |
|
220 print_set_step(symbol->step_name); |
|
221 } |
|
222 if (symbol->step_name_list != NULL) { |
|
223 symbol->step_name_list->accept(*this); |
|
224 } |
|
225 return NULL; |
|
226 } |
|
227 |
|
228 void *visit(step_name_list_c *symbol) { |
|
229 for(int i = 0; i < symbol->n; i++) { |
|
230 print_set_step(symbol->elements[i]); |
|
231 } |
|
232 return NULL; |
|
233 } |
|
234 |
|
235 void *visit(action_c *symbol) {return NULL;} |
|
236 |
|
237 }; /* generate_cc_sfc_transitionsetsteps_c */ |
|
238 |
|
239 |
|
240 |
|
241 |
|
242 /***********************************************************************/ |
|
243 /***********************************************************************/ |
|
244 /***********************************************************************/ |
|
245 /***********************************************************************/ |
|
246 |
41 class generate_cc_sfc_transitiontest_c: public generate_cc_base_c { |
247 class generate_cc_sfc_transitiontest_c: public generate_cc_base_c { |
42 |
248 |
43 private: |
249 private: |
44 char transition_number; |
250 char transition_number; |
45 |
251 |
46 private: |
252 private: |
47 generate_cc_il_c *generate_cc_il; |
253 generate_cc_il_c *generate_cc_il; |
48 generate_cc_st_c *generate_cc_st; |
254 generate_cc_st_c *generate_cc_st; |
|
255 generate_cc_sfc_transitionresetsteps_c *generate_cc_sfc_transitionresetsteps; |
49 |
256 |
50 public: |
257 public: |
51 generate_cc_sfc_transitiontest_c(stage4out_c *s4o_ptr, symbol_c *scope, const char *variable_prefix = NULL) |
258 generate_cc_sfc_transitiontest_c(stage4out_c *s4o_ptr, symbol_c *scope, const char *variable_prefix = NULL) |
52 : generate_cc_base_c(s4o_ptr) { |
259 : generate_cc_base_c(s4o_ptr) { |
53 generate_cc_il = new generate_cc_il_c(s4o_ptr, scope, variable_prefix); |
260 generate_cc_il = new generate_cc_il_c(s4o_ptr, scope, variable_prefix); |
54 generate_cc_st = new generate_cc_st_c(s4o_ptr, scope, variable_prefix); |
261 generate_cc_st = new generate_cc_st_c(s4o_ptr, scope, variable_prefix); |
|
262 generate_cc_sfc_transitionresetsteps = new generate_cc_sfc_transitionresetsteps_c(s4o_ptr, scope, variable_prefix); |
55 this->set_variable_prefix(variable_prefix); |
263 this->set_variable_prefix(variable_prefix); |
56 } |
264 } |
57 |
265 |
58 ~generate_cc_sfc_transitiontest_c(void) { |
266 ~generate_cc_sfc_transitiontest_c(void) { |
59 delete generate_cc_il; |
267 delete generate_cc_il; |
60 delete generate_cc_st; |
268 delete generate_cc_st; |
61 } |
269 delete generate_cc_sfc_transitionresetsteps; |
62 |
270 } |
63 void reset_transition_number(void) {transition_number = 0;} |
271 |
|
272 void set_transition_number(char number) {transition_number = number;} |
64 void print_transition_number(void) { |
273 void print_transition_number(void) { |
65 char str[10]; |
274 char str[10]; |
66 sprintf(str, "%d", transition_number); |
275 sprintf(str, "%d", transition_number); |
67 s4o.print(str); |
276 s4o.print(str); |
68 } |
277 } |
155 /***********************************************************************/ |
377 /***********************************************************************/ |
156 /***********************************************************************/ |
378 /***********************************************************************/ |
157 /***********************************************************************/ |
379 /***********************************************************************/ |
158 /***********************************************************************/ |
380 /***********************************************************************/ |
159 |
381 |
160 class generate_cc_sfc_transitionresetsteps_c: public generate_cc_base_c { |
382 class generate_cc_sfc_transitionsort_c: public iterator_visitor_c { |
161 |
383 |
162 private: |
384 private: |
163 char transition_number; |
385 char transition_number; |
164 |
386 transition_element *first_transition; |
|
387 transition_element *last_transition; |
|
388 |
|
389 private: |
|
390 generate_cc_sfc_transitiontest_c *generate_cc_sfc_transitiontest; |
|
391 |
165 public: |
392 public: |
166 generate_cc_sfc_transitionresetsteps_c(stage4out_c *s4o_ptr, symbol_c *scope, const char *variable_prefix = NULL) |
393 generate_cc_sfc_transitionsort_c(stage4out_c *s4o_ptr, symbol_c *scope, const char *variable_prefix = NULL) { |
167 : generate_cc_base_c(s4o_ptr) { |
394 generate_cc_sfc_transitiontest = new generate_cc_sfc_transitiontest_c(s4o_ptr, scope, variable_prefix); |
168 this->set_variable_prefix(variable_prefix); |
395 first_transition = NULL; |
|
396 last_transition = NULL; |
|
397 } |
|
398 |
|
399 ~generate_cc_sfc_transitionsort_c(void) { |
|
400 delete generate_cc_sfc_transitiontest; |
|
401 } |
|
402 |
|
403 void append_transition(transition_c *transition, char priority, char index) { |
|
404 transition_element *new_transition = new transition_element(transition, priority, index); |
|
405 new_transition->set_prev(last_transition); |
|
406 if (last_transition != NULL) { |
|
407 last_transition->set_next(new_transition); |
|
408 } |
|
409 else { |
|
410 first_transition = new_transition; |
|
411 } |
|
412 last_transition = new_transition; |
|
413 transition_number++; |
|
414 } |
|
415 |
|
416 void sort_transitions(void) { |
|
417 int i, j; |
|
418 transition_element *current_transition; |
|
419 transition_element *next_transition; |
|
420 for (i = transition_number; i > 1; i--) { |
|
421 current_transition = first_transition; |
|
422 for (j = 0; j < i - 1; j++) { |
|
423 next_transition = current_transition->get_next(); |
|
424 if (current_transition->get_priority() > next_transition->get_priority()) { |
|
425 if (current_transition->get_prev() != NULL) { |
|
426 current_transition->get_prev()->set_next(next_transition); |
|
427 } |
|
428 else { |
|
429 first_transition = next_transition; |
|
430 } |
|
431 if (next_transition->get_next() != NULL) { |
|
432 next_transition->get_next()->set_prev(current_transition); |
|
433 } |
|
434 else { |
|
435 last_transition = current_transition; |
|
436 } |
|
437 current_transition->set_next(next_transition->get_next()); |
|
438 next_transition->set_prev(current_transition->get_prev()); |
|
439 current_transition->set_prev(next_transition); |
|
440 next_transition->set_next(current_transition); |
|
441 } |
|
442 else { |
|
443 current_transition = next_transition; |
|
444 } |
|
445 } |
|
446 } |
169 } |
447 } |
170 |
448 |
171 void reset_transition_number(void) {transition_number = 0;} |
449 void reset_transition_number(void) {transition_number = 0;} |
172 void print_transition_number(void) { |
450 |
173 char str[10]; |
451 void generate(symbol_c *symbol) { |
174 sprintf(str, "%d", transition_number); |
452 symbol->accept(*this); |
175 s4o.print(str); |
453 sort_transitions(); |
176 } |
454 transition_element *next_transition = first_transition; |
177 |
455 while (next_transition != NULL) { |
178 void print_step_argument(symbol_c *step_name, const char* argument) { |
456 generate_cc_sfc_transitiontest->set_transition_number(next_transition->get_index()); |
179 print_variable_prefix(); |
457 next_transition->get_transition()->accept(*generate_cc_sfc_transitiontest); |
180 s4o.print("step_list["); |
458 next_transition = next_transition->get_next(); |
181 s4o.print(SFC_STEP_ACTION_PREFIX); |
459 } |
182 step_name->accept(*this); |
|
183 s4o.print("]."); |
|
184 s4o.print(argument); |
|
185 } |
|
186 |
|
187 void print_reset_step(symbol_c *step_name) { |
|
188 s4o.print(s4o.indent_spaces); |
|
189 print_step_argument(step_name, "state"); |
|
190 s4o.print(" = 0;\n" + s4o.indent_spaces); |
|
191 print_step_argument(step_name, "elapsed_time"); |
|
192 s4o.print(" = __time_to_timespec(1, 0, 0, 0, 0, 0);\n"); |
|
193 } |
460 } |
194 |
461 |
195 /*********************************************/ |
462 /*********************************************/ |
196 /* B.1.6 Sequential function chart elements */ |
463 /* B.1.6 Sequential function chart elements */ |
197 /*********************************************/ |
464 /*********************************************/ |
198 |
465 |
199 void *visit(initial_step_c *symbol) {return NULL;} |
466 void *visit(initial_step_c *symbol) {return NULL;} |
200 |
467 |
201 void *visit(step_c *symbol) {return NULL;} |
468 void *visit(step_c *symbol) {return NULL;} |
202 |
469 |
203 void *visit(transition_c *symbol) { |
470 void *visit(transition_c *symbol) { |
204 s4o.print(s4o.indent_spaces + "if ("); |
471 if (symbol->integer != NULL) { |
205 print_variable_prefix(); |
472 append_transition(symbol, atoi(((token_c *)symbol->integer)->value), transition_number); |
206 s4o.print("transition_list["); |
473 } |
207 print_transition_number(); |
474 else { |
208 s4o.print("]) {\n"); |
475 append_transition(symbol, 0, transition_number); |
209 s4o.indent_right(); |
|
210 symbol->from_steps->accept(*this); |
|
211 s4o.indent_left(); |
|
212 s4o.print(s4o.indent_spaces + "}\n"); |
|
213 transition_number++; |
|
214 return NULL; |
|
215 } |
|
216 |
|
217 void *visit(steps_c *symbol) { |
|
218 if (symbol->step_name != NULL) { |
|
219 print_reset_step(symbol->step_name); |
|
220 } |
|
221 if (symbol->step_name_list != NULL) { |
|
222 symbol->step_name_list->accept(*this); |
|
223 } |
|
224 return NULL; |
|
225 } |
|
226 |
|
227 void *visit(step_name_list_c *symbol) { |
|
228 for(int i = 0; i < symbol->n; i++) { |
|
229 print_reset_step(symbol->elements[i]); |
|
230 } |
476 } |
231 return NULL; |
477 return NULL; |
232 } |
478 } |
233 |
479 |
234 void *visit(action_c *symbol) {return NULL;} |
480 void *visit(action_c *symbol) {return NULL;} |
235 |
481 |
236 }; /* generate_cc_sfc_transitionresetsteps_c */ |
482 };/* generate_cc_sfc_transitionsort_c */ |
237 |
|
238 |
|
239 |
|
240 |
|
241 /***********************************************************************/ |
|
242 /***********************************************************************/ |
|
243 /***********************************************************************/ |
|
244 /***********************************************************************/ |
|
245 |
|
246 class generate_cc_sfc_transitionsetsteps_c: public generate_cc_base_c { |
|
247 |
|
248 private: |
|
249 char transition_number; |
|
250 |
|
251 public: |
|
252 generate_cc_sfc_transitionsetsteps_c(stage4out_c *s4o_ptr, symbol_c *scope, const char *variable_prefix = NULL) |
|
253 : generate_cc_base_c(s4o_ptr) { |
|
254 this->set_variable_prefix(variable_prefix); |
|
255 } |
|
256 |
|
257 void reset_transition_number(void) {transition_number = 0;} |
|
258 void print_transition_number(void) { |
|
259 char str[10]; |
|
260 sprintf(str, "%d", transition_number); |
|
261 s4o.print(str); |
|
262 } |
|
263 |
|
264 void print_step_argument(symbol_c *step_name, const char* argument) { |
|
265 print_variable_prefix(); |
|
266 s4o.print("step_list["); |
|
267 s4o.print(SFC_STEP_ACTION_PREFIX); |
|
268 step_name->accept(*this); |
|
269 s4o.print("]."); |
|
270 s4o.print(argument); |
|
271 } |
|
272 |
|
273 void print_set_step(symbol_c *step_name) { |
|
274 s4o.print(s4o.indent_spaces); |
|
275 print_step_argument(step_name, "state"); |
|
276 s4o.print(" = 1;\n"); |
|
277 } |
|
278 |
|
279 /*********************************************/ |
|
280 /* B.1.6 Sequential function chart elements */ |
|
281 /*********************************************/ |
|
282 |
|
283 void *visit(initial_step_c *symbol) {return NULL;} |
|
284 |
|
285 void *visit(step_c *symbol) {return NULL;} |
|
286 |
|
287 void *visit(transition_c *symbol) { |
|
288 s4o.print(s4o.indent_spaces + "if ("); |
|
289 print_variable_prefix(); |
|
290 s4o.print("transition_list["); |
|
291 print_transition_number(); |
|
292 s4o.print("]) {\n"); |
|
293 s4o.indent_right(); |
|
294 symbol->to_steps->accept(*this); |
|
295 s4o.indent_left(); |
|
296 s4o.print(s4o.indent_spaces + "}\n"); |
|
297 transition_number++; |
|
298 return NULL; |
|
299 } |
|
300 |
|
301 void *visit(steps_c *symbol) { |
|
302 if (symbol->step_name != NULL) { |
|
303 print_set_step(symbol->step_name); |
|
304 } |
|
305 if (symbol->step_name_list != NULL) { |
|
306 symbol->step_name_list->accept(*this); |
|
307 } |
|
308 return NULL; |
|
309 } |
|
310 |
|
311 void *visit(step_name_list_c *symbol) { |
|
312 for(int i = 0; i < symbol->n; i++) { |
|
313 print_set_step(symbol->elements[i]); |
|
314 } |
|
315 return NULL; |
|
316 } |
|
317 |
|
318 void *visit(action_c *symbol) {return NULL;} |
|
319 |
|
320 }; /* generate_cc_sfc_transitionsetsteps_c */ |
|
321 |
483 |
322 |
484 |
323 |
485 |
324 |
486 |
325 /***********************************************************************/ |
487 /***********************************************************************/ |
570 /***********************************************************************/ |
732 /***********************************************************************/ |
571 |
733 |
572 class generate_cc_sfc_c: public generate_cc_typedecl_c { |
734 class generate_cc_sfc_c: public generate_cc_typedecl_c { |
573 |
735 |
574 private: |
736 private: |
575 generate_cc_sfc_transitiontest_c *generate_cc_sfc_transitiontest; |
737 generate_cc_sfc_transitionsort_c *generate_cc_sfc_transitionsort; |
576 generate_cc_sfc_transitionresetsteps_c *generate_cc_sfc_transitionresetsteps; |
738 generate_cc_sfc_transitionresetsteps_c *generate_cc_sfc_transitionresetsteps; |
577 generate_cc_sfc_transitionsetsteps_c *generate_cc_sfc_transitionsetsteps; |
739 generate_cc_sfc_transitionsetsteps_c *generate_cc_sfc_transitionsetsteps; |
578 generate_cc_sfc_stepassociation_c *generate_cc_sfc_stepassociation; |
740 generate_cc_sfc_stepassociation_c *generate_cc_sfc_stepassociation; |
579 generate_cc_sfc_actionexecution_c *generate_cc_sfc_actionexecution; |
741 generate_cc_sfc_actionexecution_c *generate_cc_sfc_actionexecution; |
580 |
742 |
581 public: |
743 public: |
582 generate_cc_sfc_c(stage4out_c *s4o_ptr, symbol_c *scope, const char *variable_prefix = NULL) |
744 generate_cc_sfc_c(stage4out_c *s4o_ptr, symbol_c *scope, const char *variable_prefix = NULL) |
583 : generate_cc_typedecl_c(s4o_ptr) { |
745 : generate_cc_typedecl_c(s4o_ptr) { |
584 generate_cc_sfc_transitiontest = new generate_cc_sfc_transitiontest_c(s4o_ptr, scope, variable_prefix); |
746 generate_cc_sfc_transitionsort = new generate_cc_sfc_transitionsort_c(s4o_ptr, scope, variable_prefix); |
585 generate_cc_sfc_transitionresetsteps = new generate_cc_sfc_transitionresetsteps_c(s4o_ptr, scope, variable_prefix); |
747 generate_cc_sfc_transitionresetsteps = new generate_cc_sfc_transitionresetsteps_c(s4o_ptr, scope, variable_prefix); |
586 generate_cc_sfc_transitionsetsteps = new generate_cc_sfc_transitionsetsteps_c(s4o_ptr, scope, variable_prefix); |
748 generate_cc_sfc_transitionsetsteps = new generate_cc_sfc_transitionsetsteps_c(s4o_ptr, scope, variable_prefix); |
587 generate_cc_sfc_stepassociation = new generate_cc_sfc_stepassociation_c(s4o_ptr, scope, variable_prefix); |
749 generate_cc_sfc_stepassociation = new generate_cc_sfc_stepassociation_c(s4o_ptr, scope, variable_prefix); |
588 generate_cc_sfc_actionexecution = new generate_cc_sfc_actionexecution_c(s4o_ptr, scope, variable_prefix); |
750 generate_cc_sfc_actionexecution = new generate_cc_sfc_actionexecution_c(s4o_ptr, scope, variable_prefix); |
589 this->set_variable_prefix(variable_prefix); |
751 this->set_variable_prefix(variable_prefix); |
590 } |
752 } |
591 |
753 |
592 virtual ~generate_cc_sfc_c(void) { |
754 virtual ~generate_cc_sfc_c(void) { |
593 delete generate_cc_sfc_transitiontest; |
755 delete generate_cc_sfc_transitionsort; |
594 delete generate_cc_sfc_transitionresetsteps; |
756 delete generate_cc_sfc_transitionresetsteps; |
595 delete generate_cc_sfc_transitionsetsteps; |
757 delete generate_cc_sfc_transitionsetsteps; |
596 delete generate_cc_sfc_stepassociation; |
758 delete generate_cc_sfc_stepassociation; |
597 delete generate_cc_sfc_actionexecution; |
759 delete generate_cc_sfc_actionexecution; |
598 } |
760 } |