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


C++ FreeList::Release方法代码示例

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


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

示例1: StartScene

void GLDrawInfo::StartScene()
{
	sectorrenderflags.Resize(numsectors);
	ss_renderflags.Resize(numsubsectors);
	memset(&sectorrenderflags[0], 0, numsectors*sizeof(sectorrenderflags[0]));
	memset(&ss_renderflags[0], 0, numsubsectors*sizeof(ss_renderflags[0]));


	for(unsigned int i=0;i< otherfloorplanes.Size();i++)
	{
		gl_subsectorrendernode * node = otherfloorplanes[i];
		while (node)
		{
			gl_subsectorrendernode * n = node;
			node = node->next;
			SSR_List.Release(n);
		}
	}
	otherfloorplanes.Clear();

	for(unsigned int i=0;i< otherceilingplanes.Size();i++)
	{
		gl_subsectorrendernode * node = otherceilingplanes[i];
		while (node)
		{
			gl_subsectorrendernode * n = node;
			node = node->next;
			SSR_List.Release(n);
		}
	}
	otherceilingplanes.Clear();

	// clear all the lists that might not have been cleared already
	MissingUpperTextures.Clear();
	MissingLowerTextures.Clear();
	MissingUpperSegs.Clear();
	MissingLowerSegs.Clear();
	SubsectorHacks.Clear();
	CeilingStacks.Clear();
	FloorStacks.Clear();
	HandledSubsectors.Clear();

	next=gl_drawinfo;
	gl_drawinfo=this;
	for(int i=0;i<GLDL_TYPES;i++) drawlists[i].Reset();
}
开发者ID:,项目名称:,代码行数:46,代码来源:

示例2: EndDrawInfo

//==========================================================================
//
//
//
//==========================================================================
void GLDrawInfo::EndDrawInfo()
{
	GLDrawInfo * di = gl_drawinfo;

	for(int i=0;i<GLDL_TYPES;i++) di->drawlists[i].Reset();
	gl_drawinfo=di->next;

	if (di->temporary) di_list.Release(di);
}
开发者ID:,项目名称:,代码行数:14,代码来源:

示例3: ClearBuffers

void FDrawInfo::ClearBuffers()
{
    for(unsigned int i=0; i< otherfloorplanes.Size(); i++)
    {
        gl_subsectorrendernode * node = otherfloorplanes[i];
        while (node)
        {
            gl_subsectorrendernode * n = node;
            node = node->next;
            SSR_List.Release(n);
        }
    }
    otherfloorplanes.Clear();

    for(unsigned int i=0; i< otherceilingplanes.Size(); i++)
    {
        gl_subsectorrendernode * node = otherceilingplanes[i];
        while (node)
        {
            gl_subsectorrendernode * n = node;
            node = node->next;
            SSR_List.Release(n);
        }
    }
    otherceilingplanes.Clear();

    // clear all the lists that might not have been cleared already
    MissingUpperTextures.Clear();
    MissingLowerTextures.Clear();
    MissingUpperSegs.Clear();
    MissingLowerSegs.Clear();
    SubsectorHacks.Clear();
    CeilingStacks.Clear();
    FloorStacks.Clear();
    HandledSubsectors.Clear();

}
开发者ID:WChrisK,项目名称:Zandronum,代码行数:37,代码来源:gl_renderhacks.cpp

示例4: DeleteLightNode

static FLightNode * DeleteLightNode(FLightNode * node)
{
	FLightNode * tn;  // next node on thing thread
	
	if (node)
    {
		
		*node->prevTarget = node->nextTarget;
		if (node->nextTarget) node->nextTarget->prevTarget=node->prevTarget;

		*node->prevLight = node->nextLight;
		if (node->nextLight) node->nextLight->prevLight=node->prevLight;
		
		// Return this node to the freelist
		tn=node->nextTarget;
		freelist.Release(node);
		return(tn);
    }
	return(NULL);
}                             // phares 3/13/98
开发者ID:1Akula1,项目名称:gzdoom,代码行数:20,代码来源:a_dynlight.cpp


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