From: hackbard Date: Sun, 17 Feb 2008 18:17:13 +0000 (+0100) Subject: changed state machine behaviour X-Git-Url: https://hackdaworld.org/gitweb/?a=commitdiff_plain;h=c9a72c380c3677f3aeb044f7dde7fc56009622d3;p=physik%2Fposic.git changed state machine behaviour --- diff --git a/sic.c b/sic.c index 60df74b..8901104 100644 --- a/sic.c +++ b/sic.c @@ -163,13 +163,6 @@ int sic_hook(void *moldyn,void *hook_params) { insert: - /* immediately go on if no job is to be done */ - if(hp->insert_count==INS_RUNS) { - printf(" --- insert run return ---\n"); - hp->state=STATE_POSTRUN; - goto postrun; - } - /* assigne values */ steps=INS_RELAX; tau=INS_TAU; @@ -181,6 +174,13 @@ insert: if(dt>INS_DELTA_TC) goto addsched; + /* immediately go on if no job is to be done */ + if(hp->insert_count==INS_RUNS) { + printf(" --- leaving insert state ---\n"); + hp->state=STATE_POSTRUN; + goto postrun; + } + /* else -> insert atoms */ hp->insert_count+=1; printf(" ### insert atoms (%d/%d) ###\n", @@ -190,12 +190,6 @@ insert: postrun: - /* immediately return if no job is to be done */ - if(hp->postrun_count==POST_RUNS) { - printf(" --- post run return ---\n"); - return 0; - } - /* assigne values */ steps=POST_RELAX; tau=POST_TAU; @@ -207,6 +201,12 @@ postrun: if(dt>POST_DELTA_TC) goto addsched; + /* immediately return if no job is to be done */ + if(hp->postrun_count==POST_RUNS) { + printf(" --- leaving post run state ---\n"); + return 0; + } + /* postrun action */ hp->postrun_count+=1; printf(" ### postrun (%d/%d) ###\n",