B+IMU+SD

Dependencies:   BMI160 RTC SDFileSystem USBDevice max32630fthr sd-driver

Fork of MPSMAXbutton by Faizan Ahmad

Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers Default.c Source File

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