MCPcopy Create free account
hub / github.com/AppleWin/AppleWin / ProfileFormat

Function ProfileFormat

source/Debugger/Debug.cpp:8608–8822  ·  view source on GitHub ↗

===========================================================================

Source from the content-addressed store, hash-verified

8606#define DELIM "%s"
8607//===========================================================================
8608void ProfileFormat ( bool bExport, ProfileFormat_e eFormatMode )
8609{
8610 std::string sSeparator7;
8611 std::string sSeparator2;
8612 std::string sSeparator1;
8613
8614 if (eFormatMode == PROFILE_FORMAT_COMMA)
8615 {
8616 sSeparator7 = ',';
8617 sSeparator2 = ',';
8618 sSeparator1 = ',';
8619 }
8620 else
8621 if (eFormatMode == PROFILE_FORMAT_SPACE)
8622 {
8623 sSeparator7.assign(7, ' ');
8624 sSeparator2.assign(2, ' ');
8625 sSeparator1 = ' ';
8626 }
8627 else
8628 {
8629 sSeparator7 = '\t';
8630 sSeparator2 = '\t';
8631 sSeparator1 = '\t';
8632 }
8633
8634 ProfileLineReset();
8635
8636 bool bOpcodeGood = true;
8637 bool bOpmodeGood = true;
8638
8639 std::vector< ProfileOpcode_t > vProfileOpcode( &g_aProfileOpcodes[0], &g_aProfileOpcodes[ NUM_OPCODES ] );
8640 std::vector< ProfileOpmode_t > vProfileOpmode( &g_aProfileOpmodes[0], &g_aProfileOpmodes[ NUM_OPMODES ] );
8641
8642 // sort >
8643 std::sort( vProfileOpcode.begin(), vProfileOpcode.end(), ProfileOpcode_t() );
8644 std::sort( vProfileOpmode.begin(), vProfileOpmode.end(), ProfileOpmode_t() );
8645
8646 Profile_t nOpcodeTotal = 0;
8647 Profile_t nOpmodeTotal = 0;
8648
8649 for ( int iOpcode = 0; iOpcode < NUM_OPCODES; ++iOpcode )
8650 {
8651 nOpcodeTotal += vProfileOpcode[ iOpcode ].m_nCount;
8652 }
8653
8654 for ( int iOpmode = 0; iOpmode < NUM_OPMODES; ++iOpmode )
8655 {
8656 nOpmodeTotal += vProfileOpmode[ iOpmode ].m_nCount;
8657 }
8658
8659 if (nOpcodeTotal < 1.)
8660 {
8661 nOpcodeTotal = 1;
8662 bOpcodeGood = false;
8663 }
8664
8665 const char *pColorOperator = "";

Callers 2

CmdProfileFunction · 0.85
DebugEndFunction · 0.85

Calls 9

ProfileLineResetFunction · 0.85
ProfileOpcode_tClass · 0.85
ProfileOpmode_tClass · 0.85
ProfileLinePeekFunction · 0.85
ProfileLinePushFunction · 0.85
StrFormatFunction · 0.85
ByteToHexStrFunction · 0.85
FormatMethod · 0.80
AssignMethod · 0.80

Tested by

no test coverage detected