void ProfileNode::debugPrintData(int indentLevel) const { // Print function names for (int i = 0; i < indentLevel; ++i) dataLogF(" "); dataLogF("Function Name %s %zu SelfTime %.3fms/%.3f%% TotalTime %.3fms/%.3f%% Next Sibling %s\n", functionName().utf8().data(), numberOfCalls(), m_selfTime, selfPercent(), m_totalTime, totalPercent(), m_nextSibling ? m_nextSibling->functionName().utf8().data() : ""); ++indentLevel; // Print children's names and information for (StackIterator currentChild = m_children.begin(); currentChild != m_children.end(); ++currentChild) (*currentChild)->debugPrintData(indentLevel); }
void ProfileNode::debugPrintData(int indentLevel) const { // Print function names for (int i = 0; i < indentLevel; ++i) printf(" "); printf("%d SelfTime %.3fms/%.3f%% TotalTime %.3fms/%.3f%% VSelf %.3fms VTotal %.3fms Function Name %s Visible %s Next Sibling %s\n", m_numberOfCalls, m_actualSelfTime, selfPercent(), m_actualTotalTime, totalPercent(), m_visibleSelfTime, m_visibleTotalTime, functionName().UTF8String().c_str(), (m_visible ? "True" : "False"), m_nextSibling ? m_nextSibling->functionName().UTF8String().c_str() : ""); ++indentLevel; // Print children's names and information for (StackIterator currentChild = m_children.begin(); currentChild != m_children.end(); ++currentChild) (*currentChild)->debugPrintData(indentLevel); }