EgtMachKernel :
- modifiche per simulazione MP.
This commit is contained in:
+35
-1
@@ -1574,12 +1574,46 @@ Machine::LuaEmtSaveCmd( lua_State* L)
|
||||
LuaGetParam( L, 2, nPar) ;
|
||||
string sPar ;
|
||||
LuaGetParam( L, 3, sPar) ;
|
||||
string sPar2 ;
|
||||
if ( nType == 4) {
|
||||
switch ( lua_type( L, 4)) {
|
||||
case LUA_TNIL :
|
||||
nPar = 0 ;
|
||||
break ;
|
||||
case LUA_TBOOLEAN :
|
||||
{ nPar = 1 ;
|
||||
bool bVal ;
|
||||
LuaGetParam( L, 4, bVal) ;
|
||||
sPar2 = ( bVal ? "1" : "0") ;
|
||||
} break ;
|
||||
case LUA_TNUMBER :
|
||||
if ( lua_isinteger( L, 4)) {
|
||||
nPar = 2 ;
|
||||
int nVal ;
|
||||
LuaGetParam( L, 4, nVal) ;
|
||||
sPar2 = ToString( nVal) ;
|
||||
}
|
||||
else {
|
||||
nPar = 3 ;
|
||||
double dVal ;
|
||||
LuaGetParam( L, 4, dVal) ;
|
||||
sPar2 = ToString( dVal, 9) ;
|
||||
}
|
||||
break ;
|
||||
case LUA_TSTRING :
|
||||
{ nPar = 4 ;
|
||||
LuaGetParam( L, 4, sPar2) ;
|
||||
} break ;
|
||||
default :
|
||||
return luaL_error( L, " Unknown Type") ;
|
||||
}
|
||||
}
|
||||
LuaClearStack( L) ;
|
||||
// verifico ci sia una macchina attiva
|
||||
if ( m_pMchLua == nullptr)
|
||||
return luaL_error( L, " Unknown Machine") ;
|
||||
// salvo il comando
|
||||
bool bOk = ( m_pMchLua->m_pMchMgr != nullptr && m_pMchLua->m_pMchMgr->SimSaveCmd( nType, nPar, sPar)) ;
|
||||
bool bOk = ( m_pMchLua->m_pMchMgr != nullptr && m_pMchLua->m_pMchMgr->SimSaveCmd( nType, nPar, sPar, sPar2)) ;
|
||||
// assegno risultato
|
||||
LuaSetParam( L, bOk) ;
|
||||
return 1 ;
|
||||
|
||||
Reference in New Issue
Block a user