From 513fb80a0c402268528c449e7b183b07e4283e1b Mon Sep 17 00:00:00 2001 From: Oleg Sh Date: Wed, 8 Dec 2021 21:48:50 +0200 Subject: [PATCH] Add Emsctipted implementation for algorithm. --- script/Algorithms.js | 86 ++++++++++++++--------- script/Appilcation.js | 17 +++++ script/Graphoffline.Emscripten.js | 1 + script/Graphoffline.Emscripten.wasm | Bin 0 -> 420250 bytes script/main.js | 17 ++++- script/plugins/EulerianLoop.js | 2 +- script/plugins/EulerianPath.js | 2 +- script/plugins/FindAllPatches.js | 12 ++-- script/plugins/FindShortPatchsFromOne.js | 10 +-- script/plugins/Floid.js | 13 ---- script/plugins/HamiltonianLoop.js | 2 +- script/plugins/HamiltonianPath.js | 2 +- script/plugins/IsomorphismCheck.js | 9 ++- script/plugins/MaxFlow.js | 13 ++-- script/plugins/ShortestPath.js | 12 ++-- 15 files changed, 128 insertions(+), 70 deletions(-) create mode 100644 script/Graphoffline.Emscripten.js create mode 100644 script/Graphoffline.Emscripten.wasm diff --git a/script/Algorithms.js b/script/Algorithms.js index 38bda03..bfa6828 100644 --- a/script/Algorithms.js +++ b/script/Algorithms.js @@ -154,10 +154,10 @@ function BaseAlgorithmEx(graph, app) // inheritance. BaseAlgorithmEx.prototype = Object.create(BaseAlgorithm.prototype); -BaseAlgorithmEx.prototype.CalculateAlgorithm = function(queryString, resultCallback, ignoreSeparateNodes = false) +BaseAlgorithmEx.prototype.CalculateAlgorithm = function(algorithmName, otherParams, resultCallback, ignoreSeparateNodes = false) { if (location.hostname === "localhost" || location.hostname === "127.0.0.1") - console.log(queryString); + console.log(algorithmName + " " + otherParams); var graph = this.graph; var ignoreNodes = {}; @@ -175,14 +175,7 @@ BaseAlgorithmEx.prototype.CalculateAlgorithm = function(queryString, resultCallb var xml = creator.GetXMLString(); console.log(xml); - $.ajax({ - type: "POST", - url: "/" + SiteDir + "cgi-bin/GraphCGI.exe?" + queryString, - data: xml, - dataType: "text", - }) - .done(function( msg ) - { + var processResult = function (msg) { console.log(msg); $('#debug').text(msg); xmlDoc = $.parseXML( msg ); @@ -191,38 +184,38 @@ BaseAlgorithmEx.prototype.CalculateAlgorithm = function(queryString, resultCallb $results = $xml.find( "result" ); $results.each(function(){ - $values = $(this).find( "value" ); - - $values.each(function(){ - var type = $(this).attr('type'); - var value = $(this).text(); - var res = {}; - res.type = type; - res.value = value; - result.push(res); - }); - }); + $values = $(this).find( "value" ); + + $values.each(function(){ + var type = $(this).attr('type'); + var value = $(this).text(); + var res = {}; + res.type = type; + res.value = value; + result.push(res); + }); + }); $nodes = $xml.find( "node" ); - $nodes.each(function(){ - var id = $(this).attr('id'); - $data = $(this).find("data"); - $data.each(function(){ - if ("hightlightNode" == $(this).attr('key') && $(this).text() == "1") - { + $nodes.each(function(){ + var id = $(this).attr('id'); + $data = $(this).find("data"); + $data.each(function(){ + if ("hightlightNode" == $(this).attr('key') && $(this).text() == "1") + { pathObjects.push(graph.FindVertex(id)); - } - else - { + } + else + { if (!properties[id]) { properties[id] = {}; } properties[id][$(this).attr('key')] = $(this).text(); - } - }); - }); + } + }); + }); $edges = $xml.find( "edge" ); @@ -249,12 +242,35 @@ BaseAlgorithmEx.prototype.CalculateAlgorithm = function(queryString, resultCallb console.log(result); resultCallback(pathObjects, properties, result); - }); + }; + + if (this.app.isSupportEmscripten()) { + console.log("Use Emscripten"); + var delimiter = ""; + var processData = algorithmName + delimiter + xml + + delimiter + "report" + delimiter + "xml"; + otherParams.forEach ( (param) => processData += delimiter + param.name + delimiter + param.value); + var res = this.app.processEmscripten(processData); + processResult(res); + } else { + console.log("Use new CGI"); + var queryString = algorithmName + "=cgiInput&report=xml"; + otherParams.forEach ( (param) => queryString += "&" + param.name + "=" + param.value); + $.ajax({ + type: "POST", + url: "/" + SiteDir + "cgi-bin/GraphCGI.exe?" + queryString, + data: xml, + dataType: "text", + }) + .done(function( msg ) + { + processResult(msg); + }); + } return true; } - BaseAlgorithmEx.prototype.GetNodesPath = function(array, start, count) { var res = []; diff --git a/script/Appilcation.js b/script/Appilcation.js index c3cf8d5..182e5a7 100644 --- a/script/Appilcation.js +++ b/script/Appilcation.js @@ -53,6 +53,7 @@ function Application(document, window) this.defaultVertexSize = null; this.defaultEdgeWidth = null; + this.processEmscriptenFunction = null; }; // List of graph. @@ -1839,4 +1840,20 @@ Application.prototype.ResetEdgeWidth = function() { this.graph.edges[i].model.width = this.GetDefaultEdgeWidth(); } +} + +Application.prototype.setEmscripten = function(processFunction) +{ + this.processEmscriptenFunction = processFunction; + console.log("Emscripten set"); +} + +Application.prototype.isSupportEmscripten = function () +{ + return this.processEmscriptenFunction != null; +} + +Application.prototype.processEmscripten = function (inputData) +{ + return this.processEmscriptenFunction(inputData); } \ No newline at end of file diff --git a/script/Graphoffline.Emscripten.js b/script/Graphoffline.Emscripten.js new file mode 100644 index 0000000..dc6849c --- /dev/null +++ b/script/Graphoffline.Emscripten.js @@ -0,0 +1 @@ +var Module=typeof Module!=="undefined"?Module:{};var moduleOverrides={};var key;for(key in Module){if(Module.hasOwnProperty(key)){moduleOverrides[key]=Module[key]}}var arguments_=[];var thisProgram="./this.program";var quit_=function(status,toThrow){throw toThrow};var ENVIRONMENT_IS_WEB=typeof window==="object";var ENVIRONMENT_IS_WORKER=typeof importScripts==="function";var ENVIRONMENT_IS_NODE=typeof process==="object"&&typeof process.versions==="object"&&typeof process.versions.node==="string";var scriptDirectory="";function locateFile(path){if(Module["locateFile"]){return Module["locateFile"](path,scriptDirectory)}return scriptDirectory+path}var read_,readAsync,readBinary,setWindowTitle;function logExceptionOnExit(e){if(e instanceof ExitStatus)return;var toLog=e;err("exiting due to exception: "+toLog)}var nodeFS;var nodePath;if(ENVIRONMENT_IS_NODE){if(ENVIRONMENT_IS_WORKER){scriptDirectory=require("path").dirname(scriptDirectory)+"/"}else{scriptDirectory=__dirname+"/"}read_=function shell_read(filename,binary){if(!nodeFS)nodeFS=require("fs");if(!nodePath)nodePath=require("path");filename=nodePath["normalize"](filename);return nodeFS["readFileSync"](filename,binary?null:"utf8")};readBinary=function readBinary(filename){var ret=read_(filename,true);if(!ret.buffer){ret=new Uint8Array(ret)}assert(ret.buffer);return ret};readAsync=function readAsync(filename,onload,onerror){if(!nodeFS)nodeFS=require("fs");if(!nodePath)nodePath=require("path");filename=nodePath["normalize"](filename);nodeFS["readFile"](filename,function(err,data){if(err)onerror(err);else onload(data.buffer)})};if(process["argv"].length>1){thisProgram=process["argv"][1].replace(/\\/g,"/")}arguments_=process["argv"].slice(2);if(typeof module!=="undefined"){module["exports"]=Module}process["on"]("uncaughtException",function(ex){if(!(ex instanceof ExitStatus)){throw ex}});process["on"]("unhandledRejection",function(reason){throw reason});quit_=function(status,toThrow){if(keepRuntimeAlive()){process["exitCode"]=status;throw toThrow}logExceptionOnExit(toThrow);process["exit"](status)};Module["inspect"]=function(){return"[Emscripten Module object]"}}else if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){if(ENVIRONMENT_IS_WORKER){scriptDirectory=self.location.href}else if(typeof document!=="undefined"&&document.currentScript){scriptDirectory=document.currentScript.src}if(scriptDirectory.indexOf("blob:")!==0){scriptDirectory=scriptDirectory.substr(0,scriptDirectory.replace(/[?#].*/,"").lastIndexOf("/")+1)}else{scriptDirectory=""}{read_=function(url){var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.send(null);return xhr.responseText};if(ENVIRONMENT_IS_WORKER){readBinary=function(url){var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.responseType="arraybuffer";xhr.send(null);return new Uint8Array(xhr.response)}}readAsync=function(url,onload,onerror){var xhr=new XMLHttpRequest;xhr.open("GET",url,true);xhr.responseType="arraybuffer";xhr.onload=function(){if(xhr.status==200||xhr.status==0&&xhr.response){onload(xhr.response);return}onerror()};xhr.onerror=onerror;xhr.send(null)}}setWindowTitle=function(title){document.title=title}}else{}var out=Module["print"]||console.log.bind(console);var err=Module["printErr"]||console.warn.bind(console);for(key in moduleOverrides){if(moduleOverrides.hasOwnProperty(key)){Module[key]=moduleOverrides[key]}}moduleOverrides=null;if(Module["arguments"])arguments_=Module["arguments"];if(Module["thisProgram"])thisProgram=Module["thisProgram"];if(Module["quit"])quit_=Module["quit"];var wasmBinary;if(Module["wasmBinary"])wasmBinary=Module["wasmBinary"];var noExitRuntime=Module["noExitRuntime"]||true;if(typeof WebAssembly!=="object"){abort("no native wasm support detected")}var wasmMemory;var ABORT=false;var EXITSTATUS;function assert(condition,text){if(!condition){abort("Assertion failed: "+text)}}function getCFunc(ident){var func=Module["_"+ident];assert(func,"Cannot call unknown function "+ident+", make sure it is exported");return func}function ccall(ident,returnType,argTypes,args,opts){var toC={"string":function(str){var ret=0;if(str!==null&&str!==undefined&&str!==0){var len=(str.length<<2)+1;ret=stackAlloc(len);stringToUTF8(str,ret,len)}return ret},"array":function(arr){var ret=stackAlloc(arr.length);writeArrayToMemory(arr,ret);return ret}};function convertReturnValue(ret){if(returnType==="string")return UTF8ToString(ret);if(returnType==="boolean")return Boolean(ret);return ret}var func=getCFunc(ident);var cArgs=[];var stack=0;if(args){for(var i=0;i=endIdx))++endPtr;if(endPtr-idx>16&&heap.subarray&&UTF8Decoder){return UTF8Decoder.decode(heap.subarray(idx,endPtr))}else{var str="";while(idx>10,56320|ch&1023)}}}return str}function UTF8ToString(ptr,maxBytesToRead){return ptr?UTF8ArrayToString(HEAPU8,ptr,maxBytesToRead):""}function stringToUTF8Array(str,heap,outIdx,maxBytesToWrite){if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i=55296&&u<=57343){var u1=str.charCodeAt(++i);u=65536+((u&1023)<<10)|u1&1023}if(u<=127){if(outIdx>=endIdx)break;heap[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;heap[outIdx++]=192|u>>6;heap[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;heap[outIdx++]=224|u>>12;heap[outIdx++]=128|u>>6&63;heap[outIdx++]=128|u&63}else{if(outIdx+3>=endIdx)break;heap[outIdx++]=240|u>>18;heap[outIdx++]=128|u>>12&63;heap[outIdx++]=128|u>>6&63;heap[outIdx++]=128|u&63}}heap[outIdx]=0;return outIdx-startIdx}function stringToUTF8(str,outPtr,maxBytesToWrite){return stringToUTF8Array(str,HEAPU8,outPtr,maxBytesToWrite)}function lengthBytesUTF8(str){var len=0;for(var i=0;i=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127)++len;else if(u<=2047)len+=2;else if(u<=65535)len+=3;else len+=4}return len}function writeArrayToMemory(array,buffer){HEAP8.set(array,buffer)}function writeAsciiToMemory(str,buffer,dontAddNull){for(var i=0;i>0]=str.charCodeAt(i)}if(!dontAddNull)HEAP8[buffer>>0]=0}var buffer,HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;function updateGlobalBufferAndViews(buf){buffer=buf;Module["HEAP8"]=HEAP8=new Int8Array(buf);Module["HEAP16"]=HEAP16=new Int16Array(buf);Module["HEAP32"]=HEAP32=new Int32Array(buf);Module["HEAPU8"]=HEAPU8=new Uint8Array(buf);Module["HEAPU16"]=HEAPU16=new Uint16Array(buf);Module["HEAPU32"]=HEAPU32=new Uint32Array(buf);Module["HEAPF32"]=HEAPF32=new Float32Array(buf);Module["HEAPF64"]=HEAPF64=new Float64Array(buf)}var INITIAL_MEMORY=Module["INITIAL_MEMORY"]||16777216;var wasmTable;var __ATPRERUN__=[];var __ATINIT__=[];var __ATPOSTRUN__=[];var runtimeInitialized=false;var runtimeKeepaliveCounter=0;function keepRuntimeAlive(){return noExitRuntime||runtimeKeepaliveCounter>0}function preRun(){if(Module["preRun"]){if(typeof Module["preRun"]=="function")Module["preRun"]=[Module["preRun"]];while(Module["preRun"].length){addOnPreRun(Module["preRun"].shift())}}callRuntimeCallbacks(__ATPRERUN__)}function initRuntime(){runtimeInitialized=true;if(!Module["noFSInit"]&&!FS.init.initialized)FS.init();FS.ignorePermissions=false;TTY.init();callRuntimeCallbacks(__ATINIT__)}function postRun(){if(Module["postRun"]){if(typeof Module["postRun"]=="function")Module["postRun"]=[Module["postRun"]];while(Module["postRun"].length){addOnPostRun(Module["postRun"].shift())}}callRuntimeCallbacks(__ATPOSTRUN__)}function addOnPreRun(cb){__ATPRERUN__.unshift(cb)}function addOnInit(cb){__ATINIT__.unshift(cb)}function addOnPostRun(cb){__ATPOSTRUN__.unshift(cb)}var runDependencies=0;var runDependencyWatcher=null;var dependenciesFulfilled=null;function getUniqueRunDependency(id){return id}function addRunDependency(id){runDependencies++;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}}function removeRunDependency(id){runDependencies--;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}if(runDependencies==0){if(runDependencyWatcher!==null){clearInterval(runDependencyWatcher);runDependencyWatcher=null}if(dependenciesFulfilled){var callback=dependenciesFulfilled;dependenciesFulfilled=null;callback()}}}Module["preloadedImages"]={};Module["preloadedAudios"]={};function abort(what){{if(Module["onAbort"]){Module["onAbort"](what)}}what="Aborted("+what+")";err(what);ABORT=true;EXITSTATUS=1;what+=". Build with -s ASSERTIONS=1 for more info.";var e=new WebAssembly.RuntimeError(what);throw e}var dataURIPrefix="data:application/octet-stream;base64,";function isDataURI(filename){return filename.startsWith(dataURIPrefix)}function isFileURI(filename){return filename.startsWith("file://")}var wasmBinaryFile;wasmBinaryFile="Graphoffline.Emscripten.wasm";if(!isDataURI(wasmBinaryFile)){wasmBinaryFile=locateFile(wasmBinaryFile)}function getBinary(file){try{if(file==wasmBinaryFile&&wasmBinary){return new Uint8Array(wasmBinary)}if(readBinary){return readBinary(file)}else{throw"both async and sync fetching of the wasm failed"}}catch(err){abort(err)}}function getBinaryPromise(){if(!wasmBinary&&(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER)){if(typeof fetch==="function"&&!isFileURI(wasmBinaryFile)){return fetch(wasmBinaryFile,{credentials:"same-origin"}).then(function(response){if(!response["ok"]){throw"failed to load wasm binary file at '"+wasmBinaryFile+"'"}return response["arrayBuffer"]()}).catch(function(){return getBinary(wasmBinaryFile)})}else{if(readAsync){return new Promise(function(resolve,reject){readAsync(wasmBinaryFile,function(response){resolve(new Uint8Array(response))},reject)})}}}return Promise.resolve().then(function(){return getBinary(wasmBinaryFile)})}function createWasm(){var info={"a":asmLibraryArg};function receiveInstance(instance,module){var exports=instance.exports;Module["asm"]=exports;wasmMemory=Module["asm"]["q"];updateGlobalBufferAndViews(wasmMemory.buffer);wasmTable=Module["asm"]["s"];addOnInit(Module["asm"]["r"]);removeRunDependency("wasm-instantiate")}addRunDependency("wasm-instantiate");function receiveInstantiationResult(result){receiveInstance(result["instance"])}function instantiateArrayBuffer(receiver){return getBinaryPromise().then(function(binary){return WebAssembly.instantiate(binary,info)}).then(function(instance){return instance}).then(receiver,function(reason){err("failed to asynchronously prepare wasm: "+reason);abort(reason)})}function instantiateAsync(){if(!wasmBinary&&typeof WebAssembly.instantiateStreaming==="function"&&!isDataURI(wasmBinaryFile)&&!isFileURI(wasmBinaryFile)&&typeof fetch==="function"){return fetch(wasmBinaryFile,{credentials:"same-origin"}).then(function(response){var result=WebAssembly.instantiateStreaming(response,info);return result.then(receiveInstantiationResult,function(reason){err("wasm streaming compile failed: "+reason);err("falling back to ArrayBuffer instantiation");return instantiateArrayBuffer(receiveInstantiationResult)})})}else{return instantiateArrayBuffer(receiveInstantiationResult)}}if(Module["instantiateWasm"]){try{var exports=Module["instantiateWasm"](info,receiveInstance);return exports}catch(e){err("Module.instantiateWasm callback failed with error: "+e);return false}}instantiateAsync();return{}}var tempDouble;var tempI64;function callRuntimeCallbacks(callbacks){while(callbacks.length>0){var callback=callbacks.shift();if(typeof callback=="function"){callback(Module);continue}var func=callback.func;if(typeof func==="number"){if(callback.arg===undefined){getWasmTableEntry(func)()}else{getWasmTableEntry(func)(callback.arg)}}else{func(callback.arg===undefined?null:callback.arg)}}}var wasmTableMirror=[];function getWasmTableEntry(funcPtr){var func=wasmTableMirror[funcPtr];if(!func){if(funcPtr>=wasmTableMirror.length)wasmTableMirror.length=funcPtr+1;wasmTableMirror[funcPtr]=func=wasmTable.get(funcPtr)}return func}function ___assert_fail(condition,filename,line,func){abort("Assertion failed: "+UTF8ToString(condition)+", at: "+[filename?UTF8ToString(filename):"unknown filename",line,func?UTF8ToString(func):"unknown function"])}function ___cxa_allocate_exception(size){return _malloc(size+16)+16}function ExceptionInfo(excPtr){this.excPtr=excPtr;this.ptr=excPtr-16;this.set_type=function(type){HEAP32[this.ptr+4>>2]=type};this.get_type=function(){return HEAP32[this.ptr+4>>2]};this.set_destructor=function(destructor){HEAP32[this.ptr+8>>2]=destructor};this.get_destructor=function(){return HEAP32[this.ptr+8>>2]};this.set_refcount=function(refcount){HEAP32[this.ptr>>2]=refcount};this.set_caught=function(caught){caught=caught?1:0;HEAP8[this.ptr+12>>0]=caught};this.get_caught=function(){return HEAP8[this.ptr+12>>0]!=0};this.set_rethrown=function(rethrown){rethrown=rethrown?1:0;HEAP8[this.ptr+13>>0]=rethrown};this.get_rethrown=function(){return HEAP8[this.ptr+13>>0]!=0};this.init=function(type,destructor){this.set_type(type);this.set_destructor(destructor);this.set_refcount(0);this.set_caught(false);this.set_rethrown(false)};this.add_ref=function(){var value=HEAP32[this.ptr>>2];HEAP32[this.ptr>>2]=value+1};this.release_ref=function(){var prev=HEAP32[this.ptr>>2];HEAP32[this.ptr>>2]=prev-1;return prev===1}}var exceptionLast=0;var uncaughtExceptionCount=0;function ___cxa_throw(ptr,type,destructor){var info=new ExceptionInfo(ptr);info.init(type,destructor);exceptionLast=ptr;uncaughtExceptionCount++;throw ptr}function setErrNo(value){HEAP32[___errno_location()>>2]=value;return value}var PATH={splitPath:function(filename){var splitPathRe=/^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/;return splitPathRe.exec(filename).slice(1)},normalizeArray:function(parts,allowAboveRoot){var up=0;for(var i=parts.length-1;i>=0;i--){var last=parts[i];if(last==="."){parts.splice(i,1)}else if(last===".."){parts.splice(i,1);up++}else if(up){parts.splice(i,1);up--}}if(allowAboveRoot){for(;up;up--){parts.unshift("..")}}return parts},normalize:function(path){var isAbsolute=path.charAt(0)==="/",trailingSlash=path.substr(-1)==="/";path=PATH.normalizeArray(path.split("/").filter(function(p){return!!p}),!isAbsolute).join("/");if(!path&&!isAbsolute){path="."}if(path&&trailingSlash){path+="/"}return(isAbsolute?"/":"")+path},dirname:function(path){var result=PATH.splitPath(path),root=result[0],dir=result[1];if(!root&&!dir){return"."}if(dir){dir=dir.substr(0,dir.length-1)}return root+dir},basename:function(path){if(path==="/")return"/";path=PATH.normalize(path);path=path.replace(/\/$/,"");var lastSlash=path.lastIndexOf("/");if(lastSlash===-1)return path;return path.substr(lastSlash+1)},extname:function(path){return PATH.splitPath(path)[3]},join:function(){var paths=Array.prototype.slice.call(arguments,0);return PATH.normalize(paths.join("/"))},join2:function(l,r){return PATH.normalize(l+"/"+r)}};function getRandomDevice(){if(typeof crypto==="object"&&typeof crypto["getRandomValues"]==="function"){var randomBuffer=new Uint8Array(1);return function(){crypto.getRandomValues(randomBuffer);return randomBuffer[0]}}else if(ENVIRONMENT_IS_NODE){try{var crypto_module=require("crypto");return function(){return crypto_module["randomBytes"](1)[0]}}catch(e){}}return function(){abort("randomDevice")}}var PATH_FS={resolve:function(){var resolvedPath="",resolvedAbsolute=false;for(var i=arguments.length-1;i>=-1&&!resolvedAbsolute;i--){var path=i>=0?arguments[i]:FS.cwd();if(typeof path!=="string"){throw new TypeError("Arguments to path.resolve must be strings")}else if(!path){return""}resolvedPath=path+"/"+resolvedPath;resolvedAbsolute=path.charAt(0)==="/"}resolvedPath=PATH.normalizeArray(resolvedPath.split("/").filter(function(p){return!!p}),!resolvedAbsolute).join("/");return(resolvedAbsolute?"/":"")+resolvedPath||"."},relative:function(from,to){from=PATH_FS.resolve(from).substr(1);to=PATH_FS.resolve(to).substr(1);function trim(arr){var start=0;for(;start=0;end--){if(arr[end]!=="")break}if(start>end)return[];return arr.slice(start,end-start+1)}var fromParts=trim(from.split("/"));var toParts=trim(to.split("/"));var length=Math.min(fromParts.length,toParts.length);var samePartsLength=length;for(var i=0;i0){result=buf.slice(0,bytesRead).toString("utf-8")}else{result=null}}else if(typeof window!="undefined"&&typeof window.prompt=="function"){result=window.prompt("Input: ");if(result!==null){result+="\n"}}else if(typeof readline=="function"){result=readline();if(result!==null){result+="\n"}}if(!result){return null}tty.input=intArrayFromString(result,true)}return tty.input.shift()},put_char:function(tty,val){if(val===null||val===10){out(UTF8ArrayToString(tty.output,0));tty.output=[]}else{if(val!=0)tty.output.push(val)}},flush:function(tty){if(tty.output&&tty.output.length>0){out(UTF8ArrayToString(tty.output,0));tty.output=[]}}},default_tty1_ops:{put_char:function(tty,val){if(val===null||val===10){err(UTF8ArrayToString(tty.output,0));tty.output=[]}else{if(val!=0)tty.output.push(val)}},flush:function(tty){if(tty.output&&tty.output.length>0){err(UTF8ArrayToString(tty.output,0));tty.output=[]}}}};function mmapAlloc(size){abort()}var MEMFS={ops_table:null,mount:function(mount){return MEMFS.createNode(null,"/",16384|511,0)},createNode:function(parent,name,mode,dev){if(FS.isBlkdev(mode)||FS.isFIFO(mode)){throw new FS.ErrnoError(63)}if(!MEMFS.ops_table){MEMFS.ops_table={dir:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr,lookup:MEMFS.node_ops.lookup,mknod:MEMFS.node_ops.mknod,rename:MEMFS.node_ops.rename,unlink:MEMFS.node_ops.unlink,rmdir:MEMFS.node_ops.rmdir,readdir:MEMFS.node_ops.readdir,symlink:MEMFS.node_ops.symlink},stream:{llseek:MEMFS.stream_ops.llseek}},file:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr},stream:{llseek:MEMFS.stream_ops.llseek,read:MEMFS.stream_ops.read,write:MEMFS.stream_ops.write,allocate:MEMFS.stream_ops.allocate,mmap:MEMFS.stream_ops.mmap,msync:MEMFS.stream_ops.msync}},link:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr,readlink:MEMFS.node_ops.readlink},stream:{}},chrdev:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr},stream:FS.chrdev_stream_ops}}}var node=FS.createNode(parent,name,mode,dev);if(FS.isDir(node.mode)){node.node_ops=MEMFS.ops_table.dir.node;node.stream_ops=MEMFS.ops_table.dir.stream;node.contents={}}else if(FS.isFile(node.mode)){node.node_ops=MEMFS.ops_table.file.node;node.stream_ops=MEMFS.ops_table.file.stream;node.usedBytes=0;node.contents=null}else if(FS.isLink(node.mode)){node.node_ops=MEMFS.ops_table.link.node;node.stream_ops=MEMFS.ops_table.link.stream}else if(FS.isChrdev(node.mode)){node.node_ops=MEMFS.ops_table.chrdev.node;node.stream_ops=MEMFS.ops_table.chrdev.stream}node.timestamp=Date.now();if(parent){parent.contents[name]=node;parent.timestamp=node.timestamp}return node},getFileDataAsTypedArray:function(node){if(!node.contents)return new Uint8Array(0);if(node.contents.subarray)return node.contents.subarray(0,node.usedBytes);return new Uint8Array(node.contents)},expandFileStorage:function(node,newCapacity){var prevCapacity=node.contents?node.contents.length:0;if(prevCapacity>=newCapacity)return;var CAPACITY_DOUBLING_MAX=1024*1024;newCapacity=Math.max(newCapacity,prevCapacity*(prevCapacity>>0);if(prevCapacity!=0)newCapacity=Math.max(newCapacity,256);var oldContents=node.contents;node.contents=new Uint8Array(newCapacity);if(node.usedBytes>0)node.contents.set(oldContents.subarray(0,node.usedBytes),0)},resizeFileStorage:function(node,newSize){if(node.usedBytes==newSize)return;if(newSize==0){node.contents=null;node.usedBytes=0}else{var oldContents=node.contents;node.contents=new Uint8Array(newSize);if(oldContents){node.contents.set(oldContents.subarray(0,Math.min(newSize,node.usedBytes)))}node.usedBytes=newSize}},node_ops:{getattr:function(node){var attr={};attr.dev=FS.isChrdev(node.mode)?node.id:1;attr.ino=node.id;attr.mode=node.mode;attr.nlink=1;attr.uid=0;attr.gid=0;attr.rdev=node.rdev;if(FS.isDir(node.mode)){attr.size=4096}else if(FS.isFile(node.mode)){attr.size=node.usedBytes}else if(FS.isLink(node.mode)){attr.size=node.link.length}else{attr.size=0}attr.atime=new Date(node.timestamp);attr.mtime=new Date(node.timestamp);attr.ctime=new Date(node.timestamp);attr.blksize=4096;attr.blocks=Math.ceil(attr.size/attr.blksize);return attr},setattr:function(node,attr){if(attr.mode!==undefined){node.mode=attr.mode}if(attr.timestamp!==undefined){node.timestamp=attr.timestamp}if(attr.size!==undefined){MEMFS.resizeFileStorage(node,attr.size)}},lookup:function(parent,name){throw FS.genericErrors[44]},mknod:function(parent,name,mode,dev){return MEMFS.createNode(parent,name,mode,dev)},rename:function(old_node,new_dir,new_name){if(FS.isDir(old_node.mode)){var new_node;try{new_node=FS.lookupNode(new_dir,new_name)}catch(e){}if(new_node){for(var i in new_node.contents){throw new FS.ErrnoError(55)}}}delete old_node.parent.contents[old_node.name];old_node.parent.timestamp=Date.now();old_node.name=new_name;new_dir.contents[new_name]=old_node;new_dir.timestamp=old_node.parent.timestamp;old_node.parent=new_dir},unlink:function(parent,name){delete parent.contents[name];parent.timestamp=Date.now()},rmdir:function(parent,name){var node=FS.lookupNode(parent,name);for(var i in node.contents){throw new FS.ErrnoError(55)}delete parent.contents[name];parent.timestamp=Date.now()},readdir:function(node){var entries=[".",".."];for(var key in node.contents){if(!node.contents.hasOwnProperty(key)){continue}entries.push(key)}return entries},symlink:function(parent,newname,oldpath){var node=MEMFS.createNode(parent,newname,511|40960,0);node.link=oldpath;return node},readlink:function(node){if(!FS.isLink(node.mode)){throw new FS.ErrnoError(28)}return node.link}},stream_ops:{read:function(stream,buffer,offset,length,position){var contents=stream.node.contents;if(position>=stream.node.usedBytes)return 0;var size=Math.min(stream.node.usedBytes-position,length);if(size>8&&contents.subarray){buffer.set(contents.subarray(position,position+size),offset)}else{for(var i=0;i0||position+length8){throw new FS.ErrnoError(32)}var parts=PATH.normalizeArray(path.split("/").filter(function(p){return!!p}),false);var current=FS.root;var current_path="/";for(var i=0;i40){throw new FS.ErrnoError(32)}}}}return{path:current_path,node:current}},getPath:function(node){var path;while(true){if(FS.isRoot(node)){var mount=node.mount.mountpoint;if(!path)return mount;return mount[mount.length-1]!=="/"?mount+"/"+path:mount+path}path=path?node.name+"/"+path:node.name;node=node.parent}},hashName:function(parentid,name){var hash=0;for(var i=0;i>>0)%FS.nameTable.length},hashAddNode:function(node){var hash=FS.hashName(node.parent.id,node.name);node.name_next=FS.nameTable[hash];FS.nameTable[hash]=node},hashRemoveNode:function(node){var hash=FS.hashName(node.parent.id,node.name);if(FS.nameTable[hash]===node){FS.nameTable[hash]=node.name_next}else{var current=FS.nameTable[hash];while(current){if(current.name_next===node){current.name_next=node.name_next;break}current=current.name_next}}},lookupNode:function(parent,name){var errCode=FS.mayLookup(parent);if(errCode){throw new FS.ErrnoError(errCode,parent)}var hash=FS.hashName(parent.id,name);for(var node=FS.nameTable[hash];node;node=node.name_next){var nodeName=node.name;if(node.parent.id===parent.id&&nodeName===name){return node}}return FS.lookup(parent,name)},createNode:function(parent,name,mode,rdev){var node=new FS.FSNode(parent,name,mode,rdev);FS.hashAddNode(node);return node},destroyNode:function(node){FS.hashRemoveNode(node)},isRoot:function(node){return node===node.parent},isMountpoint:function(node){return!!node.mounted},isFile:function(mode){return(mode&61440)===32768},isDir:function(mode){return(mode&61440)===16384},isLink:function(mode){return(mode&61440)===40960},isChrdev:function(mode){return(mode&61440)===8192},isBlkdev:function(mode){return(mode&61440)===24576},isFIFO:function(mode){return(mode&61440)===4096},isSocket:function(mode){return(mode&49152)===49152},flagModes:{"r":0,"r+":2,"w":577,"w+":578,"a":1089,"a+":1090},modeStringToFlags:function(str){var flags=FS.flagModes[str];if(typeof flags==="undefined"){throw new Error("Unknown file open mode: "+str)}return flags},flagsToPermissionString:function(flag){var perms=["r","w","rw"][flag&3];if(flag&512){perms+="w"}return perms},nodePermissions:function(node,perms){if(FS.ignorePermissions){return 0}if(perms.includes("r")&&!(node.mode&292)){return 2}else if(perms.includes("w")&&!(node.mode&146)){return 2}else if(perms.includes("x")&&!(node.mode&73)){return 2}return 0},mayLookup:function(dir){var errCode=FS.nodePermissions(dir,"x");if(errCode)return errCode;if(!dir.node_ops.lookup)return 2;return 0},mayCreate:function(dir,name){try{var node=FS.lookupNode(dir,name);return 20}catch(e){}return FS.nodePermissions(dir,"wx")},mayDelete:function(dir,name,isdir){var node;try{node=FS.lookupNode(dir,name)}catch(e){return e.errno}var errCode=FS.nodePermissions(dir,"wx");if(errCode){return errCode}if(isdir){if(!FS.isDir(node.mode)){return 54}if(FS.isRoot(node)||FS.getPath(node)===FS.cwd()){return 10}}else{if(FS.isDir(node.mode)){return 31}}return 0},mayOpen:function(node,flags){if(!node){return 44}if(FS.isLink(node.mode)){return 32}else if(FS.isDir(node.mode)){if(FS.flagsToPermissionString(flags)!=="r"||flags&512){return 31}}return FS.nodePermissions(node,FS.flagsToPermissionString(flags))},MAX_OPEN_FDS:4096,nextfd:function(fd_start,fd_end){fd_start=fd_start||0;fd_end=fd_end||FS.MAX_OPEN_FDS;for(var fd=fd_start;fd<=fd_end;fd++){if(!FS.streams[fd]){return fd}}throw new FS.ErrnoError(33)},getStream:function(fd){return FS.streams[fd]},createStream:function(stream,fd_start,fd_end){if(!FS.FSStream){FS.FSStream=function(){};FS.FSStream.prototype={object:{get:function(){return this.node},set:function(val){this.node=val}},isRead:{get:function(){return(this.flags&2097155)!==1}},isWrite:{get:function(){return(this.flags&2097155)!==0}},isAppend:{get:function(){return this.flags&1024}}}}var newStream=new FS.FSStream;for(var p in stream){newStream[p]=stream[p]}stream=newStream;var fd=FS.nextfd(fd_start,fd_end);stream.fd=fd;FS.streams[fd]=stream;return stream},closeStream:function(fd){FS.streams[fd]=null},chrdev_stream_ops:{open:function(stream){var device=FS.getDevice(stream.node.rdev);stream.stream_ops=device.stream_ops;if(stream.stream_ops.open){stream.stream_ops.open(stream)}},llseek:function(){throw new FS.ErrnoError(70)}},major:function(dev){return dev>>8},minor:function(dev){return dev&255},makedev:function(ma,mi){return ma<<8|mi},registerDevice:function(dev,ops){FS.devices[dev]={stream_ops:ops}},getDevice:function(dev){return FS.devices[dev]},getMounts:function(mount){var mounts=[];var check=[mount];while(check.length){var m=check.pop();mounts.push(m);check.push.apply(check,m.mounts)}return mounts},syncfs:function(populate,callback){if(typeof populate==="function"){callback=populate;populate=false}FS.syncFSRequests++;if(FS.syncFSRequests>1){err("warning: "+FS.syncFSRequests+" FS.syncfs operations in flight at once, probably just doing extra work")}var mounts=FS.getMounts(FS.root.mount);var completed=0;function doCallback(errCode){FS.syncFSRequests--;return callback(errCode)}function done(errCode){if(errCode){if(!done.errored){done.errored=true;return doCallback(errCode)}return}if(++completed>=mounts.length){doCallback(null)}}mounts.forEach(function(mount){if(!mount.type.syncfs){return done(null)}mount.type.syncfs(mount,populate,done)})},mount:function(type,opts,mountpoint){var root=mountpoint==="/";var pseudo=!mountpoint;var node;if(root&&FS.root){throw new FS.ErrnoError(10)}else if(!root&&!pseudo){var lookup=FS.lookupPath(mountpoint,{follow_mount:false});mountpoint=lookup.path;node=lookup.node;if(FS.isMountpoint(node)){throw new FS.ErrnoError(10)}if(!FS.isDir(node.mode)){throw new FS.ErrnoError(54)}}var mount={type:type,opts:opts,mountpoint:mountpoint,mounts:[]};var mountRoot=type.mount(mount);mountRoot.mount=mount;mount.root=mountRoot;if(root){FS.root=mountRoot}else if(node){node.mounted=mount;if(node.mount){node.mount.mounts.push(mount)}}return mountRoot},unmount:function(mountpoint){var lookup=FS.lookupPath(mountpoint,{follow_mount:false});if(!FS.isMountpoint(lookup.node)){throw new FS.ErrnoError(28)}var node=lookup.node;var mount=node.mounted;var mounts=FS.getMounts(mount);Object.keys(FS.nameTable).forEach(function(hash){var current=FS.nameTable[hash];while(current){var next=current.name_next;if(mounts.includes(current.mount)){FS.destroyNode(current)}current=next}});node.mounted=null;var idx=node.mount.mounts.indexOf(mount);node.mount.mounts.splice(idx,1)},lookup:function(parent,name){return parent.node_ops.lookup(parent,name)},mknod:function(path,mode,dev){var lookup=FS.lookupPath(path,{parent:true});var parent=lookup.node;var name=PATH.basename(path);if(!name||name==="."||name===".."){throw new FS.ErrnoError(28)}var errCode=FS.mayCreate(parent,name);if(errCode){throw new FS.ErrnoError(errCode)}if(!parent.node_ops.mknod){throw new FS.ErrnoError(63)}return parent.node_ops.mknod(parent,name,mode,dev)},create:function(path,mode){mode=mode!==undefined?mode:438;mode&=4095;mode|=32768;return FS.mknod(path,mode,0)},mkdir:function(path,mode){mode=mode!==undefined?mode:511;mode&=511|512;mode|=16384;return FS.mknod(path,mode,0)},mkdirTree:function(path,mode){var dirs=path.split("/");var d="";for(var i=0;ithis.length-1||idx<0){return undefined}var chunkOffset=idx%this.chunkSize;var chunkNum=idx/this.chunkSize|0;return this.getter(chunkNum)[chunkOffset]};LazyUint8Array.prototype.setDataGetter=function LazyUint8Array_setDataGetter(getter){this.getter=getter};LazyUint8Array.prototype.cacheLength=function LazyUint8Array_cacheLength(){var xhr=new XMLHttpRequest;xhr.open("HEAD",url,false);xhr.send(null);if(!(xhr.status>=200&&xhr.status<300||xhr.status===304))throw new Error("Couldn't load "+url+". Status: "+xhr.status);var datalength=Number(xhr.getResponseHeader("Content-length"));var header;var hasByteServing=(header=xhr.getResponseHeader("Accept-Ranges"))&&header==="bytes";var usesGzip=(header=xhr.getResponseHeader("Content-Encoding"))&&header==="gzip";var chunkSize=1024*1024;if(!hasByteServing)chunkSize=datalength;var doXHR=function(from,to){if(from>to)throw new Error("invalid range ("+from+", "+to+") or no bytes requested!");if(to>datalength-1)throw new Error("only "+datalength+" bytes available! programmer error!");var xhr=new XMLHttpRequest;xhr.open("GET",url,false);if(datalength!==chunkSize)xhr.setRequestHeader("Range","bytes="+from+"-"+to);if(typeof Uint8Array!="undefined")xhr.responseType="arraybuffer";if(xhr.overrideMimeType){xhr.overrideMimeType("text/plain; charset=x-user-defined")}xhr.send(null);if(!(xhr.status>=200&&xhr.status<300||xhr.status===304))throw new Error("Couldn't load "+url+". Status: "+xhr.status);if(xhr.response!==undefined){return new Uint8Array(xhr.response||[])}else{return intArrayFromString(xhr.responseText||"",true)}};var lazyArray=this;lazyArray.setDataGetter(function(chunkNum){var start=chunkNum*chunkSize;var end=(chunkNum+1)*chunkSize-1;end=Math.min(end,datalength-1);if(typeof lazyArray.chunks[chunkNum]==="undefined"){lazyArray.chunks[chunkNum]=doXHR(start,end)}if(typeof lazyArray.chunks[chunkNum]==="undefined")throw new Error("doXHR failed!");return lazyArray.chunks[chunkNum]});if(usesGzip||!datalength){chunkSize=datalength=1;datalength=this.getter(0).length;chunkSize=datalength;out("LazyFiles on gzip forces download of the whole file when length is accessed")}this._length=datalength;this._chunkSize=chunkSize;this.lengthKnown=true};if(typeof XMLHttpRequest!=="undefined"){if(!ENVIRONMENT_IS_WORKER)throw"Cannot do synchronous binary XHRs outside webworkers in modern browsers. Use --embed-file or --preload-file in emcc";var lazyArray=new LazyUint8Array;Object.defineProperties(lazyArray,{length:{get:function(){if(!this.lengthKnown){this.cacheLength()}return this._length}},chunkSize:{get:function(){if(!this.lengthKnown){this.cacheLength()}return this._chunkSize}}});var properties={isDevice:false,contents:lazyArray}}else{var properties={isDevice:false,url:url}}var node=FS.createFile(parent,name,properties,canRead,canWrite);if(properties.contents){node.contents=properties.contents}else if(properties.url){node.contents=null;node.url=properties.url}Object.defineProperties(node,{usedBytes:{get:function(){return this.contents.length}}});var stream_ops={};var keys=Object.keys(node.stream_ops);keys.forEach(function(key){var fn=node.stream_ops[key];stream_ops[key]=function forceLoadLazyFile(){FS.forceLoadFile(node);return fn.apply(null,arguments)}});stream_ops.read=function stream_ops_read(stream,buffer,offset,length,position){FS.forceLoadFile(node);var contents=stream.node.contents;if(position>=contents.length)return 0;var size=Math.min(contents.length-position,length);if(contents.slice){for(var i=0;i>2]=stat.dev;HEAP32[buf+4>>2]=0;HEAP32[buf+8>>2]=stat.ino;HEAP32[buf+12>>2]=stat.mode;HEAP32[buf+16>>2]=stat.nlink;HEAP32[buf+20>>2]=stat.uid;HEAP32[buf+24>>2]=stat.gid;HEAP32[buf+28>>2]=stat.rdev;HEAP32[buf+32>>2]=0;tempI64=[stat.size>>>0,(tempDouble=stat.size,+Math.abs(tempDouble)>=1?tempDouble>0?(Math.min(+Math.floor(tempDouble/4294967296),4294967295)|0)>>>0:~~+Math.ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[buf+40>>2]=tempI64[0],HEAP32[buf+44>>2]=tempI64[1];HEAP32[buf+48>>2]=4096;HEAP32[buf+52>>2]=stat.blocks;HEAP32[buf+56>>2]=stat.atime.getTime()/1e3|0;HEAP32[buf+60>>2]=0;HEAP32[buf+64>>2]=stat.mtime.getTime()/1e3|0;HEAP32[buf+68>>2]=0;HEAP32[buf+72>>2]=stat.ctime.getTime()/1e3|0;HEAP32[buf+76>>2]=0;tempI64=[stat.ino>>>0,(tempDouble=stat.ino,+Math.abs(tempDouble)>=1?tempDouble>0?(Math.min(+Math.floor(tempDouble/4294967296),4294967295)|0)>>>0:~~+Math.ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[buf+80>>2]=tempI64[0],HEAP32[buf+84>>2]=tempI64[1];return 0},doMsync:function(addr,stream,len,flags,offset){var buffer=HEAPU8.slice(addr,addr+len);FS.msync(stream,buffer,offset,len,flags)},doMkdir:function(path,mode){path=PATH.normalize(path);if(path[path.length-1]==="/")path=path.substr(0,path.length-1);FS.mkdir(path,mode,0);return 0},doMknod:function(path,mode,dev){switch(mode&61440){case 32768:case 8192:case 24576:case 4096:case 49152:break;default:return-28}FS.mknod(path,mode,dev);return 0},doReadlink:function(path,buf,bufsize){if(bufsize<=0)return-28;var ret=FS.readlink(path);var len=Math.min(bufsize,lengthBytesUTF8(ret));var endChar=HEAP8[buf+len];stringToUTF8(ret,buf,bufsize+1);HEAP8[buf+len]=endChar;return len},doAccess:function(path,amode){if(amode&~7){return-28}var lookup=FS.lookupPath(path,{follow:true});var node=lookup.node;if(!node){return-44}var perms="";if(amode&4)perms+="r";if(amode&2)perms+="w";if(amode&1)perms+="x";if(perms&&FS.nodePermissions(node,perms)){return-2}return 0},doDup:function(path,flags,suggestFD){var suggest=FS.getStream(suggestFD);if(suggest)FS.close(suggest);return FS.open(path,flags,0,suggestFD,suggestFD).fd},doReadv:function(stream,iov,iovcnt,offset){var ret=0;for(var i=0;i>2];var len=HEAP32[iov+(i*8+4)>>2];var curr=FS.read(stream,HEAP8,ptr,len,offset);if(curr<0)return-1;ret+=curr;if(curr>2];var len=HEAP32[iov+(i*8+4)>>2];var curr=FS.write(stream,HEAP8,ptr,len,offset);if(curr<0)return-1;ret+=curr}return ret},varargs:undefined,get:function(){SYSCALLS.varargs+=4;var ret=HEAP32[SYSCALLS.varargs-4>>2];return ret},getStr:function(ptr){var ret=UTF8ToString(ptr);return ret},getStreamFromFD:function(fd){var stream=FS.getStream(fd);if(!stream)throw new FS.ErrnoError(8);return stream},get64:function(low,high){return low}};function ___syscall_fcntl64(fd,cmd,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(fd);switch(cmd){case 0:{var arg=SYSCALLS.get();if(arg<0){return-28}var newStream;newStream=FS.open(stream.path,stream.flags,0,arg);return newStream.fd}case 1:case 2:return 0;case 3:return stream.flags;case 4:{var arg=SYSCALLS.get();stream.flags|=arg;return 0}case 5:{var arg=SYSCALLS.get();var offset=0;HEAP16[arg+offset>>1]=2;return 0}case 6:case 7:return 0;case 16:case 8:return-28;case 9:setErrNo(28);return-1;default:{return-28}}}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))throw e;return-e.errno}}function ___syscall_ioctl(fd,op,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(fd);switch(op){case 21509:case 21505:{if(!stream.tty)return-59;return 0}case 21510:case 21511:case 21512:case 21506:case 21507:case 21508:{if(!stream.tty)return-59;return 0}case 21519:{if(!stream.tty)return-59;var argp=SYSCALLS.get();HEAP32[argp>>2]=0;return 0}case 21520:{if(!stream.tty)return-59;return-28}case 21531:{var argp=SYSCALLS.get();return FS.ioctl(stream,op,argp)}case 21523:{if(!stream.tty)return-59;return 0}case 21524:{if(!stream.tty)return-59;return 0}default:abort("bad ioctl syscall "+op)}}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))throw e;return-e.errno}}function ___syscall_open(path,flags,varargs){SYSCALLS.varargs=varargs;try{var pathname=SYSCALLS.getStr(path);var mode=varargs?SYSCALLS.get():0;var stream=FS.open(pathname,flags,mode);return stream.fd}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))throw e;return-e.errno}}function _abort(){abort("")}function _emscripten_memcpy_big(dest,src,num){HEAPU8.copyWithin(dest,src,src+num)}function abortOnCannotGrowMemory(requestedSize){abort("OOM")}function _emscripten_resize_heap(requestedSize){var oldSize=HEAPU8.length;requestedSize=requestedSize>>>0;abortOnCannotGrowMemory(requestedSize)}var ENV={};function getExecutableName(){return thisProgram||"./this.program"}function getEnvStrings(){if(!getEnvStrings.strings){var lang=(typeof navigator==="object"&&navigator.languages&&navigator.languages[0]||"C").replace("-","_")+".UTF-8";var env={"USER":"web_user","LOGNAME":"web_user","PATH":"/","PWD":"/","HOME":"/home/web_user","LANG":lang,"_":getExecutableName()};for(var x in ENV){if(ENV[x]===undefined)delete env[x];else env[x]=ENV[x]}var strings=[];for(var x in env){strings.push(x+"="+env[x])}getEnvStrings.strings=strings}return getEnvStrings.strings}function _environ_get(__environ,environ_buf){var bufSize=0;getEnvStrings().forEach(function(string,i){var ptr=environ_buf+bufSize;HEAP32[__environ+i*4>>2]=ptr;writeAsciiToMemory(string,ptr);bufSize+=string.length+1});return 0}function _environ_sizes_get(penviron_count,penviron_buf_size){var strings=getEnvStrings();HEAP32[penviron_count>>2]=strings.length;var bufSize=0;strings.forEach(function(string){bufSize+=string.length+1});HEAP32[penviron_buf_size>>2]=bufSize;return 0}function _fd_close(fd){try{var stream=SYSCALLS.getStreamFromFD(fd);FS.close(stream);return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))throw e;return e.errno}}function _fd_read(fd,iov,iovcnt,pnum){try{var stream=SYSCALLS.getStreamFromFD(fd);var num=SYSCALLS.doReadv(stream,iov,iovcnt);HEAP32[pnum>>2]=num;return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))throw e;return e.errno}}function _fd_seek(fd,offset_low,offset_high,whence,newOffset){try{var stream=SYSCALLS.getStreamFromFD(fd);var HIGH_OFFSET=4294967296;var offset=offset_high*HIGH_OFFSET+(offset_low>>>0);var DOUBLE_LIMIT=9007199254740992;if(offset<=-DOUBLE_LIMIT||offset>=DOUBLE_LIMIT){return-61}FS.llseek(stream,offset,whence);tempI64=[stream.position>>>0,(tempDouble=stream.position,+Math.abs(tempDouble)>=1?tempDouble>0?(Math.min(+Math.floor(tempDouble/4294967296),4294967295)|0)>>>0:~~+Math.ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[newOffset>>2]=tempI64[0],HEAP32[newOffset+4>>2]=tempI64[1];if(stream.getdents&&offset===0&&whence===0)stream.getdents=null;return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))throw e;return e.errno}}function _fd_write(fd,iov,iovcnt,pnum){try{var stream=SYSCALLS.getStreamFromFD(fd);var num=SYSCALLS.doWritev(stream,iov,iovcnt);HEAP32[pnum>>2]=num;return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))throw e;return e.errno}}function __isLeapYear(year){return year%4===0&&(year%100!==0||year%400===0)}function __arraySum(array,index){var sum=0;for(var i=0;i<=index;sum+=array[i++]){}return sum}var __MONTH_DAYS_LEAP=[31,29,31,30,31,30,31,31,30,31,30,31];var __MONTH_DAYS_REGULAR=[31,28,31,30,31,30,31,31,30,31,30,31];function __addDays(date,days){var newDate=new Date(date.getTime());while(days>0){var leap=__isLeapYear(newDate.getFullYear());var currentMonth=newDate.getMonth();var daysInCurrentMonth=(leap?__MONTH_DAYS_LEAP:__MONTH_DAYS_REGULAR)[currentMonth];if(days>daysInCurrentMonth-newDate.getDate()){days-=daysInCurrentMonth-newDate.getDate()+1;newDate.setDate(1);if(currentMonth<11){newDate.setMonth(currentMonth+1)}else{newDate.setMonth(0);newDate.setFullYear(newDate.getFullYear()+1)}}else{newDate.setDate(newDate.getDate()+days);return newDate}}return newDate}function _strftime(s,maxsize,format,tm){var tm_zone=HEAP32[tm+40>>2];var date={tm_sec:HEAP32[tm>>2],tm_min:HEAP32[tm+4>>2],tm_hour:HEAP32[tm+8>>2],tm_mday:HEAP32[tm+12>>2],tm_mon:HEAP32[tm+16>>2],tm_year:HEAP32[tm+20>>2],tm_wday:HEAP32[tm+24>>2],tm_yday:HEAP32[tm+28>>2],tm_isdst:HEAP32[tm+32>>2],tm_gmtoff:HEAP32[tm+36>>2],tm_zone:tm_zone?UTF8ToString(tm_zone):""};var pattern=UTF8ToString(format);var EXPANSION_RULES_1={"%c":"%a %b %d %H:%M:%S %Y","%D":"%m/%d/%y","%F":"%Y-%m-%d","%h":"%b","%r":"%I:%M:%S %p","%R":"%H:%M","%T":"%H:%M:%S","%x":"%m/%d/%y","%X":"%H:%M:%S","%Ec":"%c","%EC":"%C","%Ex":"%m/%d/%y","%EX":"%H:%M:%S","%Ey":"%y","%EY":"%Y","%Od":"%d","%Oe":"%e","%OH":"%H","%OI":"%I","%Om":"%m","%OM":"%M","%OS":"%S","%Ou":"%u","%OU":"%U","%OV":"%V","%Ow":"%w","%OW":"%W","%Oy":"%y"};for(var rule in EXPANSION_RULES_1){pattern=pattern.replace(new RegExp(rule,"g"),EXPANSION_RULES_1[rule])}var WEEKDAYS=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"];var MONTHS=["January","February","March","April","May","June","July","August","September","October","November","December"];function leadingSomething(value,digits,character){var str=typeof value==="number"?value.toString():value||"";while(str.length0?1:0}var compare;if((compare=sgn(date1.getFullYear()-date2.getFullYear()))===0){if((compare=sgn(date1.getMonth()-date2.getMonth()))===0){compare=sgn(date1.getDate()-date2.getDate())}}return compare}function getFirstWeekStartDate(janFourth){switch(janFourth.getDay()){case 0:return new Date(janFourth.getFullYear()-1,11,29);case 1:return janFourth;case 2:return new Date(janFourth.getFullYear(),0,3);case 3:return new Date(janFourth.getFullYear(),0,2);case 4:return new Date(janFourth.getFullYear(),0,1);case 5:return new Date(janFourth.getFullYear()-1,11,31);case 6:return new Date(janFourth.getFullYear()-1,11,30)}}function getWeekBasedYear(date){var thisDate=__addDays(new Date(date.tm_year+1900,0,1),date.tm_yday);var janFourthThisYear=new Date(thisDate.getFullYear(),0,4);var janFourthNextYear=new Date(thisDate.getFullYear()+1,0,4);var firstWeekStartThisYear=getFirstWeekStartDate(janFourthThisYear);var firstWeekStartNextYear=getFirstWeekStartDate(janFourthNextYear);if(compareByDay(firstWeekStartThisYear,thisDate)<=0){if(compareByDay(firstWeekStartNextYear,thisDate)<=0){return thisDate.getFullYear()+1}else{return thisDate.getFullYear()}}else{return thisDate.getFullYear()-1}}var EXPANSION_RULES_2={"%a":function(date){return WEEKDAYS[date.tm_wday].substring(0,3)},"%A":function(date){return WEEKDAYS[date.tm_wday]},"%b":function(date){return MONTHS[date.tm_mon].substring(0,3)},"%B":function(date){return MONTHS[date.tm_mon]},"%C":function(date){var year=date.tm_year+1900;return leadingNulls(year/100|0,2)},"%d":function(date){return leadingNulls(date.tm_mday,2)},"%e":function(date){return leadingSomething(date.tm_mday,2," ")},"%g":function(date){return getWeekBasedYear(date).toString().substring(2)},"%G":function(date){return getWeekBasedYear(date)},"%H":function(date){return leadingNulls(date.tm_hour,2)},"%I":function(date){var twelveHour=date.tm_hour;if(twelveHour==0)twelveHour=12;else if(twelveHour>12)twelveHour-=12;return leadingNulls(twelveHour,2)},"%j":function(date){return leadingNulls(date.tm_mday+__arraySum(__isLeapYear(date.tm_year+1900)?__MONTH_DAYS_LEAP:__MONTH_DAYS_REGULAR,date.tm_mon-1),3)},"%m":function(date){return leadingNulls(date.tm_mon+1,2)},"%M":function(date){return leadingNulls(date.tm_min,2)},"%n":function(){return"\n"},"%p":function(date){if(date.tm_hour>=0&&date.tm_hour<12){return"AM"}else{return"PM"}},"%S":function(date){return leadingNulls(date.tm_sec,2)},"%t":function(){return"\t"},"%u":function(date){return date.tm_wday||7},"%U":function(date){var janFirst=new Date(date.tm_year+1900,0,1);var firstSunday=janFirst.getDay()===0?janFirst:__addDays(janFirst,7-janFirst.getDay());var endDate=new Date(date.tm_year+1900,date.tm_mon,date.tm_mday);if(compareByDay(firstSunday,endDate)<0){var februaryFirstUntilEndMonth=__arraySum(__isLeapYear(endDate.getFullYear())?__MONTH_DAYS_LEAP:__MONTH_DAYS_REGULAR,endDate.getMonth()-1)-31;var firstSundayUntilEndJanuary=31-firstSunday.getDate();var days=firstSundayUntilEndJanuary+februaryFirstUntilEndMonth+endDate.getDate();return leadingNulls(Math.ceil(days/7),2)}return compareByDay(firstSunday,janFirst)===0?"01":"00"},"%V":function(date){var janFourthThisYear=new Date(date.tm_year+1900,0,4);var janFourthNextYear=new Date(date.tm_year+1901,0,4);var firstWeekStartThisYear=getFirstWeekStartDate(janFourthThisYear);var firstWeekStartNextYear=getFirstWeekStartDate(janFourthNextYear);var endDate=__addDays(new Date(date.tm_year+1900,0,1),date.tm_yday);if(compareByDay(endDate,firstWeekStartThisYear)<0){return"53"}if(compareByDay(firstWeekStartNextYear,endDate)<=0){return"01"}var daysDifference;if(firstWeekStartThisYear.getFullYear()=0;off=Math.abs(off)/60;off=off/60*100+off%60;return(ahead?"+":"-")+String("0000"+off).slice(-4)},"%Z":function(date){return date.tm_zone},"%%":function(){return"%"}};for(var rule in EXPANSION_RULES_2){if(pattern.includes(rule)){pattern=pattern.replace(new RegExp(rule,"g"),EXPANSION_RULES_2[rule](date))}}var bytes=intArrayFromString(pattern,false);if(bytes.length>maxsize){return 0}writeArrayToMemory(bytes,s);return bytes.length-1}function _strftime_l(s,maxsize,format,tm){return _strftime(s,maxsize,format,tm)}var FSNode=function(parent,name,mode,rdev){if(!parent){parent=this}this.parent=parent;this.mount=parent.mount;this.mounted=null;this.id=FS.nextInode++;this.name=name;this.mode=mode;this.node_ops={};this.stream_ops={};this.rdev=rdev};var readMode=292|73;var writeMode=146;Object.defineProperties(FSNode.prototype,{read:{get:function(){return(this.mode&readMode)===readMode},set:function(val){val?this.mode|=readMode:this.mode&=~readMode}},write:{get:function(){return(this.mode&writeMode)===writeMode},set:function(val){val?this.mode|=writeMode:this.mode&=~writeMode}},isFolder:{get:function(){return FS.isDir(this.mode)}},isDevice:{get:function(){return FS.isChrdev(this.mode)}}});FS.FSNode=FSNode;FS.staticInit();function intArrayFromString(stringy,dontAddNull,length){var len=length>0?length:lengthBytesUTF8(stringy)+1;var u8array=new Array(len);var numBytesWritten=stringToUTF8Array(stringy,u8array,0,u8array.length);if(dontAddNull)u8array.length=numBytesWritten;return u8array}var asmLibraryArg={"a":___assert_fail,"g":___cxa_allocate_exception,"e":___cxa_throw,"c":___syscall_fcntl64,"j":___syscall_ioctl,"k":___syscall_open,"f":_abort,"m":_emscripten_memcpy_big,"n":_emscripten_resize_heap,"p":_environ_get,"h":_environ_sizes_get,"d":_fd_close,"i":_fd_read,"l":_fd_seek,"b":_fd_write,"o":_strftime_l};var asm=createWasm();var ___wasm_call_ctors=Module["___wasm_call_ctors"]=function(){return(___wasm_call_ctors=Module["___wasm_call_ctors"]=Module["asm"]["r"]).apply(null,arguments)};var _malloc=Module["_malloc"]=function(){return(_malloc=Module["_malloc"]=Module["asm"]["t"]).apply(null,arguments)};var _ProcessAlgorithm=Module["_ProcessAlgorithm"]=function(){return(_ProcessAlgorithm=Module["_ProcessAlgorithm"]=Module["asm"]["u"]).apply(null,arguments)};var ___errno_location=Module["___errno_location"]=function(){return(___errno_location=Module["___errno_location"]=Module["asm"]["v"]).apply(null,arguments)};var stackSave=Module["stackSave"]=function(){return(stackSave=Module["stackSave"]=Module["asm"]["w"]).apply(null,arguments)};var stackRestore=Module["stackRestore"]=function(){return(stackRestore=Module["stackRestore"]=Module["asm"]["x"]).apply(null,arguments)};var stackAlloc=Module["stackAlloc"]=function(){return(stackAlloc=Module["stackAlloc"]=Module["asm"]["y"]).apply(null,arguments)};Module["ccall"]=ccall;Module["cwrap"]=cwrap;var calledRun;function ExitStatus(status){this.name="ExitStatus";this.message="Program terminated with exit("+status+")";this.status=status}dependenciesFulfilled=function runCaller(){if(!calledRun)run();if(!calledRun)dependenciesFulfilled=runCaller};function run(args){args=args||arguments_;if(runDependencies>0){return}preRun();if(runDependencies>0){return}function doRun(){if(calledRun)return;calledRun=true;Module["calledRun"]=true;if(ABORT)return;initRuntime();if(Module["onRuntimeInitialized"])Module["onRuntimeInitialized"]();postRun()}if(Module["setStatus"]){Module["setStatus"]("Running...");setTimeout(function(){setTimeout(function(){Module["setStatus"]("")},1);doRun()},1)}else{doRun()}}Module["run"]=run;if(Module["preInit"]){if(typeof Module["preInit"]=="function")Module["preInit"]=[Module["preInit"]];while(Module["preInit"].length>0){Module["preInit"].pop()()}}run(); diff --git a/script/Graphoffline.Emscripten.wasm b/script/Graphoffline.Emscripten.wasm new file mode 100644 index 0000000000000000000000000000000000000000..25af9441c2c739bdfedfaa7224438b3a77593e83 GIT binary patch literal 420250 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Μ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®UotBguK=TXg?*+Bie4g?)4?mQ%Bp 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 literal 0 HcmV?d00001 diff --git a/script/main.js b/script/main.js index 5cdca77..23342ae 100644 --- a/script/main.js +++ b/script/main.js @@ -1,5 +1,6 @@ -var SiteDir = ""; +var SiteDir = ""; +var DisableEmscripted = false; var application = new Application(document, window); @@ -686,6 +687,20 @@ $(document).ready(function () document.getElementById('canvas').addEventListener("touchend", touchHandler, true); document.getElementById('canvas').addEventListener("touchcancel", touchHandler, true); + // Try load emscripted implementation + var isMobile = navigator.userAgent.match(/(iPad)|(iPhone)|(iPod)|(android)|(webOS)/i); + if (!isMobile && !DisableEmscripted) { + const jsScript = document.createElement('script'); + jsScript.src = 'script/Graphoffline.Emscripten.js'; + document.body.appendChild(jsScript); + jsScript.addEventListener('load', () => { + Module['onRuntimeInitialized'] = onRuntimeInitialized; + var process = Module.cwrap('ProcessAlgorithm', 'string', ['string']); + function onRuntimeInitialized() { + application.setEmscripten(process); + } + }); + } /* $(document).ready(function(){ //set up some basic options for the feedback_me plugin diff --git a/script/plugins/EulerianLoop.js b/script/plugins/EulerianLoop.js index c277973..ef77e15 100755 --- a/script/plugins/EulerianLoop.js +++ b/script/plugins/EulerianLoop.js @@ -34,7 +34,7 @@ FindEulerianLoop.prototype.result = function(resultCallback) { this.outResultCallback = function (result ) { resultCallback(result); }; self = this; - this.CalculateAlgorithm("elloop=cgiInput&report=xml", function (pathObjects, properties, results) + this.CalculateAlgorithm("elloop", [], function (pathObjects, properties, results) { self.resultCallback(pathObjects, properties, results); }, true); diff --git a/script/plugins/EulerianPath.js b/script/plugins/EulerianPath.js index 3f46685..cfde08a 100755 --- a/script/plugins/EulerianPath.js +++ b/script/plugins/EulerianPath.js @@ -34,7 +34,7 @@ FindEulerianPath.prototype.result = function(resultCallback) { this.outResultCallback = function (result ) { resultCallback(result); }; self = this; - this.CalculateAlgorithm("elpath=cgiInput&report=xml", function (pathObjects, properties, results) + this.CalculateAlgorithm("elpath", [], function (pathObjects, properties, results) { self.resultCallback(pathObjects, properties, results); }, true); diff --git a/script/plugins/FindAllPatches.js b/script/plugins/FindAllPatches.js index 3c5731c..b56741d 100644 --- a/script/plugins/FindAllPatches.js +++ b/script/plugins/FindAllPatches.js @@ -46,10 +46,14 @@ FindAllPathes.prototype.result = function(resultCallback) { this.outResultCallback = function (result ) { resultCallback(result); }; self = this; - this.CalculateAlgorithm("prnpaths=cgiInput&start=" + this.firstObject.id + "&finish=" + this.secondObject.id + "&report=xml", function (pathObjects, properties, results) - { - self.resultCallback(pathObjects, properties, results); - }); + this.CalculateAlgorithm("prnpaths", [ + {name: "start", value: this.firstObject.id}, + {name: "finish", value: this.secondObject.id} + ], + function (pathObjects, properties, results) + { + self.resultCallback(pathObjects, properties, results); + }); } return null; } diff --git a/script/plugins/FindShortPatchsFromOne.js b/script/plugins/FindShortPatchsFromOne.js index 296129b..c7e73e6 100644 --- a/script/plugins/FindShortPatchsFromOne.js +++ b/script/plugins/FindShortPatchsFromOne.js @@ -46,10 +46,12 @@ FindShortPatchsFromOne.prototype.result = function(resultCallback) { this.outResultCallback = function (result ) { resultCallback(result); }; self = this; - this.CalculateAlgorithm("blf=cgiInput&start=" + this.firstObject.id + "&report=xml", function (pathObjects, properties, results) - { - self.resultCallback(pathObjects, properties, results); - }); + this.CalculateAlgorithm("blf", [ + {name: "start", value : this.firstObject.id} + ], function (pathObjects, properties, results) + { + self.resultCallback(pathObjects, properties, results); + }); } return null; } diff --git a/script/plugins/Floid.js b/script/plugins/Floid.js index 599c390..8c4d651 100755 --- a/script/plugins/Floid.js +++ b/script/plugins/Floid.js @@ -76,19 +76,6 @@ FloidAlgorithm.prototype.result = function(resultCallback) this.app.redrawGraph(); return result; - - /* - if (this.firstObject && this.secondObject) - { - this.outResultCallback = function (result ) { resultCallback(result); }; - self = this; - this.CalculateAlgorithm("dsp=cgiInput&start=" + this.firstObject.id + "&finish=" + this.secondObject.id + "&report=xml", function (pathObjects, properties, results) - { - self.resultCallback(pathObjects, properties, results); - }); - } - return null; - */ } diff --git a/script/plugins/HamiltonianLoop.js b/script/plugins/HamiltonianLoop.js index 61463e9..a697562 100755 --- a/script/plugins/HamiltonianLoop.js +++ b/script/plugins/HamiltonianLoop.js @@ -34,7 +34,7 @@ FindHamiltonianLoop.prototype.result = function(resultCallback) { this.outResultCallback = function (result ) { resultCallback(result); }; self = this; - this.CalculateAlgorithm("hamloop=cgiInput&report=xml", function (pathObjects, properties, results) + this.CalculateAlgorithm("hamloop", [], function (pathObjects, properties, results) { self.resultCallback(pathObjects, properties, results); }); diff --git a/script/plugins/HamiltonianPath.js b/script/plugins/HamiltonianPath.js index 9f014c4..d583354 100755 --- a/script/plugins/HamiltonianPath.js +++ b/script/plugins/HamiltonianPath.js @@ -34,7 +34,7 @@ FindHamiltonianPath.prototype.result = function(resultCallback) { this.outResultCallback = function (result ) { resultCallback(result); }; self = this; - this.CalculateAlgorithm("hampath=cgiInput&report=xml", function (pathObjects, properties, results) + this.CalculateAlgorithm("hampath", [], function (pathObjects, properties, results) { self.resultCallback(pathObjects, properties, results); }); diff --git a/script/plugins/IsomorphismCheck.js b/script/plugins/IsomorphismCheck.js index 8656331..781fdf0 100644 --- a/script/plugins/IsomorphismCheck.js +++ b/script/plugins/IsomorphismCheck.js @@ -53,7 +53,14 @@ IsomorphismCheck.prototype.result = function(resultCallback) { this.outResultCallback = function (result ) { resultCallback(result); }; self = this; - this.CalculateAlgorithm("isocheck=cgiInput&graph1=" + this.getGraphEdges(this.firstGraph) + "&graph2=" + this.getGraphEdges(this.secondGraph) + "&report=xml" + (this.searchSubGraphs ? "&searchSubgraphs=true": ""), function (pathObjects, properties, results) + var params = [ + {name : "graph1", value: this.getGraphEdges(this.firstGraph)}, + {name : "graph2", value: this.getGraphEdges(this.secondGraph)}, + ]; + if (this.searchSubGraphs) { + params.push({name: "searchSubgraphs", value: true}); + } + this.CalculateAlgorithm("isocheck", params, function (pathObjects, properties, results) { self.resultCallback(pathObjects, properties, results); }); diff --git a/script/plugins/MaxFlow.js b/script/plugins/MaxFlow.js index 0c05e85..500a3f9 100755 --- a/script/plugins/MaxFlow.js +++ b/script/plugins/MaxFlow.js @@ -47,10 +47,15 @@ FindMaxFlow.prototype.result = function(resultCallback) { this.outResultCallback = function (result ) { resultCallback(result); }; self = this; - this.CalculateAlgorithm("mfpr=cgiInput&source=" + this.firstObject.id + "&drain=" + this.secondObject.id + "&report=xml", function (pathObjects, properties, results) - { - self.resultCallback(pathObjects, properties, results); - }); + this.CalculateAlgorithm("mfpr", + [ + {name: "source", value: this.firstObject.id}, + {name: "drain", value: this.secondObject.id} + ], + function (pathObjects, properties, results) + { + self.resultCallback(pathObjects, properties, results); + }); } return null; } diff --git a/script/plugins/ShortestPath.js b/script/plugins/ShortestPath.js index ad00420..5337fb9 100755 --- a/script/plugins/ShortestPath.js +++ b/script/plugins/ShortestPath.js @@ -43,10 +43,14 @@ FindShortPathNew.prototype.result = function(resultCallback) { this.outResultCallback = function (result ) { resultCallback(result); }; self = this; - this.CalculateAlgorithm("dsp=cgiInput&start=" + this.firstObject.id + "&finish=" + this.secondObject.id + "&report=xml", function (pathObjects, properties, results) - { - self.resultCallback(pathObjects, properties, results); - }); + this.CalculateAlgorithm("dsp", + [ + {name: "start", value: this.firstObject.id}, + {name: "finish", value: this.secondObject.id} + ], function (pathObjects, properties, results) + { + self.resultCallback(pathObjects, properties, results); + }); } return null; }