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


C++ CClassMemoryPool类代码示例

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


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

示例1: sizeof

//-----------------------------------------------------------------------------
// Purpose: 
//-----------------------------------------------------------------------------
CHudTexture *CHud::AddUnsearchableHudIconToList(CHudTexture& texture)
{
    // These names are composed based on the texture file name
    char composedName[512];

    if (texture.bRenderUsingFont)
    {
        Q_snprintf(composedName, sizeof(composedName), "%s_c%i",
            texture.szTextureFile, texture.cCharacterInFont);
    }
    else
    {
        Q_snprintf(composedName, sizeof(composedName), "%s_%i_%i_%i_%i",
            texture.szTextureFile, texture.rc.left, texture.rc.top, texture.rc.right, texture.rc.bottom);
    }

    CHudTexture *icon = GetIcon(composedName);
    if (icon)
    {
        return icon;
    }

    CHudTexture *newTexture = (CHudTexture *) g_HudTextureMemoryPool.Alloc();
    *newTexture = texture;

    SetupNewHudTexture(newTexture);

    int idx = m_Icons.Insert(composedName, newTexture);
    return m_Icons[idx];
}
开发者ID:Yosam02,项目名称:game,代码行数:33,代码来源:hud.cpp

示例2:

CHudIcons::~CHudIcons()
{
	int c = m_Icons.Count();
	for (int i = c - 1; i >= 0; i--)
	{
		CHudTexture *tex = m_Icons[i];
		g_HudTextureMemoryPool.Free(tex);
	}
	m_Icons.Purge();
}
开发者ID:SCell555,项目名称:source-sdk-2013,代码行数:10,代码来源:hud.cpp

示例3: FindPanelAnimationMap

//-----------------------------------------------------------------------------
// Purpose: 
//-----------------------------------------------------------------------------
PanelAnimationMap *CPanelAnimationDictionary::FindOrAddPanelAnimationMap( char const *className )
{
	PanelAnimationMap *map = FindPanelAnimationMap( className );
	if ( map )
		return map;

	Panel::InitPropertyConverters();

	PanelAnimationMapDictionaryEntry entry;
	entry.map = (PanelAnimationMap *)m_PanelAnimationMapPool.Alloc();
	m_AnimationMaps.Insert( StripNamespace( className ), entry );
	return entry.map;
}
开发者ID:TrentSterling,项目名称:D0G,代码行数:16,代码来源:AnimationController.cpp

示例4: GetIcon

//-----------------------------------------------------------------------------
// Purpose: 
//-----------------------------------------------------------------------------
CHudTexture *CHud::AddSearchableHudIconToList(CHudTexture& texture)
{
    CHudTexture *icon = GetIcon(texture.szShortName);
    if (icon)
    {
        return icon;
    }

    CHudTexture *newTexture = (CHudTexture *) g_HudTextureMemoryPool.Alloc();
    *newTexture = texture;

    SetupNewHudTexture(newTexture);

    int idx = m_Icons.Insert(texture.szShortName, newTexture);
    return m_Icons[idx];
}
开发者ID:Yosam02,项目名称:game,代码行数:19,代码来源:hud.cpp

示例5:

//-----------------------------------------------------------------------------
// Purpose: cleans up memory allocated for m_rg* arrays
//-----------------------------------------------------------------------------
CHud::~CHud()
{
    int c = m_Icons.Count();
    for (int i = c - 1; i >= 0; i--)
    {
        CHudTexture *tex = m_Icons[i];
        g_HudTextureMemoryPool.Free(tex);
    }
    m_Icons.Purge();

    c = m_RenderGroups.Count();
    for (int i = c - 1; i >= 0; i--)
    {
        CHudRenderGroup *group = m_RenderGroups[i];
        m_RenderGroups.RemoveAt(i);
        delete group;
    }
}
开发者ID:Yosam02,项目名称:game,代码行数:21,代码来源:hud.cpp


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