您当前的位置:首页 > IT编程 > C++
| C语言 | Java | VB | VC | python | Android | TensorFlow | C++ | oracle | 学术与代码 | cnn卷积神经网络 | gnn | 图像修复 | Keras | 数据集 | Neo4j | 自然语言处理 | 深度学习 | 医学CAD | 医学影像 | 超参数 | pointnet | pytorch | 异常检测 | Transformers | 情感分类 | 知识图谱 |

自学教程:C++ tolua_tousertype函数代码示例

51自学网 2021-06-03 08:55:22
  C++
这篇教程C++ tolua_tousertype函数代码示例写得很实用,希望能帮到您。

本文整理汇总了C++中tolua_tousertype函数的典型用法代码示例。如果您正苦于以下问题:C++ tolua_tousertype函数的具体用法?C++ tolua_tousertype怎么用?C++ tolua_tousertype使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。

在下文中一共展示了tolua_tousertype函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。

示例1: tolua_building_get_size

static int tolua_building_get_size(lua_State * L){  building *self = (building *) tolua_tousertype(L, 1, 0);  tolua_pushnumber(L, self->size);  return 1;}
开发者ID:hochl,项目名称:server,代码行数:6,


示例2: tolua_building_get_region

static int tolua_building_get_region(lua_State * L){  building *self = (building *) tolua_tousertype(L, 1, 0);  tolua_pushusertype(L, building_getregion(self), TOLUA_CAST "region");  return 1;}
开发者ID:hochl,项目名称:server,代码行数:6,


示例3: tolua_building_set_region

static int tolua_building_set_region(lua_State * L){  building *self = (building *) tolua_tousertype(L, 1, 0);  building_setregion(self, (region *) tolua_tousertype(L, 2, 0));  return 0;}
开发者ID:hochl,项目名称:server,代码行数:6,


示例4: tolua_building_destroy

static int tolua_building_destroy(lua_State * L){  building *self = (building *) tolua_tousertype(L, 1, 0);  remove_building(&self->region->buildings, self);  return 0;}
开发者ID:hochl,项目名称:server,代码行数:6,


示例5: tolua_building_get_objects

static int tolua_building_get_objects(lua_State * L){  building *self = (building *) tolua_tousertype(L, 1, 0);  tolua_pushusertype(L, (void *)&self->attribs, TOLUA_CAST "hashtable");  return 1;}
开发者ID:hochl,项目名称:server,代码行数:6,


示例6: tolua_building_get_type

static int tolua_building_get_type(lua_State * L){  building *self = (building *) tolua_tousertype(L, 1, 0);  tolua_pushstring(L, self->type->_name);  return 1;}
开发者ID:hochl,项目名称:server,代码行数:6,


示例7: tolua_building_get_id

static int tolua_building_get_id(lua_State * L){  building *self = (building *) tolua_tousertype(L, 1, 0);  tolua_pushnumber(L, (lua_Number) self->no);  return 1;}
开发者ID:hochl,项目名称:server,代码行数:6,


示例8: tolua_building_set_size

static int tolua_building_set_size(lua_State * L){  building *self = (building *) tolua_tousertype(L, 1, 0);  self->size = (int)tolua_tonumber(L, 2, 0);  return 0;}
开发者ID:hochl,项目名称:server,代码行数:6,


示例9: tolua_building_get_info

static int tolua_building_get_info(lua_State * L){  building *self = (building *) tolua_tousertype(L, 1, 0);  tolua_pushstring(L, self->display);  return 1;}
开发者ID:hochl,项目名称:server,代码行数:6,


示例10: tolua_default_collect

/* Default collect function*/TOLUA_API int tolua_default_collect (lua_State* tolua_S){    void* self = tolua_tousertype(tolua_S,1,0);    free(self);    return 0;}
开发者ID:joewan,项目名称:cocos2d-x,代码行数:8,


示例11: tolua_cocos2dx_EventListenerPhysicsContact_registerScriptHandler

static int tolua_cocos2dx_EventListenerPhysicsContact_registerScriptHandler(lua_State* tolua_S){    if (nullptr == tolua_S)        return 0;        int argc = 0;    EventListenerPhysicsContact* self = nullptr;#if COCOS2D_DEBUG >= 1    tolua_Error tolua_err;    if (!tolua_isusertype(tolua_S, 1, "cc.EventListenerPhysicsContact", 0, &tolua_err))  goto tolua_lerror;#endif        self = static_cast<EventListenerPhysicsContact*>(tolua_tousertype(tolua_S,1,0));#if COCOS2D_DEBUG >= 1    if (nullptr == self) {        tolua_error(tolua_S,"invalid 'self' in function 'tolua_cocos2dx_EventListenerPhysicsContact_registerScriptHandler'/n", nullptr);        return 0;    }#endif    argc = lua_gettop(tolua_S) - 1;        if (argc == 2)    {#if COCOS2D_DEBUG >= 1        if (!toluafix_isfunction(tolua_S,2,"LUA_FUNCTION",0,&tolua_err) ||            !tolua_isnumber(tolua_S, 3, 0, &tolua_err))        {            goto tolua_lerror;        }#endif        LUA_FUNCTION handler = toluafix_ref_function(tolua_S,2,0);        ScriptHandlerMgr::HandlerType type        = static_cast<ScriptHandlerMgr::HandlerType>((int)tolua_tonumber(tolua_S, 3, 0));        switch (type)        {            case ScriptHandlerMgr::HandlerType::EVENT_PHYSICS_CONTACT_BEGIN:            {                ScriptHandlerMgr::getInstance()->addObjectHandler((void*)self, handler, type);                                self->onContactBegin = [handler](PhysicsContact& contact) -> bool{                    LuaStack* stack = LuaEngine::getInstance()->getLuaStack();                    stack->pushObject(&contact, "cc.PhysicsContact");                    bool ret = stack->executeFunctionByHandler(handler, 1);                    stack->clean();                                        return ret;                };            }                break;            case ScriptHandlerMgr::HandlerType::EVENT_PHYSICS_CONTACT_PRESOLVE:            {                ScriptHandlerMgr::getInstance()->addObjectHandler((void*)self, handler, type);                                self->onContactPreSolve = [handler](PhysicsContact& contact, PhysicsContactPreSolve& solve) -> bool{                    LuaStack* stack = LuaEngine::getInstance()->getLuaStack();                    stack->pushObject(&contact, "cc.PhysicsContact");                    tolua_pushusertype(stack->getLuaState(), &solve, "cc.PhysicsContactPreSolve");                    bool ret = stack->executeFunctionByHandler(handler, 2);                    stack->clean();                                        return ret;                };            }                break;            case ScriptHandlerMgr::HandlerType::EVENT_PHYSICS_CONTACT_POSTSOLVE:            {                ScriptHandlerMgr::getInstance()->addObjectHandler((void*)self, handler, type);                                self->onContactPostSolve = [handler](PhysicsContact& contact, const PhysicsContactPostSolve& solve){                    LuaStack* stack = LuaEngine::getInstance()->getLuaStack();                    stack->pushObject(&contact, "cc.PhysicsContact");                    tolua_pushusertype(stack->getLuaState(), const_cast<PhysicsContactPostSolve*>(&solve), "cc.PhysicsContactPostSolve");                    stack->executeFunctionByHandler(handler, 2);                    stack->clean();                };            }                break;            case ScriptHandlerMgr::HandlerType::EVENT_PHYSICS_CONTACT_SEPERATE:            {                ScriptHandlerMgr::getInstance()->addObjectHandler((void*)self, handler, type);                                self->onContactSeperate = [handler](PhysicsContact& contact){                    LuaStack* stack = LuaEngine::getInstance()->getLuaStack();                    stack->pushObject(&contact, "cc.PhysicsContact");                    stack->executeFunctionByHandler(handler, 1);                    stack->clean();                };            }                break;            default:                break;        }        return 0;    }        CCLOG("'registerScriptHandler' has wrong number of arguments: %d, was expecting %d/n", argc, 2);    return 0;    #if COCOS2D_DEBUG >= 1tolua_lerror:    tolua_error(tolua_S,"#ferror in function 'registerScriptHandler'.",&tolua_err);//.........这里部分代码省略.........
开发者ID:8823-scholar,项目名称:cocos-book,代码行数:101,


示例12: lua_cocos2dx_physics_PhysicsBody_getJoints

int lua_cocos2dx_physics_PhysicsBody_getJoints(lua_State* tolua_S){    int argc = 0;    cocos2d::PhysicsBody* cobj = nullptr;    bool ok  = true;    #if COCOS2D_DEBUG >= 1    tolua_Error tolua_err;#endif    #if COCOS2D_DEBUG >= 1    if (!tolua_isusertype(tolua_S,1,"cc.PhysicsBody",0,&tolua_err)) goto tolua_lerror;#endif        cobj = (cocos2d::PhysicsBody*)tolua_tousertype(tolua_S,1,0);    #if COCOS2D_DEBUG >= 1    if (!cobj)    {        tolua_error(tolua_S,"invalid 'cobj' in function 'lua_cocos2dx_physics_PhysicsBody_getJoints'", NULL);        return 0;    }#endif        argc = lua_gettop(tolua_S)-1;    if (argc == 0)    {        do {                        if(!ok)                return 0;            auto& ret = cobj->getJoints();                        lua_newtable(tolua_S);                        if (ret.empty())                return 1;                        auto iter = ret.begin();            int  indexTable = 1;            for (; iter != ret.end(); ++iter)            {                if (nullptr == *iter)                    continue;                                lua_pushnumber(tolua_S, (lua_Number)indexTable);                tolua_pushusertype(tolua_S,(void*)(*iter), getLuaTypeName(*iter, "cc.PhysicsJoint"));                lua_rawset(tolua_S, -3);                ++indexTable;            }        } while (0);        return 1;    }    CCLOG("%s has wrong number of arguments: %d, was expecting %d /n", "getJoints",argc, 0);    return 0;    #if COCOS2D_DEBUG >= 1tolua_lerror:    tolua_error(tolua_S,"#ferror in function 'lua_cocos2dx_physics_PhysicsBody_getJoints'.",&tolua_err);#endif        return 0;}
开发者ID:8823-scholar,项目名称:cocos-book,代码行数:63,


示例13: tolua_collect_Point

static int tolua_collect_Point (lua_State* tolua_S){ Point* self = (Point*) tolua_tousertype(tolua_S,1,0); delete self; return 0;}
开发者ID:ConnorShore,项目名称:Game,代码行数:6,


示例14: tolua_building_get_name

static int tolua_building_get_name(lua_State * L){    building *self = (building *)tolua_tousertype(L, 1, 0);    tolua_pushstring(L, building_getname(self));    return 1;}
开发者ID:CTD1,项目名称:eressea-server-bugfixing,代码行数:6,


示例15: tolua_building_set_name

static int tolua_building_set_name(lua_State * L){  building *self = (building *) tolua_tousertype(L, 1, 0);  building_setname(self, tolua_tostring(L, 2, 0));  return 0;}
开发者ID:hochl,项目名称:server,代码行数:6,



注:本文中的tolua_tousertype函数示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


C++ toluafix_pushusertype_ccobject函数代码示例
C++ tolua_tostring函数代码示例
万事OK自学网:51自学网_软件自学网_CAD自学网自学excel、自学PS、自学CAD、自学C语言、自学css3实例,是一个通过网络自主学习工作技能的自学平台,网友喜欢的软件自学网站。