Files
LayaNative2.0/Conch/source/render/LayaGL/JCIDGenerator.cpp
T
2020-11-11 16:17:13 +08:00

59 lines
1.3 KiB
C++

/**
@file JCIDGenerator.cpp
@brief
@author James
@version 1.0
@date 2016_5_12
*/
#include "JCIDGenerator.h"
namespace laya
{
JCIDGenerator::JCIDGenerator()
{
}
JCIDGenerator::~JCIDGenerator()
{
}
bool JCIDGenerator::deleteID(GLuint nFakeID)
{
//只设置为无效,不从vector中删除
if (nFakeID >= 0 && nFakeID < m_vIDTable.size())
{
m_vIDTable[nFakeID] = 0;
}
return true;
}
bool JCIDGenerator::setRealID(GLuint nFakeID,GLuint nRealID)
{
if (nFakeID == m_vIDTable.size())
{
m_vIDTable.push_back(nRealID);
}
else if (nFakeID > m_vIDTable.size())
{
int nLastSize = m_vIDTable.size();
m_vIDTable.resize(nFakeID +1);
//把中间的空的,全部填充成无效的
for (int i = nLastSize,n=m_vIDTable.size(); i < n; i++)
{
m_vIDTable[i] = 0;
}
m_vIDTable[nFakeID] = nRealID;
}
else
{
m_vIDTable[nFakeID] = nRealID;
}
return true;
}
void JCIDGenerator::reset()
{
m_vIDTable.clear();
}
}
//------------------------------------------------------------------------------
//-----------------------------END FILE--------------------------------