@ -195,8 +195,10 @@ public:
out0 ( 0 ) = static_cast < float > ( mClient . progress ( ) ) ;
}
else {
mDone = true ;
// if(mClient.state() == kDone)
// mDone = true;
mCalcFunc = mWorld - > ft - > fClearUnitOutputs ;
// if(!mDone)
mWorld - > ft - > fDoAsynchronousCommand ( mWorld , nullptr , Wrapper : : getName ( ) , this ,
postProcess , exchangeBuffers , tidyUp , destroy ,
0 , nullptr ) ;
@ -214,7 +216,7 @@ public:
if ( ! result . ok ( ) )
{
std : : cout < < " ERROR: " < < Wrapper : : getName ( ) < < " : " < < result . message ( ) . c_str ( ) < < std : : endl ;
w - > mDone = true ;
// w->mDone = true;
return ;
}
@ -238,6 +240,9 @@ public:
std : : cout < < " ERROR: " < < Wrapper : : getName ( ) < < " : " < < r . message ( ) . c_str ( ) < < ' \n ' ;
return false ;
}
// w->mDone = true;
return true ;
}
@ -250,8 +255,11 @@ public:
static void destroy ( World * world , void * data )
{
auto w = static_cast < Wrapper * > ( data ) ;
int doneAction = static_cast < int > ( w - > in0 ( static_cast < int > ( w - > mNumInputs - 1 ) ) ) ;
world - > ft - > fDoneAction ( doneAction , w ) ;
// if(w->mDone)
// {
int doneAction = static_cast < int > ( w - > in0 ( static_cast < int > ( w - > mNumInputs - 1 ) ) ) ;
world - > ft - > fDoneAction ( doneAction , w ) ;
// }
}
static void doCancel ( Unit * unit , sc_msg_iter * )