12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758 |
- <?xml version="1.0" encoding="UTF-8"?>
- <diagram author="Yentl Van Tendeloo" name="MvK Server">
- <description>
- Modelverse Kernel client.
- </description>
- <top>
- import sccd.runtime.accurate_time as accurate_time
- import time
- import os
- import sys
- import uuid
- import urllib
- import json
- import sys
- COMPILE_LOCAL = True
- if COMPILE_LOCAL:
- sys.path.append("interface/HUTN")
- from hutn_compiler.compiler import main as do_compile
- def clean_code(code):
- if code == "":
- return code
- code_fragments = code.split("\n")
- code_fragments = [i.rstrip() for i in code_fragments if i.strip() != ""]
- code_fragments = [i.replace(" ", "\t") for i in code_fragments]
- initial_tabs = min([len(i) - len(i.lstrip("\t")) for i in code_fragments])
- code_fragments = [i[initial_tabs:] for i in code_fragments]
- code_fragments.append("")
- code = "\n".join(code_fragments)
- return code.encode('ascii', 'replace')
- def compile_model(model):
- temp_file = ".model_%s" % str(uuid.uuid4())
- with open(temp_file, 'w') as f:
- f.write(model)
- compiled = do_compile(temp_file, "interface/HUTN/grammars/modelling.g", "M")
- return ["__LOCAL__"] + compiled
- def compile_code(code):
- temp_file = ".code_%s" % str(uuid.uuid4())
- with open(temp_file, 'w') as f:
- f.write(code)
- compiled = do_compile(temp_file, "interface/HUTN/grammars/actionlanguage.g", "CS")
- return ["__LOCAL__"] + compiled
- </top>
- <inport name="socket_in"/>
- <outport name="socket_out"/>
- <inport name="action_in"/>
- <outport name="action_out"/>
- <outport name="ready"/>
- <class src="classes/modelverse.xml" default="true"/>
- <class src="classes/http_client.xml"/>
- </diagram>
|