MCPcopy Create free account
hub / github.com/beefytech/Beef / ScanTypeData

Method ScanTypeData

IDEHelper/Linker/BlCvTypeSource.cpp:392–436  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

390}
391
392void BlCvTypeContainer::ScanTypeData()
393{
394 uint8* sectionData = mSectionData;
395 int sectionSize = mSectionSize;
396
397 uint8* data = (uint8*)sectionData;
398 uint8* dataEnd = data + sectionSize;
399
400 if (mCvMinTag == -1)
401 {
402 mCvMinTag = 0x1000;
403
404 int tagCountGuess = sectionSize / 128;
405 mCvTagStartMap.reserve(tagCountGuess);
406
407 int tagIdx = mCvMinTag;
408 while (data < dataEnd)
409 {
410 int tagLen = GET(uint16);
411 uint8* dataStart = data;
412 uint8* dataTagEnd = data + tagLen;
413
414 mCvTagStartMap.push_back((int)(data - sectionData));
415
416 data = dataTagEnd;
417 tagIdx++;
418 }
419 mCvMaxTag = tagIdx;
420 }
421 else
422 {
423 int tagIdx = mCvMinTag;
424 while (data < dataEnd)
425 {
426 int tagLen = GET(uint16);
427 uint8* dataStart = data;
428 uint8* dataTagEnd = data + tagLen;
429
430 mCvTagStartMap[tagIdx - mCvMinTag] = (int)(data - sectionData);
431
432 data = dataTagEnd;
433 tagIdx++;
434 }
435 }
436}
437
438void BlCvTypeContainer::HashTPITag(int tagId, HashContext& hashContext)
439{

Callers 4

ParseTypeDataMethod · 0.80
ParseIPIDataMethod · 0.80
RunMethod · 0.80
ParseTypeDataMethod · 0.80

Calls 2

reserveMethod · 0.45
push_backMethod · 0.45

Tested by

no test coverage detected