当前位置: 首页>>代码示例>>C++>>正文


C++ CAccessControlListGroup::IterBeginObjects方法代码示例

本文整理汇总了C++中CAccessControlListGroup::IterBeginObjects方法的典型用法代码示例。如果您正苦于以下问题:C++ CAccessControlListGroup::IterBeginObjects方法的具体用法?C++ CAccessControlListGroup::IterBeginObjects怎么用?C++ CAccessControlListGroup::IterBeginObjects使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在CAccessControlListGroup的用法示例。


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

示例1: aclGroupListObjects

int CLuaACLDefs::aclGroupListObjects ( lua_State* luaVM )
{
    // table aclGroupListObjects ( aclgroup theGroup )
    CAccessControlListGroup* pGroup;
    
    CScriptArgReader argStream ( luaVM );
    argStream.ReadUserData ( pGroup );
    
    if ( !argStream.HasErrors () )
    {
        // Create a table to return into
        lua_newtable ( luaVM );

        // Loop through ACL stuff
        char szBuffer [255];
        unsigned int uiIndex = 0;
        list <CAccessControlListGroupObject* > ::const_iterator iter = pGroup->IterBeginObjects ();
        for ( ; iter != pGroup->IterEndObjects (); ++iter )
        {
            // Put the base type depending on the type
            switch ( (*iter)->GetObjectType () )
            {
                case CAccessControlListGroupObject::OBJECT_TYPE_RESOURCE:
                    strcpy ( szBuffer, "resource." );
                    break;

                case CAccessControlListGroupObject::OBJECT_TYPE_USER:
                    strcpy ( szBuffer, "user." );
                    break;
            };

            // Append the object name
            strncat ( szBuffer, (*iter)->GetObjectName (), 254 );

            // Push its name onto the table
            lua_pushnumber ( luaVM, ++uiIndex );
            lua_pushstring ( luaVM, szBuffer );
            lua_settable ( luaVM, -3 );
        }
        // Return the table
        return 1;
    }
    else
        m_pScriptDebugging->LogCustom ( luaVM, argStream.GetFullErrorMessage () );

    lua_pushboolean ( luaVM, false );
    return 1;
}
开发者ID:superherohay4,项目名称:mtasa-blue,代码行数:48,代码来源:CLuaACLDefs.cpp


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