#include "Stdafx.h"
#include "Indexgenerator.h"



cIndexGenerator::cIndexGenerator(void)
: mEmptyIdxQueue( 200000 )
, mIdxMax( 0 )
{
}



cIndexGenerator::~cIndexGenerator(void)
{
	mEmptyIdxQueue.Clear();
}



unsigned long cIndexGenerator::GeneratIdx()
{

	//if( mEmptyIdxQueue.GetSize() > 180000 )
	//{
	//	unsigned long frontData = mEmptyIdxQueue.Front();
	//	mEmptyIdxQueue.PopFront();
	//	return frontData;
	//}

	return ++mIdxMax;
}



void cIndexGenerator::DelIdx( unsigned long idx )
{
	if( idx == ULONG_MAX )
	{
		idx = 0;
	}

	// mEmptyIdxQueue.PushBack( idx );
}
