コード例 #1
0
void Application::generate_profiler_text() {
	vec2 position = vec2(100, 100);
	vec2 delta = vec2(0, -20);
	
	for (map<string, double>::const_iterator i = profile_entries.begin();
	     i != profile_entries.end(); ++i, position = position + delta) {
		const string &tag = i->first;
		const double &elapsed = i->second;
		
		string text = fitToFieldSize(tag + ":", ' ', 16, JUSTIFY_LEFT)
		              + dtos(elapsed)
		              + "ms";
		              
		queue_text_for_draw(position, text);
	}
	
	profile_entries.clear();
}
コード例 #2
0
static FileName getScreenShotFileName(const string &prefix) {
	int highestNumber = 0;
	
	const string ext = string(".jpg");
	
	vector<FileName> files = SearchFile(FileName("sshots/"), ext);
	
	for (vector<FileName>::const_iterator iter=files.begin();
	     iter!=files.end();
	     ++iter) {
		const string &fileName = iter->str();
		const string strNum = fileName.substr(prefix.length(),
		                                      fileName.length() - prefix.length() - ext.length());
		const int number = stoi(strNum);
		
		if (number>highestNumber) {
			highestNumber = number;
		}
	}
	
	string numberPart = fitToFieldSize(itos(++highestNumber), '0', 5, JUSTIFY_RIGHT);
	
	return FileName(string("sshots/") + prefix + numberPart + ext);
}