30 GET(FirstEntry) {
return m_pFirstEntry; }
32 GET(LastEntry) {
return m_pLastEntry; }
34 GET(Count) {
return m_iNumEntries; }
43 if(func) func(pCurrentEntry->
Data);
82 if(m_pLastEntry) m_pLastEntry->
pNextEntry = pNewEntry;
84 m_pLastEntry = pNewEntry;
88 if(!m_pFirstEntry) m_pFirstEntry = pNewEntry;
91 memcpy(&pNewEntry->
Data, pData,
sizeof(T));
110 pCurrentEntry = m_pFirstEntry;
116 if(!memcmp(&pCurrentEntry->
Data, pData,
sizeof(T)))
120 if(ppOut) *ppOut = pCurrentEntry;
142 if(pEntry == m_pFirstEntry &&
143 pEntry == m_pLastEntry)
146 m_pFirstEntry = NULL;
149 else if(pEntry == m_pFirstEntry)
156 else if(pEntry == m_pLastEntry)
186 while(m_pFirstEntry) DeleteEntry(m_pFirstEntry);
201 pCurrentEntry = m_pFirstEntry;
206 if(pCallback(pCurrentEntry) ==
false)
break;
raListEntry< T > * AddEntry(T *pData)
bool DeleteEntry(raListEntry< T > *pEntry)
bool FindEntry(T *pData, raListEntry< T > **ppOut)
virtual void __vsforeach(void(*func)(T &))
raListEntry< T > * pPrevEntry
void RAPI RERROR_NULLPOINTER(raString x)
T * GetEntryData(raListEntry< T > *pEntry)
ID3D11Buffer D3D11_BUFFER_DESC void * pData
raListEntry< T > * pNextEntry
bool Traverse(bool(*pCallback)(raListEntry< T > *))
void RAPI RERROR_OUTOFMEM()
#define READONLY_PROPERTY(t, n)