shadow$provide.module$node_modules$pixi_DOT_js$lib$rendering$mask$MaskEffectManager = function(global, require, module, exports) { global = require("module$node_modules$pixi_DOT_js$lib$extensions$Extensions"); var PoolGroup = require("module$node_modules$pixi_DOT_js$lib$utils$pool$PoolGroup"); "use strict"; class MaskEffectManagerClass { constructor() { this._effectClasses = []; this._tests = []; this._initialized = !1; } init() { this._initialized || (this._initialized = !0, this._effectClasses.forEach(test => { this.add({test:test.test, maskClass:test}); })); } add(test) { this._tests.push(test); } getMaskEffect(item) { this._initialized || this.init(); for (let i = 0; i < this._tests.length; i++) { const test = this._tests[i]; if (test.test(item)) { return PoolGroup.BigPool.get(test.maskClass, item); } } return item; } returnMaskEffect(effect) { PoolGroup.BigPool.return(effect); } } require = new MaskEffectManagerClass(); global.extensions.handleByList(global.ExtensionType.MaskEffect, require._effectClasses); exports.MaskEffectManager = require; exports.MaskEffectManagerClass = MaskEffectManagerClass; }; //# sourceMappingURL=module$node_modules$pixi_DOT_js$lib$rendering$mask$MaskEffectManager.js.map