button
Dependencies: BMI160 SDFileSystem USBDevice max32630fthr
Fork of MPSMAX by
Default.c
00001 00002 #include <stdlib.h> 00003 #include <string.h> 00004 #include "sc_types.h" 00005 #include "Default.h" 00006 #include "DefaultRequired.h" 00007 /*! \file Implementation of the state machine 'default' 00008 */ 00009 00010 /* prototypes of all internal functions */ 00011 static sc_boolean check_main_region_Functions_tr0_tr0(const Default * handle); 00012 static sc_boolean check_main_region_Functions_tr1_tr1(const Default * handle); 00013 static sc_boolean check_main_region_Functions_tr2_tr2(const Default * handle); 00014 static sc_boolean check_main_region_Functions_tr3_tr3(const Default * handle); 00015 static sc_boolean check_main_region_Functions_tr4_tr4(const Default * handle); 00016 static sc_boolean check_main_region_Menu_tr0_tr0(const Default * handle); 00017 static sc_boolean check_main_region_Menu_tr1_tr1(const Default * handle); 00018 static sc_boolean check_main_region_Menu_tr2_tr2(const Default * handle); 00019 static sc_boolean check_main_region_Menu_tr3_tr3(const Default * handle); 00020 static sc_boolean check_main_region_Ready_tr0_tr0(const Default * handle); 00021 static sc_boolean check_main_region_Function_Selected_tr0_tr0(const Default * handle); 00022 static sc_boolean check_main_region_Function_Selected_tr1_tr1(const Default * handle); 00023 static sc_boolean check_r1_Function_Ready_tr0_tr0(const Default * handle); 00024 static sc_boolean check_r1_Function_Active_tr0_tr0(const Default * handle); 00025 static sc_boolean check_r1_Function_Active_tr1_tr1(const Default * handle); 00026 static sc_boolean check_r1_Alarm_tr0_tr0(const Default * handle); 00027 static sc_boolean check_r1_Alarm_tr1_tr1(const Default * handle); 00028 static sc_boolean check_r1_Move_Down_tr0_tr0(const Default * handle); 00029 static sc_boolean check_r1_Move_Down_tr1_tr1(const Default * handle); 00030 static sc_boolean check_r1_Move_Up_tr0_tr0(const Default * handle); 00031 static sc_boolean check_r1_Move_Up_tr1_tr1(const Default * handle); 00032 static void effect_main_region_Functions_tr0(Default * handle); 00033 static void effect_main_region_Functions_tr1(Default * handle); 00034 static void effect_main_region_Functions_tr2(Default * handle); 00035 static void effect_main_region_Functions_tr3(Default * handle); 00036 static void effect_main_region_Functions_tr4(Default * handle); 00037 static void effect_main_region_Menu_tr0(Default * handle); 00038 static void effect_main_region_Menu_tr1(Default * handle); 00039 static void effect_main_region_Menu_tr2(Default * handle); 00040 static void effect_main_region_Menu_tr3(Default * handle); 00041 static void effect_main_region_Ready_tr0(Default * handle); 00042 static void effect_main_region_Function_Selected_tr0(Default * handle); 00043 static void effect_main_region_Function_Selected_tr1(Default * handle); 00044 static void effect_r1_Function_Ready_tr0(Default * handle); 00045 static void effect_r1_Function_Active_tr0(Default * handle); 00046 static void effect_r1_Function_Active_tr1(Default * handle); 00047 static void effect_r1_Alarm_tr0(Default * handle); 00048 static void effect_r1_Alarm_tr1(Default * handle); 00049 static void effect_r1_Move_Down_tr0(Default * handle); 00050 static void effect_r1_Move_Down_tr1(Default * handle); 00051 static void effect_r1_Move_Up_tr0(Default * handle); 00052 static void effect_r1_Move_Up_tr1(Default * handle); 00053 static void enact_main_region_Functions(Default * handle); 00054 static void enact_main_region_Menu(Default * handle); 00055 static void enact_main_region_Ready(Default * handle); 00056 static void enact_main_region_Function_Selected(Default * handle); 00057 static void enact_r1_Function_Ready(Default * handle); 00058 static void enact_r1_Function_Active(Default * handle); 00059 static void enact_r1_Alarm(Default * handle); 00060 static void enact_r1_Move_Down(Default * handle); 00061 static void enact_r1_Move_Up(Default * handle); 00062 static void exact_r1_Move_Down(Default * handle); 00063 static void exact_r1_Move_Up(Default * handle); 00064 static void enseq_main_region_Functions_default(Default * handle); 00065 static void enseq_main_region_Menu_default(Default * handle); 00066 static void enseq_main_region_Ready_default(Default * handle); 00067 static void enseq_main_region_Function_Selected_default(Default * handle); 00068 static void enseq_r1_Function_Ready_default(Default * handle); 00069 static void enseq_r1_Function_Active_default(Default * handle); 00070 static void enseq_r1_Alarm_default(Default * handle); 00071 static void enseq_r1_Move_Down_default(Default * handle); 00072 static void enseq_r1_Move_Up_default(Default * handle); 00073 static void enseq_main_region_default(Default * handle); 00074 static void enseq_r1_default(Default * handle); 00075 static void exseq_main_region_Functions(Default * handle); 00076 static void exseq_main_region_Menu(Default * handle); 00077 static void exseq_main_region_Ready(Default * handle); 00078 static void exseq_main_region_Function_Selected(Default * handle); 00079 static void exseq_r1_Function_Ready(Default * handle); 00080 static void exseq_r1_Function_Active(Default * handle); 00081 static void exseq_r1_Alarm(Default * handle); 00082 static void exseq_r1_Move_Down(Default * handle); 00083 static void exseq_r1_Move_Up(Default * handle); 00084 static void exseq_main_region(Default * handle); 00085 static void exseq_r1(Default * handle); 00086 static void react_main_region_Functions(Default * handle); 00087 static void react_main_region_Menu(Default * handle); 00088 static void react_main_region_Ready(Default * handle); 00089 static void react_main_region_Function_Selected(Default * handle); 00090 static void react_r1_Function_Ready(Default * handle); 00091 static void react_r1_Function_Active(Default * handle); 00092 static void react_r1_Alarm(Default * handle); 00093 static void react_r1_Move_Down(Default * handle); 00094 static void react_r1_Move_Up(Default * handle); 00095 static void react_main_region__entry_Default(Default * handle); 00096 static void react_r1__entry_Default(Default * handle); 00097 static void clearInEvents(Default * handle); 00098 static void clearOutEvents(Default * handle); 00099 00100 00101 void default_init(Default * handle) 00102 { 00103 sc_integer i; 00104 00105 for (i = 0; i < DEFAULT_MAX_ORTHOGONAL_STATES; ++i) 00106 { 00107 handle->stateConfVector[i] = Default_last_state; 00108 } 00109 00110 00111 handle->stateConfVectorPosition = 0; 00112 00113 clearInEvents(handle); 00114 clearOutEvents(handle); 00115 00116 /* Default init sequence for statechart default */ 00117 handle->iface.select1 = 0; 00118 handle->iface.select2 = 0; 00119 handle->ifaceFunc.t = 0; 00120 } 00121 00122 void default_enter(Default * handle) 00123 { 00124 /* Default enter sequence for statechart default */ 00125 enseq_main_region_default(handle); 00126 enseq_r1_default(handle); 00127 } 00128 00129 void default_exit(Default * handle) 00130 { 00131 /* Default exit sequence for statechart default */ 00132 exseq_main_region(handle); 00133 exseq_r1(handle); 00134 } 00135 00136 sc_boolean default_isActive(const Default * handle) 00137 { 00138 sc_boolean result = bool_false; 00139 int i; 00140 00141 for(i = 0; i < DEFAULT_MAX_ORTHOGONAL_STATES; i++) 00142 { 00143 result = result || handle->stateConfVector[i] != Default_last_state; 00144 } 00145 00146 return result; 00147 } 00148 00149 /* 00150 * Always returns 'false' since this state machine can never become final. 00151 */ 00152 sc_boolean default_isFinal(const Default * handle) 00153 { 00154 return bool_false; 00155 } 00156 00157 static void clearInEvents(Default * handle) 00158 { 00159 handle->iface.mode_raised = bool_false; 00160 handle->iface.down_raised = bool_false; 00161 handle->iface.up_raised = bool_false; 00162 handle->iface.back_raised = bool_false; 00163 handle->iface.home_raised = bool_false; 00164 handle->ifaceFunc.Selected_raised = bool_false; 00165 handle->ifaceFunc.Deselect_raised = bool_false; 00166 handle->ifaceFunc.Alarmset_raised = bool_false; 00167 handle->ifaceFunc.MoveDown_raised = bool_false; 00168 handle->ifaceFunc.MoveUp_raised = bool_false; 00169 handle->timeEvents.default_r1_Move_Down_tev0_raised = bool_false; 00170 handle->timeEvents.default_r1_Move_Up_tev0_raised = bool_false; 00171 } 00172 00173 static void clearOutEvents(Default * handle) 00174 { 00175 } 00176 00177 void default_runCycle(Default * handle) 00178 { 00179 00180 clearOutEvents(handle); 00181 for (handle->stateConfVectorPosition = 0; 00182 handle->stateConfVectorPosition < DEFAULT_MAX_ORTHOGONAL_STATES; 00183 handle->stateConfVectorPosition++) 00184 { 00185 00186 switch (handle->stateConfVector[handle->stateConfVectorPosition]) 00187 { 00188 case Default_main_region_Functions: 00189 { 00190 react_main_region_Functions(handle); 00191 break; 00192 } 00193 case Default_main_region_Menu: 00194 { 00195 react_main_region_Menu(handle); 00196 break; 00197 } 00198 case Default_main_region_Ready: 00199 { 00200 react_main_region_Ready(handle); 00201 break; 00202 } 00203 case Default_main_region_Function_Selected: 00204 { 00205 react_main_region_Function_Selected(handle); 00206 break; 00207 } 00208 case Default_r1_Function_Ready: 00209 { 00210 react_r1_Function_Ready(handle); 00211 break; 00212 } 00213 case Default_r1_Function_Active: 00214 { 00215 react_r1_Function_Active(handle); 00216 break; 00217 } 00218 case Default_r1_Alarm: 00219 { 00220 react_r1_Alarm(handle); 00221 break; 00222 } 00223 case Default_r1_Move_Down: 00224 { 00225 react_r1_Move_Down(handle); 00226 break; 00227 } 00228 case Default_r1_Move_Up: 00229 { 00230 react_r1_Move_Up(handle); 00231 break; 00232 } 00233 default: 00234 break; 00235 } 00236 } 00237 00238 clearInEvents(handle); 00239 } 00240 00241 void default_raiseTimeEvent(const Default * handle, sc_eventid evid) 00242 { 00243 if ( ((sc_intptr_t)evid) >= ((sc_intptr_t)&(handle->timeEvents)) 00244 && ((sc_intptr_t)evid) < ((sc_intptr_t)&(handle->timeEvents)) + sizeof(DefaultTimeEvents )) 00245 { 00246 *(sc_boolean*)evid = bool_true; 00247 } 00248 } 00249 00250 sc_boolean default_isStateActive(const Default * handle, DefaultStates state) 00251 { 00252 sc_boolean result = bool_false; 00253 switch (state) 00254 { 00255 case Default_main_region_Functions : 00256 result = (sc_boolean) (handle->stateConfVector[SCVI_DEFAULT_MAIN_REGION_FUNCTIONS] == Default_main_region_Functions 00257 ); 00258 break; 00259 case Default_main_region_Menu : 00260 result = (sc_boolean) (handle->stateConfVector[SCVI_DEFAULT_MAIN_REGION_MENU] == Default_main_region_Menu 00261 ); 00262 break; 00263 case Default_main_region_Ready : 00264 result = (sc_boolean) (handle->stateConfVector[SCVI_DEFAULT_MAIN_REGION_READY] == Default_main_region_Ready 00265 ); 00266 break; 00267 case Default_main_region_Function_Selected : 00268 result = (sc_boolean) (handle->stateConfVector[SCVI_DEFAULT_MAIN_REGION_FUNCTION_SELECTED] == Default_main_region_Function_Selected 00269 ); 00270 break; 00271 case Default_r1_Function_Ready : 00272 result = (sc_boolean) (handle->stateConfVector[SCVI_DEFAULT_R1_FUNCTION_READY] == Default_r1_Function_Ready 00273 ); 00274 break; 00275 case Default_r1_Function_Active : 00276 result = (sc_boolean) (handle->stateConfVector[SCVI_DEFAULT_R1_FUNCTION_ACTIVE] == Default_r1_Function_Active 00277 ); 00278 break; 00279 case Default_r1_Alarm : 00280 result = (sc_boolean) (handle->stateConfVector[SCVI_DEFAULT_R1_ALARM] == Default_r1_Alarm 00281 ); 00282 break; 00283 case Default_r1_Move_Down : 00284 result = (sc_boolean) (handle->stateConfVector[SCVI_DEFAULT_R1_MOVE_DOWN] == Default_r1_Move_Down 00285 ); 00286 break; 00287 case Default_r1_Move_Up : 00288 result = (sc_boolean) (handle->stateConfVector[SCVI_DEFAULT_R1_MOVE_UP] == Default_r1_Move_Up 00289 ); 00290 break; 00291 default: 00292 result = bool_false; 00293 break; 00294 } 00295 return result; 00296 } 00297 00298 void defaultIface_raise_mode(Default * handle) 00299 { 00300 handle->iface.mode_raised = bool_true; 00301 } 00302 void defaultIface_raise_down(Default * handle) 00303 { 00304 handle->iface.down_raised = bool_true; 00305 } 00306 void defaultIface_raise_up(Default * handle) 00307 { 00308 handle->iface.up_raised = bool_true; 00309 } 00310 void defaultIface_raise_back(Default * handle) 00311 { 00312 handle->iface.back_raised = bool_true; 00313 } 00314 void defaultIface_raise_home(Default * handle) 00315 { 00316 handle->iface.home_raised = bool_true; 00317 } 00318 00319 00320 sc_integer defaultIface_get_select1(const Default * handle) 00321 { 00322 return handle->iface.select1; 00323 } 00324 void defaultIface_set_select1(Default * handle, sc_integer value) 00325 { 00326 handle->iface.select1 = value; 00327 } 00328 sc_integer defaultIface_get_select2(const Default * handle) 00329 { 00330 return handle->iface.select2; 00331 } 00332 void defaultIface_set_select2(Default * handle, sc_integer value) 00333 { 00334 handle->iface.select2 = value; 00335 } 00336 void defaultIfaceFunc_raise_selected(Default * handle) 00337 { 00338 handle->ifaceFunc.Selected_raised = bool_true; 00339 } 00340 void defaultIfaceFunc_raise_deselect(Default * handle) 00341 { 00342 handle->ifaceFunc.Deselect_raised = bool_true; 00343 } 00344 void defaultIfaceFunc_raise_alarmset(Default * handle) 00345 { 00346 handle->ifaceFunc.Alarmset_raised = bool_true; 00347 } 00348 void defaultIfaceFunc_raise_moveDown(Default * handle) 00349 { 00350 handle->ifaceFunc.MoveDown_raised = bool_true; 00351 } 00352 void defaultIfaceFunc_raise_moveUp(Default * handle) 00353 { 00354 handle->ifaceFunc.MoveUp_raised = bool_true; 00355 } 00356 00357 00358 sc_integer defaultIfaceFunc_get_t(const Default * handle) 00359 { 00360 return handle->ifaceFunc.t; 00361 } 00362 void defaultIfaceFunc_set_t(Default * handle, sc_integer value) 00363 { 00364 handle->ifaceFunc.t = value; 00365 } 00366 00367 /* implementations of all internal functions */ 00368 00369 static sc_boolean check_main_region_Functions_tr0_tr0(const Default * handle) 00370 { 00371 return handle->iface.back_raised; 00372 } 00373 00374 static sc_boolean check_main_region_Functions_tr1_tr1(const Default * handle) 00375 { 00376 return handle->iface.down_raised; 00377 } 00378 00379 static sc_boolean check_main_region_Functions_tr2_tr2(const Default * handle) 00380 { 00381 return ((handle->iface.up_raised) && (handle->iface.select2 > 1)) ? bool_true : bool_false; 00382 } 00383 00384 static sc_boolean check_main_region_Functions_tr3_tr3(const Default * handle) 00385 { 00386 return handle->iface.home_raised; 00387 } 00388 00389 static sc_boolean check_main_region_Functions_tr4_tr4(const Default * handle) 00390 { 00391 return handle->iface.mode_raised; 00392 } 00393 00394 static sc_boolean check_main_region_Menu_tr0_tr0(const Default * handle) 00395 { 00396 return handle->iface.down_raised; 00397 } 00398 00399 static sc_boolean check_main_region_Menu_tr1_tr1(const Default * handle) 00400 { 00401 return ((handle->iface.up_raised) && (handle->iface.select1 > 1)) ? bool_true : bool_false; 00402 } 00403 00404 static sc_boolean check_main_region_Menu_tr2_tr2(const Default * handle) 00405 { 00406 return handle->iface.back_raised; 00407 } 00408 00409 static sc_boolean check_main_region_Menu_tr3_tr3(const Default * handle) 00410 { 00411 return handle->iface.mode_raised; 00412 } 00413 00414 static sc_boolean check_main_region_Ready_tr0_tr0(const Default * handle) 00415 { 00416 return handle->iface.mode_raised; 00417 } 00418 00419 static sc_boolean check_main_region_Function_Selected_tr0_tr0(const Default * handle) 00420 { 00421 return handle->iface.back_raised; 00422 } 00423 00424 static sc_boolean check_main_region_Function_Selected_tr1_tr1(const Default * handle) 00425 { 00426 return handle->iface.home_raised; 00427 } 00428 00429 static sc_boolean check_r1_Function_Ready_tr0_tr0(const Default * handle) 00430 { 00431 return handle->ifaceFunc.Selected_raised; 00432 } 00433 00434 static sc_boolean check_r1_Function_Active_tr0_tr0(const Default * handle) 00435 { 00436 return handle->ifaceFunc.Deselect_raised; 00437 } 00438 00439 static sc_boolean check_r1_Function_Active_tr1_tr1(const Default * handle) 00440 { 00441 return handle->ifaceFunc.Alarmset_raised; 00442 } 00443 00444 static sc_boolean check_r1_Alarm_tr0_tr0(const Default * handle) 00445 { 00446 return handle->ifaceFunc.MoveDown_raised; 00447 } 00448 00449 static sc_boolean check_r1_Alarm_tr1_tr1(const Default * handle) 00450 { 00451 return handle->ifaceFunc.MoveUp_raised; 00452 } 00453 00454 static sc_boolean check_r1_Move_Down_tr0_tr0(const Default * handle) 00455 { 00456 return (handle->ifaceFunc.t == 0) ? bool_true : bool_false; 00457 } 00458 00459 static sc_boolean check_r1_Move_Down_tr1_tr1(const Default * handle) 00460 { 00461 return ((handle->timeEvents.default_r1_Move_Down_tev0_raised) && (handle->ifaceFunc.t > 0)) ? bool_true : bool_false; 00462 } 00463 00464 static sc_boolean check_r1_Move_Up_tr0_tr0(const Default * handle) 00465 { 00466 return (handle->ifaceFunc.t == 0) ? bool_true : bool_false; 00467 } 00468 00469 static sc_boolean check_r1_Move_Up_tr1_tr1(const Default * handle) 00470 { 00471 return ((handle->timeEvents.default_r1_Move_Up_tev0_raised) && (handle->ifaceFunc.t > 0)) ? bool_true : bool_false; 00472 } 00473 00474 static void effect_main_region_Functions_tr0(Default * handle) 00475 { 00476 exseq_main_region_Functions(handle); 00477 enseq_main_region_Menu_default(handle); 00478 } 00479 00480 static void effect_main_region_Functions_tr1(Default * handle) 00481 { 00482 exseq_main_region_Functions(handle); 00483 handle->iface.select2 += 1; 00484 enseq_main_region_Functions_default(handle); 00485 } 00486 00487 static void effect_main_region_Functions_tr2(Default * handle) 00488 { 00489 exseq_main_region_Functions(handle); 00490 handle->iface.select2 -= 1; 00491 enseq_main_region_Functions_default(handle); 00492 } 00493 00494 static void effect_main_region_Functions_tr3(Default * handle) 00495 { 00496 exseq_main_region_Functions(handle); 00497 enseq_main_region_Ready_default(handle); 00498 } 00499 00500 static void effect_main_region_Functions_tr4(Default * handle) 00501 { 00502 exseq_main_region_Functions(handle); 00503 defaultIface_function(handle, handle->iface.select2); 00504 enseq_main_region_Function_Selected_default(handle); 00505 } 00506 00507 static void effect_main_region_Menu_tr0(Default * handle) 00508 { 00509 exseq_main_region_Menu(handle); 00510 handle->iface.select1 += 1; 00511 enseq_main_region_Menu_default(handle); 00512 } 00513 00514 static void effect_main_region_Menu_tr1(Default * handle) 00515 { 00516 exseq_main_region_Menu(handle); 00517 handle->iface.select1 -= 1; 00518 enseq_main_region_Menu_default(handle); 00519 } 00520 00521 static void effect_main_region_Menu_tr2(Default * handle) 00522 { 00523 exseq_main_region_Menu(handle); 00524 enseq_main_region_Ready_default(handle); 00525 } 00526 00527 static void effect_main_region_Menu_tr3(Default * handle) 00528 { 00529 exseq_main_region_Menu(handle); 00530 defaultIface_menu(handle, handle->iface.select1); 00531 handle->iface.select2 = 1; 00532 enseq_main_region_Functions_default(handle); 00533 } 00534 00535 static void effect_main_region_Ready_tr0(Default * handle) 00536 { 00537 exseq_main_region_Ready(handle); 00538 handle->iface.select1 = 1; 00539 enseq_main_region_Menu_default(handle); 00540 } 00541 00542 static void effect_main_region_Function_Selected_tr0(Default * handle) 00543 { 00544 exseq_main_region_Function_Selected(handle); 00545 enseq_main_region_Functions_default(handle); 00546 } 00547 00548 static void effect_main_region_Function_Selected_tr1(Default * handle) 00549 { 00550 exseq_main_region_Function_Selected(handle); 00551 enseq_main_region_Ready_default(handle); 00552 } 00553 00554 static void effect_r1_Function_Ready_tr0(Default * handle) 00555 { 00556 exseq_r1_Function_Ready(handle); 00557 enseq_r1_Function_Active_default(handle); 00558 } 00559 00560 static void effect_r1_Function_Active_tr0(Default * handle) 00561 { 00562 exseq_r1_Function_Active(handle); 00563 enseq_r1_Function_Ready_default(handle); 00564 } 00565 00566 static void effect_r1_Function_Active_tr1(Default * handle) 00567 { 00568 exseq_r1_Function_Active(handle); 00569 enseq_r1_Alarm_default(handle); 00570 } 00571 00572 static void effect_r1_Alarm_tr0(Default * handle) 00573 { 00574 exseq_r1_Alarm(handle); 00575 enseq_r1_Move_Down_default(handle); 00576 } 00577 00578 static void effect_r1_Alarm_tr1(Default * handle) 00579 { 00580 exseq_r1_Alarm(handle); 00581 enseq_r1_Move_Up_default(handle); 00582 } 00583 00584 static void effect_r1_Move_Down_tr0(Default * handle) 00585 { 00586 exseq_r1_Move_Down(handle); 00587 defaultIfaceFunc_return(handle); 00588 enseq_r1_Function_Active_default(handle); 00589 } 00590 00591 static void effect_r1_Move_Down_tr1(Default * handle) 00592 { 00593 exseq_r1_Move_Down(handle); 00594 defaultIfaceFunc_moveDownAct(handle); 00595 handle->ifaceFunc.t -= 1; 00596 enseq_r1_Move_Down_default(handle); 00597 } 00598 00599 static void effect_r1_Move_Up_tr0(Default * handle) 00600 { 00601 exseq_r1_Move_Up(handle); 00602 defaultIfaceFunc_return(handle); 00603 enseq_r1_Function_Active_default(handle); 00604 } 00605 00606 static void effect_r1_Move_Up_tr1(Default * handle) 00607 { 00608 exseq_r1_Move_Up(handle); 00609 defaultIfaceFunc_moveUpAct(handle); 00610 handle->ifaceFunc.t -= 1; 00611 enseq_r1_Move_Up_default(handle); 00612 } 00613 00614 /* Entry action for state 'Functions'. */ 00615 static void enact_main_region_Functions(Default * handle) 00616 { 00617 /* Entry action for state 'Functions'. */ 00618 defaultIface_function(handle, handle->iface.select2); 00619 } 00620 00621 /* Entry action for state 'Menu'. */ 00622 static void enact_main_region_Menu(Default * handle) 00623 { 00624 /* Entry action for state 'Menu'. */ 00625 defaultIface_menu(handle, handle->iface.select1); 00626 } 00627 00628 /* Entry action for state 'Ready'. */ 00629 static void enact_main_region_Ready(Default * handle) 00630 { 00631 /* Entry action for state 'Ready'. */ 00632 handle->iface.select1 = 0; 00633 handle->iface.select2 = 0; 00634 } 00635 00636 /* Entry action for state 'Function Selected'. */ 00637 static void enact_main_region_Function_Selected(Default * handle) 00638 { 00639 /* Entry action for state 'Function Selected'. */ 00640 defaultIface_execute(handle); 00641 } 00642 00643 /* Entry action for state 'Function Ready'. */ 00644 static void enact_r1_Function_Ready(Default * handle) 00645 { 00646 /* Entry action for state 'Function Ready'. */ 00647 defaultIfaceFunc_ready(handle); 00648 } 00649 00650 /* Entry action for state 'Function Active'. */ 00651 static void enact_r1_Function_Active(Default * handle) 00652 { 00653 /* Entry action for state 'Function Active'. */ 00654 defaultIfaceFunc_active(handle); 00655 } 00656 00657 /* Entry action for state 'Alarm'. */ 00658 static void enact_r1_Alarm(Default * handle) 00659 { 00660 /* Entry action for state 'Alarm'. */ 00661 handle->ifaceFunc.t = 15; 00662 } 00663 00664 /* Entry action for state 'Move Down'. */ 00665 static void enact_r1_Move_Down(Default * handle) 00666 { 00667 /* Entry action for state 'Move Down'. */ 00668 default_setTimer(handle, (sc_eventid) &(handle->timeEvents.default_r1_Move_Down_tev0_raised) , 1 * 1000, bool_true); 00669 defaultIfaceFunc_moveDownAct(handle); 00670 } 00671 00672 /* Entry action for state 'Move Up'. */ 00673 static void enact_r1_Move_Up(Default * handle) 00674 { 00675 /* Entry action for state 'Move Up'. */ 00676 default_setTimer(handle, (sc_eventid) &(handle->timeEvents.default_r1_Move_Up_tev0_raised) , 1 * 1000, bool_true); 00677 defaultIfaceFunc_moveUpAct(handle); 00678 } 00679 00680 /* Exit action for state 'Move Down'. */ 00681 static void exact_r1_Move_Down(Default * handle) 00682 { 00683 /* Exit action for state 'Move Down'. */ 00684 default_unsetTimer(handle, (sc_eventid) &(handle->timeEvents.default_r1_Move_Down_tev0_raised) ); 00685 } 00686 00687 /* Exit action for state 'Move Up'. */ 00688 static void exact_r1_Move_Up(Default * handle) 00689 { 00690 /* Exit action for state 'Move Up'. */ 00691 default_unsetTimer(handle, (sc_eventid) &(handle->timeEvents.default_r1_Move_Up_tev0_raised) ); 00692 } 00693 00694 /* 'default' enter sequence for state Functions */ 00695 static void enseq_main_region_Functions_default(Default * handle) 00696 { 00697 /* 'default' enter sequence for state Functions */ 00698 enact_main_region_Functions(handle); 00699 handle->stateConfVector[0] = Default_main_region_Functions; 00700 handle->stateConfVectorPosition = 0; 00701 } 00702 00703 /* 'default' enter sequence for state Menu */ 00704 static void enseq_main_region_Menu_default(Default * handle) 00705 { 00706 /* 'default' enter sequence for state Menu */ 00707 enact_main_region_Menu(handle); 00708 handle->stateConfVector[0] = Default_main_region_Menu; 00709 handle->stateConfVectorPosition = 0; 00710 } 00711 00712 /* 'default' enter sequence for state Ready */ 00713 static void enseq_main_region_Ready_default(Default * handle) 00714 { 00715 /* 'default' enter sequence for state Ready */ 00716 enact_main_region_Ready(handle); 00717 handle->stateConfVector[0] = Default_main_region_Ready; 00718 handle->stateConfVectorPosition = 0; 00719 } 00720 00721 /* 'default' enter sequence for state Function Selected */ 00722 static void enseq_main_region_Function_Selected_default(Default * handle) 00723 { 00724 /* 'default' enter sequence for state Function Selected */ 00725 enact_main_region_Function_Selected(handle); 00726 handle->stateConfVector[0] = Default_main_region_Function_Selected; 00727 handle->stateConfVectorPosition = 0; 00728 } 00729 00730 /* 'default' enter sequence for state Function Ready */ 00731 static void enseq_r1_Function_Ready_default(Default * handle) 00732 { 00733 /* 'default' enter sequence for state Function Ready */ 00734 enact_r1_Function_Ready(handle); 00735 handle->stateConfVector[1] = Default_r1_Function_Ready; 00736 handle->stateConfVectorPosition = 1; 00737 } 00738 00739 /* 'default' enter sequence for state Function Active */ 00740 static void enseq_r1_Function_Active_default(Default * handle) 00741 { 00742 /* 'default' enter sequence for state Function Active */ 00743 enact_r1_Function_Active(handle); 00744 handle->stateConfVector[1] = Default_r1_Function_Active; 00745 handle->stateConfVectorPosition = 1; 00746 } 00747 00748 /* 'default' enter sequence for state Alarm */ 00749 static void enseq_r1_Alarm_default(Default * handle) 00750 { 00751 /* 'default' enter sequence for state Alarm */ 00752 enact_r1_Alarm(handle); 00753 handle->stateConfVector[1] = Default_r1_Alarm; 00754 handle->stateConfVectorPosition = 1; 00755 } 00756 00757 /* 'default' enter sequence for state Move Down */ 00758 static void enseq_r1_Move_Down_default(Default * handle) 00759 { 00760 /* 'default' enter sequence for state Move Down */ 00761 enact_r1_Move_Down(handle); 00762 handle->stateConfVector[1] = Default_r1_Move_Down; 00763 handle->stateConfVectorPosition = 1; 00764 } 00765 00766 /* 'default' enter sequence for state Move Up */ 00767 static void enseq_r1_Move_Up_default(Default * handle) 00768 { 00769 /* 'default' enter sequence for state Move Up */ 00770 enact_r1_Move_Up(handle); 00771 handle->stateConfVector[1] = Default_r1_Move_Up; 00772 handle->stateConfVectorPosition = 1; 00773 } 00774 00775 /* 'default' enter sequence for region main region */ 00776 static void enseq_main_region_default(Default * handle) 00777 { 00778 /* 'default' enter sequence for region main region */ 00779 react_main_region__entry_Default(handle); 00780 } 00781 00782 /* 'default' enter sequence for region r1 */ 00783 static void enseq_r1_default(Default * handle) 00784 { 00785 /* 'default' enter sequence for region r1 */ 00786 react_r1__entry_Default(handle); 00787 } 00788 00789 /* Default exit sequence for state Functions */ 00790 static void exseq_main_region_Functions(Default * handle) 00791 { 00792 /* Default exit sequence for state Functions */ 00793 handle->stateConfVector[0] = Default_last_state; 00794 handle->stateConfVectorPosition = 0; 00795 } 00796 00797 /* Default exit sequence for state Menu */ 00798 static void exseq_main_region_Menu(Default * handle) 00799 { 00800 /* Default exit sequence for state Menu */ 00801 handle->stateConfVector[0] = Default_last_state; 00802 handle->stateConfVectorPosition = 0; 00803 } 00804 00805 /* Default exit sequence for state Ready */ 00806 static void exseq_main_region_Ready(Default * handle) 00807 { 00808 /* Default exit sequence for state Ready */ 00809 handle->stateConfVector[0] = Default_last_state; 00810 handle->stateConfVectorPosition = 0; 00811 } 00812 00813 /* Default exit sequence for state Function Selected */ 00814 static void exseq_main_region_Function_Selected(Default * handle) 00815 { 00816 /* Default exit sequence for state Function Selected */ 00817 handle->stateConfVector[0] = Default_last_state; 00818 handle->stateConfVectorPosition = 0; 00819 } 00820 00821 /* Default exit sequence for state Function Ready */ 00822 static void exseq_r1_Function_Ready(Default * handle) 00823 { 00824 /* Default exit sequence for state Function Ready */ 00825 handle->stateConfVector[1] = Default_last_state; 00826 handle->stateConfVectorPosition = 1; 00827 } 00828 00829 /* Default exit sequence for state Function Active */ 00830 static void exseq_r1_Function_Active(Default * handle) 00831 { 00832 /* Default exit sequence for state Function Active */ 00833 handle->stateConfVector[1] = Default_last_state; 00834 handle->stateConfVectorPosition = 1; 00835 } 00836 00837 /* Default exit sequence for state Alarm */ 00838 static void exseq_r1_Alarm(Default * handle) 00839 { 00840 /* Default exit sequence for state Alarm */ 00841 handle->stateConfVector[1] = Default_last_state; 00842 handle->stateConfVectorPosition = 1; 00843 } 00844 00845 /* Default exit sequence for state Move Down */ 00846 static void exseq_r1_Move_Down(Default * handle) 00847 { 00848 /* Default exit sequence for state Move Down */ 00849 handle->stateConfVector[1] = Default_last_state; 00850 handle->stateConfVectorPosition = 1; 00851 exact_r1_Move_Down(handle); 00852 } 00853 00854 /* Default exit sequence for state Move Up */ 00855 static void exseq_r1_Move_Up(Default * handle) 00856 { 00857 /* Default exit sequence for state Move Up */ 00858 handle->stateConfVector[1] = Default_last_state; 00859 handle->stateConfVectorPosition = 1; 00860 exact_r1_Move_Up(handle); 00861 } 00862 00863 /* Default exit sequence for region main region */ 00864 static void exseq_main_region(Default * handle) 00865 { 00866 /* Default exit sequence for region main region */ 00867 /* Handle exit of all possible states (of default.main_region) at position 0... */ 00868 switch(handle->stateConfVector[ 0 ]) 00869 { 00870 case Default_main_region_Functions : 00871 { 00872 exseq_main_region_Functions(handle); 00873 break; 00874 } 00875 case Default_main_region_Menu : 00876 { 00877 exseq_main_region_Menu(handle); 00878 break; 00879 } 00880 case Default_main_region_Ready : 00881 { 00882 exseq_main_region_Ready(handle); 00883 break; 00884 } 00885 case Default_main_region_Function_Selected : 00886 { 00887 exseq_main_region_Function_Selected(handle); 00888 break; 00889 } 00890 default: break; 00891 } 00892 } 00893 00894 /* Default exit sequence for region r1 */ 00895 static void exseq_r1(Default * handle) 00896 { 00897 /* Default exit sequence for region r1 */ 00898 /* Handle exit of all possible states (of default.r1) at position 1... */ 00899 switch(handle->stateConfVector[ 1 ]) 00900 { 00901 case Default_r1_Function_Ready : 00902 { 00903 exseq_r1_Function_Ready(handle); 00904 break; 00905 } 00906 case Default_r1_Function_Active : 00907 { 00908 exseq_r1_Function_Active(handle); 00909 break; 00910 } 00911 case Default_r1_Alarm : 00912 { 00913 exseq_r1_Alarm(handle); 00914 break; 00915 } 00916 case Default_r1_Move_Down : 00917 { 00918 exseq_r1_Move_Down(handle); 00919 break; 00920 } 00921 case Default_r1_Move_Up : 00922 { 00923 exseq_r1_Move_Up(handle); 00924 break; 00925 } 00926 default: break; 00927 } 00928 } 00929 00930 /* The reactions of state Functions. */ 00931 static void react_main_region_Functions(Default * handle) 00932 { 00933 /* The reactions of state Functions. */ 00934 if (check_main_region_Functions_tr0_tr0(handle) == bool_true) 00935 { 00936 effect_main_region_Functions_tr0(handle); 00937 } else 00938 { 00939 if (check_main_region_Functions_tr1_tr1(handle) == bool_true) 00940 { 00941 effect_main_region_Functions_tr1(handle); 00942 } else 00943 { 00944 if (check_main_region_Functions_tr2_tr2(handle) == bool_true) 00945 { 00946 effect_main_region_Functions_tr2(handle); 00947 } else 00948 { 00949 if (check_main_region_Functions_tr3_tr3(handle) == bool_true) 00950 { 00951 effect_main_region_Functions_tr3(handle); 00952 } else 00953 { 00954 if (check_main_region_Functions_tr4_tr4(handle) == bool_true) 00955 { 00956 effect_main_region_Functions_tr4(handle); 00957 } 00958 } 00959 } 00960 } 00961 } 00962 } 00963 00964 /* The reactions of state Menu. */ 00965 static void react_main_region_Menu(Default * handle) 00966 { 00967 /* The reactions of state Menu. */ 00968 if (check_main_region_Menu_tr0_tr0(handle) == bool_true) 00969 { 00970 effect_main_region_Menu_tr0(handle); 00971 } else 00972 { 00973 if (check_main_region_Menu_tr1_tr1(handle) == bool_true) 00974 { 00975 effect_main_region_Menu_tr1(handle); 00976 } else 00977 { 00978 if (check_main_region_Menu_tr2_tr2(handle) == bool_true) 00979 { 00980 effect_main_region_Menu_tr2(handle); 00981 } else 00982 { 00983 if (check_main_region_Menu_tr3_tr3(handle) == bool_true) 00984 { 00985 effect_main_region_Menu_tr3(handle); 00986 } 00987 } 00988 } 00989 } 00990 } 00991 00992 /* The reactions of state Ready. */ 00993 static void react_main_region_Ready(Default * handle) 00994 { 00995 /* The reactions of state Ready. */ 00996 if (check_main_region_Ready_tr0_tr0(handle) == bool_true) 00997 { 00998 effect_main_region_Ready_tr0(handle); 00999 } 01000 } 01001 01002 /* The reactions of state Function Selected. */ 01003 static void react_main_region_Function_Selected(Default * handle) 01004 { 01005 /* The reactions of state Function Selected. */ 01006 if (check_main_region_Function_Selected_tr0_tr0(handle) == bool_true) 01007 { 01008 effect_main_region_Function_Selected_tr0(handle); 01009 } else 01010 { 01011 if (check_main_region_Function_Selected_tr1_tr1(handle) == bool_true) 01012 { 01013 effect_main_region_Function_Selected_tr1(handle); 01014 } 01015 } 01016 } 01017 01018 /* The reactions of state Function Ready. */ 01019 static void react_r1_Function_Ready(Default * handle) 01020 { 01021 /* The reactions of state Function Ready. */ 01022 if (check_r1_Function_Ready_tr0_tr0(handle) == bool_true) 01023 { 01024 effect_r1_Function_Ready_tr0(handle); 01025 } 01026 } 01027 01028 /* The reactions of state Function Active. */ 01029 static void react_r1_Function_Active(Default * handle) 01030 { 01031 /* The reactions of state Function Active. */ 01032 if (check_r1_Function_Active_tr0_tr0(handle) == bool_true) 01033 { 01034 effect_r1_Function_Active_tr0(handle); 01035 } else 01036 { 01037 if (check_r1_Function_Active_tr1_tr1(handle) == bool_true) 01038 { 01039 effect_r1_Function_Active_tr1(handle); 01040 } 01041 } 01042 } 01043 01044 /* The reactions of state Alarm. */ 01045 static void react_r1_Alarm(Default * handle) 01046 { 01047 /* The reactions of state Alarm. */ 01048 if (check_r1_Alarm_tr0_tr0(handle) == bool_true) 01049 { 01050 effect_r1_Alarm_tr0(handle); 01051 } else 01052 { 01053 if (check_r1_Alarm_tr1_tr1(handle) == bool_true) 01054 { 01055 effect_r1_Alarm_tr1(handle); 01056 } 01057 } 01058 } 01059 01060 /* The reactions of state Move Down. */ 01061 static void react_r1_Move_Down(Default * handle) 01062 { 01063 /* The reactions of state Move Down. */ 01064 if (check_r1_Move_Down_tr0_tr0(handle) == bool_true) 01065 { 01066 effect_r1_Move_Down_tr0(handle); 01067 } else 01068 { 01069 if (check_r1_Move_Down_tr1_tr1(handle) == bool_true) 01070 { 01071 effect_r1_Move_Down_tr1(handle); 01072 } 01073 } 01074 } 01075 01076 /* The reactions of state Move Up. */ 01077 static void react_r1_Move_Up(Default * handle) 01078 { 01079 /* The reactions of state Move Up. */ 01080 if (check_r1_Move_Up_tr0_tr0(handle) == bool_true) 01081 { 01082 effect_r1_Move_Up_tr0(handle); 01083 } else 01084 { 01085 if (check_r1_Move_Up_tr1_tr1(handle) == bool_true) 01086 { 01087 effect_r1_Move_Up_tr1(handle); 01088 } 01089 } 01090 } 01091 01092 /* Default react sequence for initial entry */ 01093 static void react_main_region__entry_Default(Default * handle) 01094 { 01095 /* Default react sequence for initial entry */ 01096 enseq_main_region_Ready_default(handle); 01097 } 01098 01099 /* Default react sequence for initial entry */ 01100 static void react_r1__entry_Default(Default * handle) 01101 { 01102 /* Default react sequence for initial entry */ 01103 enseq_r1_Function_Ready_default(handle); 01104 } 01105 01106 01107
Generated on Wed Jul 13 2022 14:08:26 by 1.7.2