| 1148 | = -1; // Average sequence length of a nextBucketForHash sequence(If not empty) |
| 1149 | |
| 1150 | QString print() const |
| 1151 | { |
| 1152 | QString ret; |
| 1153 | ret += QStringLiteral("loaded buckets: %1 current bucket: %2 used memory: %3 loaded monster buckets: %4") |
| 1154 | .arg(loadedBuckets) |
| 1155 | .arg(currentBucket) |
| 1156 | .arg(usedMemory) |
| 1157 | .arg(loadedMonsterBuckets); |
| 1158 | ret += QStringLiteral("\nbucket hash clashed items: %1 total items: %2").arg(hashClashedItems).arg(totalItems); |
| 1159 | ret += QStringLiteral("\nused space for buckets: %1 free space in buckets: %2 lost space: %3") |
| 1160 | .arg(usedSpaceForBuckets) |
| 1161 | .arg(freeSpaceInBuckets) |
| 1162 | .arg(lostSpace); |
| 1163 | ret += QStringLiteral("\nfree unreachable space: %1 empty buckets: %2") |
| 1164 | .arg(freeUnreachableSpace) |
| 1165 | .arg(emptyBuckets); |
| 1166 | ret += QStringLiteral("\nhash size: %1 hash slots used: %2").arg(hashSize).arg(hashUse); |
| 1167 | ret += QStringLiteral("\naverage in-bucket hash size: %1 average in-bucket used hash slot count: %2 average " |
| 1168 | "in-bucket slot chain length: %3 longest in-bucket follower chain: %4") |
| 1169 | .arg(averageInBucketHashSize) |
| 1170 | .arg(averageInBucketUsedSlotCount) |
| 1171 | .arg(averageInBucketSlotChainLength) |
| 1172 | .arg(longestInBucketChain); |
| 1173 | ret += QStringLiteral("\ntotal count of used next-bucket-for-hash slots: %1 average next-bucket-for-hash " |
| 1174 | "sequence length: %2 longest next-bucket chain: %3") |
| 1175 | .arg(totalBucketFollowerSlots) |
| 1176 | .arg(averageNextBucketForHashSequenceLength) |
| 1177 | .arg(longestNextBucketChain); |
| 1178 | return ret; |
| 1179 | } |
| 1180 | operator QString() const { return print(); } |
| 1181 | }; |
| 1182 | |