From: <sv...@ww...> - 2004-07-21 07:18:08
|
Author: mkrose Date: 2004-07-21 00:18:02 -0700 (Wed, 21 Jul 2004) New Revision: 1171 Modified: trunk/CSP/SimData/CHANGES.current trunk/CSP/SimData/Include/SimData/CircularBuffer.h Log: Add a method to CircularBuffer to undo getReadBuffer (similar to abandonWriteBuffer. Browse at: https://www.zerobar.net/viewcvs/viewcvs.cgi?view=rev&rev=1171 Modified: trunk/CSP/SimData/CHANGES.current =================================================================== --- trunk/CSP/SimData/CHANGES.current 2004-07-19 21:11:16 UTC (rev 1170) +++ trunk/CSP/SimData/CHANGES.current 2004-07-21 07:18:02 UTC (rev 1171) @@ -1,11 +1,14 @@ Version 0.4.0 (in progress) =========================== +2004-07-20: onsight + * Add a method to CircularBuffer to undo getReadBuffer (similar to + abandonWriteBuffer. 2004-07-19: delta * Small mingw32 macro fix in Trace.h. - + * .vcproj update. - + * SIMDATA_EXPORT symbol to export simdata::EnumLink class. 2004-07-17: onsight Modified: trunk/CSP/SimData/Include/SimData/CircularBuffer.h =================================================================== --- trunk/CSP/SimData/Include/SimData/CircularBuffer.h 2004-07-19 21:11:16 UTC (rev 1170) +++ trunk/CSP/SimData/Include/SimData/CircularBuffer.h 2004-07-21 07:18:02 UTC (rev 1171) @@ -401,6 +401,17 @@ m_read = m_next_read; } + /** Place the last block returned by getReadBuffer back into the buffer, + * as though getReadBuffer had never been called. + * + * This method is idempotent, and can be safely called even if + * getReadBuffer fails. + */ + inline void replaceReadBuffer() { + assert(m_next_read <= m_limit); + m_next_read = m_read; + } + }; |