| 242 | } |
| 243 | |
| 244 | void CircularBuffer::MapView(int idx, int len, CircularBuffer::View& view) |
| 245 | { |
| 246 | view.mCircularBuffer = this; |
| 247 | view.mSrcIdx = idx; |
| 248 | view.mSrcSize = len; |
| 249 | if (mTail + idx + len <= mBufSize) |
| 250 | { |
| 251 | view.mPtr = mBuffer + mTail + idx; |
| 252 | } |
| 253 | else |
| 254 | { |
| 255 | if (view.mTempBufSize < len) |
| 256 | { |
| 257 | delete view.mTempBuf; |
| 258 | view.mTempBuf = new uint8[len]; |
| 259 | view.mTempBufSize = len; |
| 260 | } |
| 261 | view.mPtr = view.mTempBuf; |
| 262 | Read(view.mTempBuf, idx, len); |
| 263 | } |
| 264 | } |
| 265 | |
| 266 | void CircularBuffer::Read(void* ptr, int idx, int len) |
| 267 | { |
no test coverage detected