Changeset - r16177:6b0555337854
[Not reviewed]
master
0 2 0
alberth - 14 years ago 2010-10-02 19:47:21
alberth@openttd.org
(svn r20887) -Codechange: Make stat_Hash a method.
2 files changed with 10 insertions and 5 deletions:
0 comments (0 inline, 0 general)
src/pathfinder/npf/queue.cpp
Show inline comments
 
@@ -303,7 +303,7 @@ void Hash::Delete(bool free_values)
 
}
 

	
 
#ifdef HASH_STATS
 
static void stat_Hash(const Hash *h)
 
void Hash::PrintStatistics() const
 
{
 
	uint used_buckets = 0;
 
	uint max_collision = 0;
 
@@ -312,13 +312,13 @@ static void stat_Hash(const Hash *h)
 
	uint i;
 

	
 
	for (i = 0; i < lengthof(usage); i++) usage[i] = 0;
 
	for (i = 0; i < h->num_buckets; i++) {
 
	for (i = 0; i < this->num_buckets; i++) {
 
		uint collision = 0;
 
		if (h->buckets_in_use[i]) {
 
		if (this->buckets_in_use[i]) {
 
			const HashNode *node;
 

	
 
			used_buckets++;
 
			for (node = &h->buckets[i]; node != NULL; node = node->next) collision++;
 
			for (node = &this->buckets[i]; node != NULL; node = node->next) collision++;
 
			if (collision > max_collision) max_collision = collision;
 
		}
 
		if (collision >= lengthof(usage)) collision = lengthof(usage) - 1;
 
@@ -333,7 +333,7 @@ static void stat_Hash(const Hash *h)
 
		"Nodes used: %d\n"
 
		"Non empty buckets: %d\n"
 
		"Max collision: %d\n",
 
		h->num_buckets, h->size, used_buckets, max_collision
 
		this->num_buckets, this->size, used_buckets, max_collision
 
	);
 
	printf("{ ");
 
	for (i = 0; i <= max_collision; i++) {
src/pathfinder/npf/queue.h
Show inline comments
 
@@ -103,6 +103,11 @@ struct Hash {
 
	{
 
		return this->size;
 
	}
 

	
 
protected:
 
#ifdef HASH_STATS
 
	void PrintStatistics() const;
 
#endif
 
};
 

	
 
#endif /* QUEUE_H */
0 comments (0 inline, 0 general)