EgtExecutor :
- aggiunte funzioni ExeSetInfo e ExeGetInfo per INTVECTOR, DBLVECTOR e STRVECTOR - aggiunta gestione di INTVECTOR, DBLVECTOR e STRVECTOR in funzioni Lua EgtSetInfo e EgtGetInfo.
This commit is contained in:
@@ -570,6 +570,42 @@ ExeSetInfo( int nId, const string& sKey, const Frame3d& frFrame)
|
||||
return bOk ;
|
||||
}
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
bool
|
||||
ExeSetInfo( int nId, const string& sKey, const INTVECTOR& vnInfo)
|
||||
{
|
||||
IGeomDB* pGeomDB = GetCurrGeomDB() ;
|
||||
VERIFY_GEOMDB( pGeomDB, false)
|
||||
// assegno la info
|
||||
bool bOk = pGeomDB->SetInfo( nId, sKey, vnInfo) ;
|
||||
ExeSetModified() ;
|
||||
return bOk ;
|
||||
}
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
bool
|
||||
ExeSetInfo( int nId, const string& sKey, const DBLVECTOR& vdInfo)
|
||||
{
|
||||
IGeomDB* pGeomDB = GetCurrGeomDB() ;
|
||||
VERIFY_GEOMDB( pGeomDB, false)
|
||||
// assegno la info
|
||||
bool bOk = pGeomDB->SetInfo( nId, sKey, vdInfo) ;
|
||||
ExeSetModified() ;
|
||||
return bOk ;
|
||||
}
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
bool
|
||||
ExeSetInfo( int nId, const string& sKey, const STRVECTOR& vsInfo)
|
||||
{
|
||||
IGeomDB* pGeomDB = GetCurrGeomDB() ;
|
||||
VERIFY_GEOMDB( pGeomDB, false)
|
||||
// assegno la info
|
||||
bool bOk = pGeomDB->SetInfo( nId, sKey, vsInfo) ;
|
||||
ExeSetModified() ;
|
||||
return bOk ;
|
||||
}
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
bool
|
||||
ExeGetInfo( int nId, const string& sKey, bool& bInfo)
|
||||
@@ -650,6 +686,36 @@ ExeGetInfo( int nId, const string& sKey, Frame3d& frFrame)
|
||||
return pGeomDB->GetInfo( nId, sKey, frFrame) ;
|
||||
}
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
bool
|
||||
ExeGetInfo( int nId, const string& sKey, INTVECTOR& vnInfo)
|
||||
{
|
||||
IGeomDB* pGeomDB = GetCurrGeomDB() ;
|
||||
VERIFY_GEOMDB( pGeomDB, false)
|
||||
// recupero la info
|
||||
return pGeomDB->GetInfo( nId, sKey, vnInfo) ;
|
||||
}
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
bool
|
||||
ExeGetInfo( int nId, const string& sKey, DBLVECTOR& vdInfo)
|
||||
{
|
||||
IGeomDB* pGeomDB = GetCurrGeomDB() ;
|
||||
VERIFY_GEOMDB( pGeomDB, false)
|
||||
// recupero la info
|
||||
return pGeomDB->GetInfo( nId, sKey, vdInfo) ;
|
||||
}
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
bool
|
||||
ExeGetInfo( int nId, const string& sKey, STRVECTOR& vsInfo)
|
||||
{
|
||||
IGeomDB* pGeomDB = GetCurrGeomDB() ;
|
||||
VERIFY_GEOMDB( pGeomDB, false)
|
||||
// recupero la info
|
||||
return pGeomDB->GetInfo( nId, sKey, vsInfo) ;
|
||||
}
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
bool
|
||||
ExeExistsInfo( int nId, const string& sKey)
|
||||
|
||||
@@ -521,6 +521,9 @@ LuaSetInfo( lua_State* L)
|
||||
{ Frame3d frVal ;
|
||||
BBox3d b3Val ;
|
||||
Vector3d vtVal ; // va bene anche per Point3d
|
||||
INTVECTOR vnVal ;
|
||||
DBLVECTOR vdVal ;
|
||||
STRVECTOR vsVal ;
|
||||
if ( LuaGetParam( L, 3, frVal)) {
|
||||
LuaClearStack( L) ;
|
||||
bOk = ExeSetInfo( nId, sKey, frVal) ;
|
||||
@@ -533,6 +536,18 @@ LuaSetInfo( lua_State* L)
|
||||
LuaClearStack( L) ;
|
||||
bOk = ExeSetInfo( nId, sKey, vtVal) ;
|
||||
}
|
||||
else if ( LuaGetParam( L, 3, vnVal)) {
|
||||
LuaClearStack( L) ;
|
||||
bOk = ExeSetInfo( nId, sKey, vnVal) ;
|
||||
}
|
||||
else if ( LuaGetParam( L, 3, vdVal)) {
|
||||
LuaClearStack( L) ;
|
||||
bOk = ExeSetInfo( nId, sKey, vdVal) ;
|
||||
}
|
||||
else if ( LuaGetParam( L, 3, vsVal)) {
|
||||
LuaClearStack( L) ;
|
||||
bOk = ExeSetInfo( nId, sKey, vsVal) ;
|
||||
}
|
||||
} break ;
|
||||
}
|
||||
// restituisco il risultato
|
||||
@@ -602,6 +617,27 @@ LuaGetInfo( lua_State* L)
|
||||
else
|
||||
LuaSetParam( L) ;
|
||||
}
|
||||
else if ( sType == "vi" || sType == "vI") {
|
||||
INTVECTOR vnVal ;
|
||||
if ( ExeGetInfo( nId, sKey, vnVal))
|
||||
LuaSetParam( L, vnVal) ;
|
||||
else
|
||||
LuaSetParam( L) ;
|
||||
}
|
||||
else if ( sType == "vd" || sType == "vD") {
|
||||
DBLVECTOR vdVal ;
|
||||
if ( ExeGetInfo( nId, sKey, vdVal))
|
||||
LuaSetParam( L, vdVal) ;
|
||||
else
|
||||
LuaSetParam( L) ;
|
||||
}
|
||||
else if ( sType == "vs" || sType == "vS") {
|
||||
STRVECTOR vsVal ;
|
||||
if ( ExeGetInfo( nId, sKey, vsVal))
|
||||
LuaSetParam( L, vsVal) ;
|
||||
else
|
||||
LuaSetParam( L) ;
|
||||
}
|
||||
else { // "s" "S"
|
||||
string sInfo ;
|
||||
if ( ExeGetInfo( nId, sKey, sInfo))
|
||||
|
||||
Reference in New Issue
Block a user