Files
il/resources/public/js/cljs-runtime/module$node_modules$pixi_DOT_js$lib$utils$pool$PoolGroup.js
2026-07-01 22:38:29 -06:00

41 lines
1.4 KiB
JavaScript

shadow$provide.module$node_modules$pixi_DOT_js$lib$utils$pool$PoolGroup = function(global, require, module, exports) {
global = require("module$node_modules$pixi_DOT_js$lib$utils$pool$GlobalResourceRegistry");
var Pool = require("module$node_modules$pixi_DOT_js$lib$utils$pool$Pool");
"use strict";
class PoolGroupClass {
constructor() {
this._poolsByClass = new Map();
}
prepopulate(Class, total) {
this.getPool(Class).prepopulate(total);
}
get(Class, data) {
return this.getPool(Class).get(data);
}
return(item) {
this.getPool(item.constructor).return(item);
}
getPool(ClassType) {
this._poolsByClass.has(ClassType) || this._poolsByClass.set(ClassType, new Pool.Pool(ClassType));
return this._poolsByClass.get(ClassType);
}
stats() {
const stats = {};
this._poolsByClass.forEach(pool => {
stats[stats[pool._classType.name] ? pool._classType.name + pool._classType.ID : pool._classType.name] = {free:pool.totalFree, used:pool.totalUsed, size:pool.totalSize};
});
return stats;
}
clear() {
this._poolsByClass.forEach(pool => pool.clear());
this._poolsByClass.clear();
}
}
require = new PoolGroupClass();
global.GlobalResourceRegistry.register(require);
exports.BigPool = require;
exports.PoolGroupClass = PoolGroupClass;
};
//# sourceMappingURL=module$node_modules$pixi_DOT_js$lib$utils$pool$PoolGroup.js.map