lpcmanager

merged

2021-07-13, Edouard Tisserant
39171ebf1781
merged
from svghmi.svghmi import SVGHMI, SVGHMILibrary
browser_commandline = 'qt_webenginewidgets_minimal --js-flags="--max_old_space_size=16 --gc_interval=100 --optimize_for_size" --single-process --no-sandbox "{url}"'
# set default values so that COG browser is managed by SVGHMI
SVGHMI.XSD = """<?xml version="1.0" encoding="utf-8" ?>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<xsd:element name="SVGHMI">
<xsd:complexType>
<xsd:attribute name="OnStart" type="xsd:string" use="optional" default='"""+browser_commandline+"""'/>
<xsd:attribute name="OnStop" type="xsd:string" use="optional" default="killall qt_webenginewidgets_minimal"/>
<xsd:attribute name="EnableWatchdog" type="xsd:boolean" use="optional" default="true"/>
<xsd:attribute name="OnWatchdog" type="xsd:string" use="optional" default="sh -c 'killall qt_webenginewidgets_minimal; sleep 1; """+\
browser_commandline.replace('"', '&quot;')+"""'"/>
<xsd:attribute name="WatchdogInitial" use="optional" default="30">
<xsd:simpleType>
<xsd:restriction base="xsd:integer">
<xsd:minInclusive value="2"/>
<xsd:maxInclusive value="600"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:attribute>
<xsd:attribute name="WatchdogInterval" use="optional" default="5">
<xsd:simpleType>
<xsd:restriction base="xsd:integer">
<xsd:minInclusive value="2"/>
<xsd:maxInclusive value="60"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:attribute>
<xsd:attribute name="Port" type="xsd:integer" use="optional" default="8008"/>
<xsd:attribute name="Interface" type="xsd:string" use="optional" default="localhost"/>
<xsd:attribute name="Path" type="xsd:string" use="optional" default="{name}"/>
<xsd:attribute name="MaxConnections" use="optional" default="4">
<xsd:simpleType>
<xsd:restriction base="xsd:integer">
<xsd:minInclusive value="1"/>
<xsd:maxInclusive value="16"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:attribute>
</xsd:complexType>
</xsd:element>
</xsd:schema>
"""