{                                                           // ..., table, nil, TOP
    lua_pop(L, 1);                                            // ..., table, TOP
    LUA_CreateNewWrapper(L, pObj, pOwner);                    // ..., table, wrapper-obj, TOP
    lua_pushfstring(L, "%p", pObj);                           // ..., table, wrapper-obj, address, TOP
    lua_pushvalue(L, -2);                                     // ..., table, wrapper-obj, address, wrapper-obj, TOP
    lua_rawset(L, -4);                                        // ..., table, wrapper-obj, TOP
  }

  //remove the pointer table
  lua_remove(L, -2);                                          // ..., wrapper-obj, TOP
                                                              // 1 value left on the stack
}

void LUA_PushObjectProxy(lua_State* L, hkvVec2* pVector)
{
  VSWIG_PUSH_PROXY(L, hkvVec2, pVector)
}

void LUA_PushObjectProxy(lua_State* L, hkvVec3* pVector)
{
  VSWIG_PUSH_PROXY(L, hkvVec3, pVector)
}

void LUA_PushObjectProxy(lua_State* L, hkvVec4* pVector)
{
  VSWIG_PUSH_PROXY(L, hkvVec4, pVector)
}

void LUA_PushObjectProxy(lua_State* L, hkvMat3* pMatrix)
{
  VSWIG_PUSH_PROXY(L, hkvMat3, pMatrix)
Example #2
0
  {                                                           // ..., table, nil, TOP
    lua_pop(L, 1);                                            // ..., table, TOP
    LUA_CreateNewWrapper(L, pObj, pOwner);                    // ..., table, wrapper-obj, TOP
    lua_pushfstring(L, "%p", pObj);                           // ..., table, wrapper-obj, address, TOP
    lua_pushvalue(L, -2);                                     // ..., table, wrapper-obj, address, wrapper-obj, TOP
    lua_rawset(L, -4);                                        // ..., table, wrapper-obj, TOP
  }

  //remove the pointer table
  lua_remove(L, -2);                                          // ..., wrapper-obj, TOP
                                                              // 1 value left on the stack
}

void LUA_PushObjectProxy(lua_State* L, hkvVec3* pVector)
{
  VSWIG_PUSH_PROXY(L, hkvVec3, pVector)
}

void LUA_PushObjectProxy(lua_State* L, VColorRef *pColorRef)
{
  VSWIG_PUSH_PROXY(L, VColorRef, pColorRef)
}

void LUA_PushObjectProxy(lua_State* L, hkvAlignedBBox *pBox)
{
  VSWIG_PUSH_PROXY(L, hkvAlignedBBox, pBox)
}

void LUA_PushBitmask(lua_State* L, unsigned int iMask)
{
  VSWIG_Lua_NewPointerObj(L, new VBitmask(iMask), SWIGTYPE_p_VBitmask, VLUA_MANAGE_MEM_BY_LUA);