Esempio n. 1
0
// -------------------------------------------------------
// Logs profiling data
// -------------------------------------------------------
void print() {
    LOG << "------------------------------------------------------------";
    LOG << " C  | Percent | Accu       | Name";
    LOG << "------------------------------------------------------------";
    float norm = ctx.data[0].totalTime;
    char buffer[256];
    std::string line;
    for (int i = 0; i < ctx.index; ++i) {
        ProfileData& pd = ctx.data[i];
        int ident = pd.level * 2;
        float per = pd.totalTime / norm * 100.0f;
        sprintf(buffer,"%3d | %s  | %3.8f | ", pd.invokeCounter, formatPercentage(per).c_str(), pd.totalTime);
        line = buffer;
        for (int j = 0; j < ident; ++j) {
            line += " ";
        }
        LOG << line << " " << pd.name;
    }
    LOG << "------------------------------------------------------------";
}
Esempio n. 2
0
void FrequencyFlagCountPlot::Report()
{
	if(_counts.size() > 0)
	{
		size_t index = _ignoreFirstChannel ? 1 : 0;
		size_t column = 0;
		std::stringstream rowStr;
		AOLogger::Info
			<< "Summary of RFI per channel: ("
			<< formatFrequency(_counts.begin()->first) << " Hz - "
			<< formatFrequency(_counts.rbegin()->first) << " Hz)\n";
		for(std::map<double, struct MapItem>::const_iterator i=_counts.begin();i!=_counts.end();++i)
		{
			if(column == 0)
			{
				AOLogger::Info << "Channel " << formatIndex(index) << "-";
			}
			std::string percString = formatPercentage(100.0L * (long double) i->second.count / (long double) i->second.total);
			for(unsigned j=percString.size();j<6;++j)
				rowStr << ' ';
			rowStr << percString << '%';
			++column;
			if(column >= 8)
			{
				AOLogger::Info << formatIndex(index) << ":" << rowStr.str() << '\n';
				rowStr.str(std::string());
				column = 0;
			}
			++index;
		}
		if(column != 0)
		{
			AOLogger::Info << formatIndex(index-1) << ":" << rowStr.str() << '\n';
		}
	}
}