mirror of
https://github.com/JGRennison/OpenTTD-patches.git
synced 2024-11-17 21:25:40 +00:00
(svn r20887) -Codechange: Make stat_Hash a method.
This commit is contained in:
parent
6c31c357d6
commit
6be18d6b37
@ -303,7 +303,7 @@ void Hash::Delete(bool free_values)
|
|||||||
}
|
}
|
||||||
|
|
||||||
#ifdef HASH_STATS
|
#ifdef HASH_STATS
|
||||||
static void stat_Hash(const Hash *h)
|
void Hash::PrintStatistics() const
|
||||||
{
|
{
|
||||||
uint used_buckets = 0;
|
uint used_buckets = 0;
|
||||||
uint max_collision = 0;
|
uint max_collision = 0;
|
||||||
@ -312,13 +312,13 @@ static void stat_Hash(const Hash *h)
|
|||||||
uint i;
|
uint i;
|
||||||
|
|
||||||
for (i = 0; i < lengthof(usage); i++) usage[i] = 0;
|
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;
|
uint collision = 0;
|
||||||
if (h->buckets_in_use[i]) {
|
if (this->buckets_in_use[i]) {
|
||||||
const HashNode *node;
|
const HashNode *node;
|
||||||
|
|
||||||
used_buckets++;
|
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 > max_collision) max_collision = collision;
|
||||||
}
|
}
|
||||||
if (collision >= lengthof(usage)) collision = lengthof(usage) - 1;
|
if (collision >= lengthof(usage)) collision = lengthof(usage) - 1;
|
||||||
@ -333,7 +333,7 @@ static void stat_Hash(const Hash *h)
|
|||||||
"Nodes used: %d\n"
|
"Nodes used: %d\n"
|
||||||
"Non empty buckets: %d\n"
|
"Non empty buckets: %d\n"
|
||||||
"Max collision: %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("{ ");
|
printf("{ ");
|
||||||
for (i = 0; i <= max_collision; i++) {
|
for (i = 0; i <= max_collision; i++) {
|
||||||
|
@ -103,6 +103,11 @@ struct Hash {
|
|||||||
{
|
{
|
||||||
return this->size;
|
return this->size;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
protected:
|
||||||
|
#ifdef HASH_STATS
|
||||||
|
void PrintStatistics() const;
|
||||||
|
#endif
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif /* QUEUE_H */
|
#endif /* QUEUE_H */
|
||||||
|
Loading…
Reference in New Issue
Block a user