MCPcopy Create free account
hub / github.com/GarageGames/Torque3D / write

Method write

Engine/source/core/memVolume.cpp:413–438  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

411 }
412
413 U32 MemFile::write(const void* src, U32 size)
414 {
415 if ((mStatus != Open && mStatus != EndOfFile) || !size)
416 return 0;
417
418 if (mFileData->mFileSize + size > mFileData->mBufferSize)
419 {
420 // Keep doubling our buffer size until we're big enough.
421 while (mFileData->mFileSize + size > mFileData->mBufferSize)
422 mFileData->mBufferSize *= 2;
423 mFileData->mBuffer = dRealloc(mFileData->mBuffer, mFileData->mBufferSize);
424 if (!mFileData->mBuffer)
425 {
426 mStatus = FileSystemFull;
427 return 0;
428 }
429 }
430
431 dMemcpy((U8*)mFileData->mBuffer + mCurrentPos, src, size);
432 mCurrentPos += size;
433 mFileData->mFileSize = getMax(mFileData->mFileSize, mCurrentPos);
434 mFileData->mLastAccess = Time::getCurrentTime();
435 mFileData->mModified = mFileData->mLastAccess;
436
437 return size;
438 }
439
440 //-----------------------------------------------------------------------------
441

Callers 4

writeHeaderMethod · 0.45
writeLineMethod · 0.45
writeObjectMethod · 0.45
writeDemoStartBlockMethod · 0.45

Calls 3

getMaxFunction · 0.85
dMemcpyFunction · 0.50
getCurrentTimeFunction · 0.50

Tested by

no test coverage detected