/*----------------------------------------------------------------------------- FUNCTION: HandleWriteRequests PURPOSE: Retrieves write request and calls the proper function depending on the write request type. HISTORY: Date: Author: Comment: 10/27/95 AllenD Wrote it 5/25/96 AllenD Modified to include -----------------------------------------------------------------------------*/ void HandleWriteRequests() { PWRITEREQUEST pWrite; BOOL fRes; pWrite = gpWriterHead->pNext; while(pWrite != gpWriterTail) { switch(pWrite->dwWriteType) { case WRITE_CHAR: WriterChar(pWrite); break; case WRITE_FILESTART: WriterFileStart(pWrite->dwSize); break; case WRITE_FILE: WriterFile(pWrite); // // free data block // EnterCriticalSection(&gcsDataHeap); fRes = HeapFree(pWrite->hHeap, 0, pWrite->lpBuf); LeaveCriticalSection(&gcsDataHeap); if (!fRes) ErrorReporter("HeapFree(file transfer buffer)"); break; case WRITE_FILEEND: WriterComplete(); break; case WRITE_ABORT: WriterAbort(pWrite); break; case WRITE_BLOCK: WriterBlock(pWrite); break; default: ErrorReporter("Bad write request"); break; } // // remove current node and get next node // pWrite = RemoveFromLinkedList(pWrite); pWrite = gpWriterHead->pNext; } return; }
void RemoveSimplexFromDelaunayTriangulation(DelaunayTriangulation* dt, Simplex* simplex) { RemoveFromLinkedList(dt->m_Simplices, simplex->m_SimplexNode); }