Bazaar developer reference

CvSparseIDInfoGrid::Remove(const IDInfo &, int, int)

Defined in
CvPlotManager.cpp, line 84
Class
CvSparseIDInfoGrid
Hook name
CivHooks::CvSparseIDInfoGrid_Remove

Hooks

static bool BeforeCvSparseIDInfoGrid_Remove(CvSparseIDInfoGrid* self, const IDInfo& kInfo, int iX, int iY);static void AfterCvSparseIDInfoGrid_Remove(CvSparseIDInfoGrid* self, const IDInfo& kInfo, int iX, int iY);static void ReplaceCvSparseIDInfoGrid_Remove(void (*original)(CvSparseIDInfoGrid*, const IDInfo&, int, int), CvSparseIDInfoGrid* self, const IDInfo& kInfo, int iX, int iY);CivRegisterBefore<CivHooks::CvSparseIDInfoGrid_Remove>(host, &BeforeCvSparseIDInfoGrid_Remove);CivRegisterAfter<CivHooks::CvSparseIDInfoGrid_Remove>(host, &AfterCvSparseIDInfoGrid_Remove);CivRegisterReplace<CivHooks::CvSparseIDInfoGrid_Remove>(host, &ReplaceCvSparseIDInfoGrid_Remove);

Code

84void CvSparseIDInfoGrid::Remove(const IDInfo& kInfo, int iX, int iY)85{86	uint uiIndex = ((uint) iY * m_uiWidth) + (uint) iX;87	if (uiIndex < m_uiMaxIndex)88	{89		CvIDInfoFixedVector* pkEntry = m_paEntries[uiIndex];90		if (pkEntry)91		{92			if (pkEntry->Remove(kInfo))93			{94				if (pkEntry->size() == 0)95				{96					// Nothing there, release the array97					m_pkAllocator->Release(pkEntry);98					m_paEntries[uiIndex] = NULL;99				}100			}101		}102	}103}

Calls

Called by