UNPKG

@woosh/meep-engine

Version:

Pure JavaScript game engine. Fully featured and production ready.

51 lines (44 loc) 1.26 kB
import { OnDemandWorkerManager } from "../../process/worker/OnDemandWorkerManager.js"; import WorkerBuilder from "../../process/worker/WorkerBuilder.js"; export class Metis { constructor() { const wb = new WorkerBuilder(); wb.importScript('libs/metis/metis.js'); wb.addMethod('partition', 'function(){return micron_partition.apply(null, arguments)}'); const manager = new OnDemandWorkerManager(wb.build()); this.service = manager; } /** * * @param {number} n_vertices * @param {number} n_parts * @param {Uint32Array} edge_addresses * @param {Uint32Array} adjacency * @param {Uint32Array} edge_weights * @param {metis_options} options * @returns {Promise<T>} */ partition( n_vertices, n_parts, edge_addresses, adjacency, edge_weights, options ) { return this.service.request('partition', [ n_vertices, n_parts, edge_addresses, adjacency, edge_weights, options ]); } } /** * Singleton instance * @readonly * @type {Metis} */ Metis.INSTANCE = new Metis();