CvSparseIDInfoGrid::Add(const IDInfo &, int, int)
- Defined in
- CvPlotManager.cpp, line 61
- Class
- CvSparseIDInfoGrid
- Hook name
CivHooks::CvSparseIDInfoGrid_Add
Hooks
static bool BeforeCvSparseIDInfoGrid_Add(CvSparseIDInfoGrid* self, const IDInfo& kInfo, int iX, int iY, bool& result);static void AfterCvSparseIDInfoGrid_Add(CvSparseIDInfoGrid* self, const IDInfo& kInfo, int iX, int iY, bool& result);static bool ReplaceCvSparseIDInfoGrid_Add(bool (*original)(CvSparseIDInfoGrid*, const IDInfo&, int, int), CvSparseIDInfoGrid* self, const IDInfo& kInfo, int iX, int iY);CivRegisterBefore<CivHooks::CvSparseIDInfoGrid_Add>(host, &BeforeCvSparseIDInfoGrid_Add);CivRegisterAfter<CivHooks::CvSparseIDInfoGrid_Add>(host, &AfterCvSparseIDInfoGrid_Add);CivRegisterReplace<CivHooks::CvSparseIDInfoGrid_Add>(host, &ReplaceCvSparseIDInfoGrid_Add);
Code
61bool CvSparseIDInfoGrid::Add(const IDInfo& kInfo, int iX, int iY)62{63 uint uiIndex = ((uint) iY * m_uiWidth) + (uint) iX;64 if (uiIndex < m_uiMaxIndex)65 {66 CvIDInfoFixedVector* pkEntry = m_paEntries[uiIndex];67 if (!pkEntry)68 {69 pkEntry = m_pkAllocator->GetFreeObject();70 m_paEntries[uiIndex] = pkEntry;71 }7273 if (pkEntry->Find(kInfo) == NULL)74 {75 pkEntry->push_back(kInfo);76 }77 return true;78 }7980 return false;81}
Calls
- CvIDInfoFixedVector::Find(const IDInfo &)
FObjectPool::GetFreeObjectFStaticVector::push_back