expand on api structure
This commit is contained in:
parent
e74970e44f
commit
1b9993d576
133
api.rb
133
api.rb
|
@ -1,10 +1,89 @@
|
|||
require 'rubyserial'
|
||||
|
||||
#
|
||||
# User Configs
|
||||
#
|
||||
|
||||
# 9600 baud, 8 data bits, and no parity
|
||||
serial = Serial.new '/dev/ttyUSB0', 9600, 8, :none
|
||||
device = '/dev/ttyUSB0'
|
||||
baud = 9600
|
||||
bits = 8
|
||||
parity = :none
|
||||
@serial_line_ending = "\r"
|
||||
|
||||
#
|
||||
# Setup
|
||||
#
|
||||
|
||||
@serial = Serial.new device, baud, bits, parity
|
||||
@buffer = Queue.new
|
||||
|
||||
def console_in(serial)
|
||||
#
|
||||
# Convenience function
|
||||
#
|
||||
|
||||
def serial_writeln(str)
|
||||
@serial.write(str+@serial_line_ending)
|
||||
end
|
||||
|
||||
#
|
||||
# Board interface functions
|
||||
#
|
||||
|
||||
def b_date()
|
||||
serial_writeln("d")
|
||||
end
|
||||
def b_show(num)
|
||||
serial_writeln("s #{num}")
|
||||
end
|
||||
def b_modify(num, mask, tag)
|
||||
serial_writeln("m #{num} #{mask} #{tag}")
|
||||
end
|
||||
def b_all()
|
||||
serial_writeln("a")
|
||||
end
|
||||
def b_remove(num)
|
||||
serial_writeln("r #{num}")
|
||||
end
|
||||
def b_open(num)
|
||||
serial_writeln("o #{num}")
|
||||
end
|
||||
def b_unlock()
|
||||
serial_writeln("u")
|
||||
end
|
||||
def b_lock()
|
||||
serial_writeln("l")
|
||||
end
|
||||
def b_1()
|
||||
serial_writeln("1")
|
||||
end
|
||||
def b_2()
|
||||
serial_writeln("2")
|
||||
end
|
||||
def b_3()
|
||||
serial_writeln("3")
|
||||
end
|
||||
def b_9()
|
||||
serial_writeln("9")
|
||||
end
|
||||
def b_time(sec,min,hr,day,date,mon,yr)
|
||||
serial_writeln("t #{sec} #{min} #{hr} #{day} #{date} #{mon} #{yr}")
|
||||
end
|
||||
def b_enable(num)
|
||||
serial_writeln("e #{num}")
|
||||
end
|
||||
def b_hardware(num)
|
||||
serial_writeln("h #{num}")
|
||||
end
|
||||
def b_help()
|
||||
serial_writeln("?")
|
||||
end
|
||||
|
||||
#
|
||||
# Thread functions
|
||||
#
|
||||
|
||||
def console_in()
|
||||
run = true
|
||||
while run
|
||||
# Get console input
|
||||
|
@ -12,50 +91,50 @@ def console_in(serial)
|
|||
unless cline.nil?
|
||||
case cline
|
||||
when /^d/
|
||||
serial.write("d\r")
|
||||
b_date()
|
||||
when /^s (\d+)/
|
||||
serial.write("s #{$1}\r")
|
||||
when /^m (\d+) ([\dA-F]+) (\d+)/
|
||||
serial.write("m #{$1} #{$2} #{$3}\r")
|
||||
b_show($1)
|
||||
when /^m (\d+) (\d+) (\d+)/
|
||||
b_modify($1,$2,$3)
|
||||
when /^a/
|
||||
serial.write("a\r")
|
||||
b_all()
|
||||
when /^r (\d+)/
|
||||
serial.write("r #{$1}\r")
|
||||
b_remove($1)
|
||||
when /^o (\d+)/
|
||||
serial.write("o #{$1}\r")
|
||||
b_open($1)
|
||||
when /^u/
|
||||
serial.write("u\r")
|
||||
b_unlock()
|
||||
when /^l/
|
||||
serial.write("l\r")
|
||||
b_lock()
|
||||
when /^1/
|
||||
serial.write("1\r")
|
||||
b_1()
|
||||
when /^2/
|
||||
serial.write("2\r")
|
||||
b_2()
|
||||
when /^3/
|
||||
serial.write("3\r")
|
||||
b_3()
|
||||
when /^9/
|
||||
serial.write("9\r")
|
||||
b_9()
|
||||
when /^t (\d+) (\d+) (\d+) (\d+) (\d+) (\d+) (\d+)/
|
||||
serial.write("t #{$1} #{$2} #{$3} #{$4} #{$5} #{$6} #{$7}\r")
|
||||
b_time($1,$2,$3,$4,$5,$6,$7)
|
||||
when /^e (\d+)/
|
||||
serial.write("e #{$1}\r")
|
||||
b_enable($1)
|
||||
when /^h (\d+)/
|
||||
serial.write("h #{$1}\r")
|
||||
b_hardware($1)
|
||||
when /^?/
|
||||
serial.write("?\r")
|
||||
b_help()
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
def serial_in(serial)
|
||||
def serial_in()
|
||||
run = true
|
||||
readbuffer = ""
|
||||
|
||||
while run
|
||||
# begin
|
||||
# Get serial input char by char
|
||||
sdata = serial.read(1)
|
||||
sdata = @serial.read(1)
|
||||
# If we have data
|
||||
unless sdata == ""
|
||||
# Look for newlines
|
||||
|
@ -75,7 +154,7 @@ def serial_in(serial)
|
|||
end
|
||||
end
|
||||
|
||||
def parse_in
|
||||
def parse_in()
|
||||
run = true
|
||||
|
||||
while run
|
||||
|
@ -203,10 +282,14 @@ def parse_in
|
|||
end
|
||||
end
|
||||
|
||||
#
|
||||
# Runtime
|
||||
#
|
||||
|
||||
puts "> Started threads at #{Time.now}"
|
||||
t1 = Thread.new{console_in(serial)}
|
||||
t2 = Thread.new{serial_in(serial)}
|
||||
t3 = Thread.new{parse_in}
|
||||
t1 = Thread.new{console_in()}
|
||||
t2 = Thread.new{serial_in()}
|
||||
t3 = Thread.new{parse_in()}
|
||||
t1.join
|
||||
t2.join
|
||||
t3.join
|
||||
|
|
931
block diagram.svg
Normal file
931
block diagram.svg
Normal file
|
@ -0,0 +1,931 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||
|
||||
<svg
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
width="210mm"
|
||||
height="297mm"
|
||||
viewBox="0 0 210 297"
|
||||
version="1.1"
|
||||
id="svg8"
|
||||
inkscape:version="0.92.3 (2405546, 2018-03-11)"
|
||||
sodipodi:docname="block diagram.svg">
|
||||
<defs
|
||||
id="defs2">
|
||||
<marker
|
||||
inkscape:isstock="true"
|
||||
style="overflow:visible;"
|
||||
id="marker3152"
|
||||
refX="0.0"
|
||||
refY="0.0"
|
||||
orient="auto"
|
||||
inkscape:stockid="Arrow2Lend">
|
||||
<path
|
||||
transform="scale(1.1) rotate(180) translate(1,0)"
|
||||
d="M 8.7185878,4.0337352 L -2.2072895,0.016013256 L 8.7185884,-4.0017078 C 6.9730900,-1.6296469 6.9831476,1.6157441 8.7185878,4.0337352 z "
|
||||
style="fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round;stroke:#000000;stroke-opacity:1;fill:#000000;fill-opacity:1"
|
||||
id="path3150" />
|
||||
</marker>
|
||||
<marker
|
||||
inkscape:isstock="true"
|
||||
style="overflow:visible"
|
||||
id="marker2992"
|
||||
refX="0.0"
|
||||
refY="0.0"
|
||||
orient="auto"
|
||||
inkscape:stockid="Arrow2Lstart">
|
||||
<path
|
||||
transform="scale(1.1) translate(1,0)"
|
||||
d="M 8.7185878,4.0337352 L -2.2072895,0.016013256 L 8.7185884,-4.0017078 C 6.9730900,-1.6296469 6.9831476,1.6157441 8.7185878,4.0337352 z "
|
||||
style="fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round;stroke:#000000;stroke-opacity:1;fill:#000000;fill-opacity:1"
|
||||
id="path2990" />
|
||||
</marker>
|
||||
<marker
|
||||
inkscape:stockid="Arrow2Lstart"
|
||||
orient="auto"
|
||||
refY="0.0"
|
||||
refX="0.0"
|
||||
id="marker11919"
|
||||
style="overflow:visible"
|
||||
inkscape:isstock="true">
|
||||
<path
|
||||
id="path11917"
|
||||
style="fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round;stroke:#000000;stroke-opacity:1;fill:#000000;fill-opacity:1"
|
||||
d="M 8.7185878,4.0337352 L -2.2072895,0.016013256 L 8.7185884,-4.0017078 C 6.9730900,-1.6296469 6.9831476,1.6157441 8.7185878,4.0337352 z "
|
||||
transform="scale(1.1) translate(1,0)" />
|
||||
</marker>
|
||||
<marker
|
||||
inkscape:isstock="true"
|
||||
style="overflow:visible"
|
||||
id="marker11631"
|
||||
refX="0.0"
|
||||
refY="0.0"
|
||||
orient="auto"
|
||||
inkscape:stockid="Arrow2Lstart"
|
||||
inkscape:collect="always">
|
||||
<path
|
||||
transform="scale(1.1) translate(1,0)"
|
||||
d="M 8.7185878,4.0337352 L -2.2072895,0.016013256 L 8.7185884,-4.0017078 C 6.9730900,-1.6296469 6.9831476,1.6157441 8.7185878,4.0337352 z "
|
||||
style="fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round;stroke:#000000;stroke-opacity:1;fill:#000000;fill-opacity:1"
|
||||
id="path11629" />
|
||||
</marker>
|
||||
<marker
|
||||
inkscape:stockid="Arrow2Lstart"
|
||||
orient="auto"
|
||||
refY="0.0"
|
||||
refX="0.0"
|
||||
id="marker11283"
|
||||
style="overflow:visible"
|
||||
inkscape:isstock="true">
|
||||
<path
|
||||
id="path11281"
|
||||
style="fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round;stroke:#000000;stroke-opacity:1;fill:#000000;fill-opacity:1"
|
||||
d="M 8.7185878,4.0337352 L -2.2072895,0.016013256 L 8.7185884,-4.0017078 C 6.9730900,-1.6296469 6.9831476,1.6157441 8.7185878,4.0337352 z "
|
||||
transform="scale(1.1) translate(1,0)" />
|
||||
</marker>
|
||||
<marker
|
||||
inkscape:stockid="Arrow2Lstart"
|
||||
orient="auto"
|
||||
refY="0.0"
|
||||
refX="0.0"
|
||||
id="marker10815"
|
||||
style="overflow:visible"
|
||||
inkscape:isstock="true">
|
||||
<path
|
||||
id="path10813"
|
||||
style="fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round;stroke:#000000;stroke-opacity:1;fill:#000000;fill-opacity:1"
|
||||
d="M 8.7185878,4.0337352 L -2.2072895,0.016013256 L 8.7185884,-4.0017078 C 6.9730900,-1.6296469 6.9831476,1.6157441 8.7185878,4.0337352 z "
|
||||
transform="scale(1.1) translate(1,0)" />
|
||||
</marker>
|
||||
<marker
|
||||
inkscape:isstock="true"
|
||||
style="overflow:visible"
|
||||
id="marker10503"
|
||||
refX="0.0"
|
||||
refY="0.0"
|
||||
orient="auto"
|
||||
inkscape:stockid="Arrow2Lstart"
|
||||
inkscape:collect="always">
|
||||
<path
|
||||
transform="scale(1.1) translate(1,0)"
|
||||
d="M 8.7185878,4.0337352 L -2.2072895,0.016013256 L 8.7185884,-4.0017078 C 6.9730900,-1.6296469 6.9831476,1.6157441 8.7185878,4.0337352 z "
|
||||
style="fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round;stroke:#000000;stroke-opacity:1;fill:#000000;fill-opacity:1"
|
||||
id="path10501" />
|
||||
</marker>
|
||||
<marker
|
||||
inkscape:stockid="Arrow2Lstart"
|
||||
orient="auto"
|
||||
refY="0.0"
|
||||
refX="0.0"
|
||||
id="marker9879"
|
||||
style="overflow:visible"
|
||||
inkscape:isstock="true"
|
||||
inkscape:collect="always">
|
||||
<path
|
||||
id="path9877"
|
||||
style="fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round;stroke:#000000;stroke-opacity:1;fill:#000000;fill-opacity:1"
|
||||
d="M 8.7185878,4.0337352 L -2.2072895,0.016013256 L 8.7185884,-4.0017078 C 6.9730900,-1.6296469 6.9831476,1.6157441 8.7185878,4.0337352 z "
|
||||
transform="scale(1.1) translate(1,0)" />
|
||||
</marker>
|
||||
<marker
|
||||
inkscape:isstock="true"
|
||||
style="overflow:visible"
|
||||
id="marker9501"
|
||||
refX="0.0"
|
||||
refY="0.0"
|
||||
orient="auto"
|
||||
inkscape:stockid="Arrow2Lstart">
|
||||
<path
|
||||
transform="scale(1.1) translate(1,0)"
|
||||
d="M 8.7185878,4.0337352 L -2.2072895,0.016013256 L 8.7185884,-4.0017078 C 6.9730900,-1.6296469 6.9831476,1.6157441 8.7185878,4.0337352 z "
|
||||
style="fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round;stroke:#000000;stroke-opacity:1;fill:#000000;fill-opacity:1"
|
||||
id="path9499" />
|
||||
</marker>
|
||||
<marker
|
||||
inkscape:stockid="Arrow2Lstart"
|
||||
orient="auto"
|
||||
refY="0.0"
|
||||
refX="0.0"
|
||||
id="marker9165"
|
||||
style="overflow:visible"
|
||||
inkscape:isstock="true"
|
||||
inkscape:collect="always">
|
||||
<path
|
||||
id="path9163"
|
||||
style="fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round;stroke:#000000;stroke-opacity:1;fill:#000000;fill-opacity:1"
|
||||
d="M 8.7185878,4.0337352 L -2.2072895,0.016013256 L 8.7185884,-4.0017078 C 6.9730900,-1.6296469 6.9831476,1.6157441 8.7185878,4.0337352 z "
|
||||
transform="scale(1.1) translate(1,0)" />
|
||||
</marker>
|
||||
<marker
|
||||
inkscape:isstock="true"
|
||||
style="overflow:visible"
|
||||
id="marker8829"
|
||||
refX="0.0"
|
||||
refY="0.0"
|
||||
orient="auto"
|
||||
inkscape:stockid="Arrow2Lstart"
|
||||
inkscape:collect="always">
|
||||
<path
|
||||
transform="scale(1.1) translate(1,0)"
|
||||
d="M 8.7185878,4.0337352 L -2.2072895,0.016013256 L 8.7185884,-4.0017078 C 6.9730900,-1.6296469 6.9831476,1.6157441 8.7185878,4.0337352 z "
|
||||
style="fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round;stroke:#000000;stroke-opacity:1;fill:#000000;fill-opacity:1"
|
||||
id="path8827" />
|
||||
</marker>
|
||||
<marker
|
||||
inkscape:stockid="Arrow2Lstart"
|
||||
orient="auto"
|
||||
refY="0.0"
|
||||
refX="0.0"
|
||||
id="marker8463"
|
||||
style="overflow:visible"
|
||||
inkscape:isstock="true">
|
||||
<path
|
||||
id="path8461"
|
||||
style="fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round;stroke:#000000;stroke-opacity:1;fill:#000000;fill-opacity:1"
|
||||
d="M 8.7185878,4.0337352 L -2.2072895,0.016013256 L 8.7185884,-4.0017078 C 6.9730900,-1.6296469 6.9831476,1.6157441 8.7185878,4.0337352 z "
|
||||
transform="scale(1.1) translate(1,0)" />
|
||||
</marker>
|
||||
<marker
|
||||
inkscape:isstock="true"
|
||||
style="overflow:visible"
|
||||
id="marker8151"
|
||||
refX="0.0"
|
||||
refY="0.0"
|
||||
orient="auto"
|
||||
inkscape:stockid="Arrow2Lstart"
|
||||
inkscape:collect="always">
|
||||
<path
|
||||
transform="scale(1.1) translate(1,0)"
|
||||
d="M 8.7185878,4.0337352 L -2.2072895,0.016013256 L 8.7185884,-4.0017078 C 6.9730900,-1.6296469 6.9831476,1.6157441 8.7185878,4.0337352 z "
|
||||
style="fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round;stroke:#000000;stroke-opacity:1;fill:#000000;fill-opacity:1"
|
||||
id="path8149" />
|
||||
</marker>
|
||||
<marker
|
||||
inkscape:stockid="Arrow2Lstart"
|
||||
orient="auto"
|
||||
refY="0.0"
|
||||
refX="0.0"
|
||||
id="marker7737"
|
||||
style="overflow:visible"
|
||||
inkscape:isstock="true"
|
||||
inkscape:collect="always">
|
||||
<path
|
||||
id="path7735"
|
||||
style="fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round;stroke:#000000;stroke-opacity:1;fill:#000000;fill-opacity:1"
|
||||
d="M 8.7185878,4.0337352 L -2.2072895,0.016013256 L 8.7185884,-4.0017078 C 6.9730900,-1.6296469 6.9831476,1.6157441 8.7185878,4.0337352 z "
|
||||
transform="scale(1.1) translate(1,0)" />
|
||||
</marker>
|
||||
<marker
|
||||
inkscape:stockid="Arrow2Lend"
|
||||
orient="auto"
|
||||
refY="0.0"
|
||||
refX="0.0"
|
||||
id="marker7679"
|
||||
style="overflow:visible;"
|
||||
inkscape:isstock="true"
|
||||
inkscape:collect="always">
|
||||
<path
|
||||
id="path7677"
|
||||
style="fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round;stroke:#000000;stroke-opacity:1;fill:#000000;fill-opacity:1"
|
||||
d="M 8.7185878,4.0337352 L -2.2072895,0.016013256 L 8.7185884,-4.0017078 C 6.9730900,-1.6296469 6.9831476,1.6157441 8.7185878,4.0337352 z "
|
||||
transform="scale(1.1) rotate(180) translate(1,0)" />
|
||||
</marker>
|
||||
<marker
|
||||
inkscape:stockid="Arrow2Lstart"
|
||||
orient="auto"
|
||||
refY="0.0"
|
||||
refX="0.0"
|
||||
id="marker6727"
|
||||
style="overflow:visible"
|
||||
inkscape:isstock="true"
|
||||
inkscape:collect="always">
|
||||
<path
|
||||
id="path6725"
|
||||
style="fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round;stroke:#000000;stroke-opacity:1;fill:#000000;fill-opacity:1"
|
||||
d="M 8.7185878,4.0337352 L -2.2072895,0.016013256 L 8.7185884,-4.0017078 C 6.9730900,-1.6296469 6.9831476,1.6157441 8.7185878,4.0337352 z "
|
||||
transform="scale(1.1) translate(1,0)" />
|
||||
</marker>
|
||||
<marker
|
||||
inkscape:isstock="true"
|
||||
style="overflow:visible"
|
||||
id="marker6343"
|
||||
refX="0.0"
|
||||
refY="0.0"
|
||||
orient="auto"
|
||||
inkscape:stockid="Arrow2Lstart">
|
||||
<path
|
||||
transform="scale(1.1) translate(1,0)"
|
||||
d="M 8.7185878,4.0337352 L -2.2072895,0.016013256 L 8.7185884,-4.0017078 C 6.9730900,-1.6296469 6.9831476,1.6157441 8.7185878,4.0337352 z "
|
||||
style="fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round;stroke:#000000;stroke-opacity:1;fill:#000000;fill-opacity:1"
|
||||
id="path6341" />
|
||||
</marker>
|
||||
<marker
|
||||
inkscape:stockid="Arrow2Lstart"
|
||||
orient="auto"
|
||||
refY="0.0"
|
||||
refX="0.0"
|
||||
id="marker5953"
|
||||
style="overflow:visible"
|
||||
inkscape:isstock="true"
|
||||
inkscape:collect="always">
|
||||
<path
|
||||
id="path5951"
|
||||
style="fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round;stroke:#000000;stroke-opacity:1;fill:#000000;fill-opacity:1"
|
||||
d="M 8.7185878,4.0337352 L -2.2072895,0.016013256 L 8.7185884,-4.0017078 C 6.9730900,-1.6296469 6.9831476,1.6157441 8.7185878,4.0337352 z "
|
||||
transform="scale(1.1) translate(1,0)" />
|
||||
</marker>
|
||||
<marker
|
||||
inkscape:isstock="true"
|
||||
style="overflow:visible"
|
||||
id="marker5395"
|
||||
refX="0.0"
|
||||
refY="0.0"
|
||||
orient="auto"
|
||||
inkscape:stockid="Arrow2Lstart"
|
||||
inkscape:collect="always">
|
||||
<path
|
||||
transform="scale(1.1) translate(1,0)"
|
||||
d="M 8.7185878,4.0337352 L -2.2072895,0.016013256 L 8.7185884,-4.0017078 C 6.9730900,-1.6296469 6.9831476,1.6157441 8.7185878,4.0337352 z "
|
||||
style="fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round;stroke:#000000;stroke-opacity:1;fill:#000000;fill-opacity:1"
|
||||
id="path5393" />
|
||||
</marker>
|
||||
<marker
|
||||
inkscape:stockid="Arrow2Lstart"
|
||||
orient="auto"
|
||||
refY="0.0"
|
||||
refX="0.0"
|
||||
id="marker5089"
|
||||
style="overflow:visible"
|
||||
inkscape:isstock="true"
|
||||
inkscape:collect="always">
|
||||
<path
|
||||
id="path5087"
|
||||
style="fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round;stroke:#000000;stroke-opacity:1;fill:#000000;fill-opacity:1"
|
||||
d="M 8.7185878,4.0337352 L -2.2072895,0.016013256 L 8.7185884,-4.0017078 C 6.9730900,-1.6296469 6.9831476,1.6157441 8.7185878,4.0337352 z "
|
||||
transform="scale(1.1) translate(1,0)" />
|
||||
</marker>
|
||||
<marker
|
||||
inkscape:isstock="true"
|
||||
style="overflow:visible;"
|
||||
id="marker4455"
|
||||
refX="0.0"
|
||||
refY="0.0"
|
||||
orient="auto"
|
||||
inkscape:stockid="Arrow2Lend">
|
||||
<path
|
||||
transform="scale(1.1) rotate(180) translate(1,0)"
|
||||
d="M 8.7185878,4.0337352 L -2.2072895,0.016013256 L 8.7185884,-4.0017078 C 6.9730900,-1.6296469 6.9831476,1.6157441 8.7185878,4.0337352 z "
|
||||
style="fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round;stroke:#000000;stroke-opacity:1;fill:#000000;fill-opacity:1"
|
||||
id="path4453" />
|
||||
</marker>
|
||||
<marker
|
||||
inkscape:isstock="true"
|
||||
style="overflow:visible"
|
||||
id="marker3907"
|
||||
refX="0.0"
|
||||
refY="0.0"
|
||||
orient="auto"
|
||||
inkscape:stockid="Arrow2Lstart"
|
||||
inkscape:collect="always">
|
||||
<path
|
||||
transform="scale(1.1) translate(1,0)"
|
||||
d="M 8.7185878,4.0337352 L -2.2072895,0.016013256 L 8.7185884,-4.0017078 C 6.9730900,-1.6296469 6.9831476,1.6157441 8.7185878,4.0337352 z "
|
||||
style="fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round;stroke:#000000;stroke-opacity:1;fill:#000000;fill-opacity:1"
|
||||
id="path3905" />
|
||||
</marker>
|
||||
<marker
|
||||
inkscape:stockid="Arrow2Lend"
|
||||
orient="auto"
|
||||
refY="0.0"
|
||||
refX="0.0"
|
||||
id="Arrow2Lend"
|
||||
style="overflow:visible;"
|
||||
inkscape:isstock="true"
|
||||
inkscape:collect="always">
|
||||
<path
|
||||
id="path1166"
|
||||
style="fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round;stroke:#000000;stroke-opacity:1;fill:#000000;fill-opacity:1"
|
||||
d="M 8.7185878,4.0337352 L -2.2072895,0.016013256 L 8.7185884,-4.0017078 C 6.9730900,-1.6296469 6.9831476,1.6157441 8.7185878,4.0337352 z "
|
||||
transform="scale(1.1) rotate(180) translate(1,0)" />
|
||||
</marker>
|
||||
<marker
|
||||
inkscape:stockid="Arrow2Lstart"
|
||||
orient="auto"
|
||||
refY="0.0"
|
||||
refX="0.0"
|
||||
id="marker1485"
|
||||
style="overflow:visible"
|
||||
inkscape:isstock="true">
|
||||
<path
|
||||
id="path1483"
|
||||
style="fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round;stroke:#000000;stroke-opacity:1;fill:#000000;fill-opacity:1"
|
||||
d="M 8.7185878,4.0337352 L -2.2072895,0.016013256 L 8.7185884,-4.0017078 C 6.9730900,-1.6296469 6.9831476,1.6157441 8.7185878,4.0337352 z "
|
||||
transform="scale(1.1) translate(1,0)" />
|
||||
</marker>
|
||||
<marker
|
||||
inkscape:stockid="Arrow2Lstart"
|
||||
orient="auto"
|
||||
refY="0.0"
|
||||
refX="0.0"
|
||||
id="Arrow2Lstart"
|
||||
style="overflow:visible"
|
||||
inkscape:isstock="true"
|
||||
inkscape:collect="always">
|
||||
<path
|
||||
id="path1163"
|
||||
style="fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round;stroke:#000000;stroke-opacity:1;fill:#000000;fill-opacity:1"
|
||||
d="M 8.7185878,4.0337352 L -2.2072895,0.016013256 L 8.7185884,-4.0017078 C 6.9730900,-1.6296469 6.9831476,1.6157441 8.7185878,4.0337352 z "
|
||||
transform="scale(1.1) translate(1,0)" />
|
||||
</marker>
|
||||
<marker
|
||||
inkscape:stockid="Arrow1Lend"
|
||||
orient="auto"
|
||||
refY="0.0"
|
||||
refX="0.0"
|
||||
id="Arrow1Lend"
|
||||
style="overflow:visible;"
|
||||
inkscape:isstock="true">
|
||||
<path
|
||||
id="path1148"
|
||||
d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
|
||||
style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1;fill:#000000;fill-opacity:1"
|
||||
transform="scale(0.8) rotate(180) translate(12.5,0)" />
|
||||
</marker>
|
||||
<inkscape:perspective
|
||||
sodipodi:type="inkscape:persp3d"
|
||||
inkscape:vp_x="0 : 148.5 : 1"
|
||||
inkscape:vp_y="0 : 1000 : 0"
|
||||
inkscape:vp_z="210 : 148.5 : 1"
|
||||
inkscape:persp3d-origin="105 : 99 : 1"
|
||||
id="perspective831" />
|
||||
</defs>
|
||||
<sodipodi:namedview
|
||||
id="base"
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1.0"
|
||||
inkscape:pageopacity="0.0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:zoom="0.98994949"
|
||||
inkscape:cx="280.33536"
|
||||
inkscape:cy="523.26379"
|
||||
inkscape:document-units="mm"
|
||||
inkscape:current-layer="layer1"
|
||||
showgrid="false"
|
||||
inkscape:window-width="1920"
|
||||
inkscape:window-height="1052"
|
||||
inkscape:window-x="0"
|
||||
inkscape:window-y="0"
|
||||
inkscape:window-maximized="1" />
|
||||
<metadata
|
||||
id="metadata5">
|
||||
<rdf:RDF>
|
||||
<cc:Work
|
||||
rdf:about="">
|
||||
<dc:format>image/svg+xml</dc:format>
|
||||
<dc:type
|
||||
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
|
||||
<dc:title></dc:title>
|
||||
</cc:Work>
|
||||
</rdf:RDF>
|
||||
</metadata>
|
||||
<g
|
||||
inkscape:label="Layer 1"
|
||||
inkscape:groupmode="layer"
|
||||
id="layer1">
|
||||
<g
|
||||
id="g862"
|
||||
transform="translate(-61.012078,153.28468)">
|
||||
<rect
|
||||
y="57.045635"
|
||||
x="66.206352"
|
||||
height="18.017221"
|
||||
width="147.66766"
|
||||
id="rect847"
|
||||
style="fill:#a5f3f1;fill-opacity:1;stroke:#969696;stroke-width:0.47380474;stroke-linecap:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
|
||||
<flowRoot
|
||||
transform="matrix(0.26458333,0,0,0.26458333,62.366071,-2.7454135)"
|
||||
style="font-style:normal;font-weight:normal;font-size:16px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none"
|
||||
id="flowRoot849"
|
||||
xml:space="preserve"><flowRegion
|
||||
id="flowRegion851"><rect
|
||||
y="253.94826"
|
||||
x="261.42856"
|
||||
height="58.57143"
|
||||
width="142.85715"
|
||||
id="rect853" /></flowRegion><flowPara
|
||||
id="flowPara855">Serial IO</flowPara></flowRoot> </g>
|
||||
<g
|
||||
id="g886"
|
||||
transform="translate(-137.74124,-7.6591078)">
|
||||
<rect
|
||||
y="53.69976"
|
||||
x="141.88884"
|
||||
height="20.902479"
|
||||
width="149.38306"
|
||||
id="rect876"
|
||||
style="fill:#a5f3f1;fill-opacity:1;stroke:#969696;stroke-width:0.51328945;stroke-linecap:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
|
||||
<flowRoot
|
||||
transform="matrix(0.26458333,0,0,0.26458333,128.88987,-6.4367223)"
|
||||
style="font-style:normal;font-weight:normal;font-size:16px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none"
|
||||
id="flowRoot884"
|
||||
xml:space="preserve"><flowRegion
|
||||
id="flowRegion880"><rect
|
||||
y="253.94826"
|
||||
x="261.42856"
|
||||
height="58.57143"
|
||||
width="142.85715"
|
||||
id="rect878" /></flowRegion><flowPara
|
||||
style="text-align:center;text-anchor:middle"
|
||||
id="flowPara882">Cobot</flowPara></flowRoot> </g>
|
||||
<g
|
||||
id="g930"
|
||||
transform="translate(-27.372198,70.721444)">
|
||||
<rect
|
||||
y="56.377613"
|
||||
x="31.709459"
|
||||
height="26.539413"
|
||||
width="32.965008"
|
||||
id="rect888"
|
||||
style="fill:#a5f3f1;fill-opacity:1;stroke:#969696;stroke-width:0.27169713;stroke-linecap:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
|
||||
<flowRoot
|
||||
transform="matrix(0.26458333,0,0,0.26458333,-39.687502,-2.2678577)"
|
||||
style="font-style:normal;font-weight:normal;font-size:16px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none"
|
||||
id="flowRoot896"
|
||||
xml:space="preserve"><flowRegion
|
||||
id="flowRegion892"><rect
|
||||
y="253.94826"
|
||||
x="261.42856"
|
||||
height="58.57143"
|
||||
width="142.85715"
|
||||
id="rect890" /></flowRegion><flowPara
|
||||
style="text-align:center;text-anchor:middle"
|
||||
id="flowPara894">Download card list</flowPara></flowRoot> </g>
|
||||
<g
|
||||
transform="translate(49.356975,70.721444)"
|
||||
id="g942">
|
||||
<rect
|
||||
style="fill:#a5f3f1;fill-opacity:1;stroke:#969696;stroke-width:0.29146406;stroke-linecap:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
|
||||
id="rect932"
|
||||
width="38.236908"
|
||||
height="26.33066"
|
||||
x="31.719343"
|
||||
y="56.387497" />
|
||||
<flowRoot
|
||||
xml:space="preserve"
|
||||
id="flowRoot940"
|
||||
style="font-style:normal;font-weight:normal;font-size:16px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none"
|
||||
transform="matrix(0.26458333,0,0,0.26458333,-37.041669,-0.37797673)"><flowRegion
|
||||
id="flowRegion936"><rect
|
||||
id="rect934"
|
||||
width="142.85715"
|
||||
height="58.57143"
|
||||
x="261.42856"
|
||||
y="253.94826" /></flowRegion><flowPara
|
||||
id="flowPara938"
|
||||
style="text-align:center;text-anchor:middle">Upload accesses</flowPara></flowRoot> </g>
|
||||
<g
|
||||
transform="translate(12.439439,70.635294)"
|
||||
id="g954">
|
||||
<rect
|
||||
style="fill:#a5f3f1;fill-opacity:1;stroke:#969696;stroke-width:0.27998537;stroke-linecap:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
|
||||
id="rect944"
|
||||
width="35.243076"
|
||||
height="26.361568"
|
||||
x="28.6766"
|
||||
y="56.376453" />
|
||||
<flowRoot
|
||||
xml:space="preserve"
|
||||
id="flowRoot952"
|
||||
style="font-style:normal;font-weight:normal;font-size:16px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none"
|
||||
transform="matrix(0.26458333,0,0,0.26458333,-42.157778,-5.7826545)"><flowRegion
|
||||
id="flowRegion948"><rect
|
||||
id="rect946"
|
||||
width="142.85715"
|
||||
height="58.57143"
|
||||
x="261.42856"
|
||||
y="253.94826" /></flowRegion><flowPara
|
||||
id="flowPara950"
|
||||
style="text-align:center;text-anchor:middle">Download available time passes</flowPara></flowRoot> </g>
|
||||
<g
|
||||
transform="translate(44.065306,119.6448)"
|
||||
id="g966">
|
||||
<rect
|
||||
style="fill:#a5f3f1;fill-opacity:1;stroke:#969696;stroke-width:0.5197494;stroke-linecap:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
|
||||
id="rect956"
|
||||
width="149.38306"
|
||||
height="21.431921"
|
||||
x="-39.53973"
|
||||
y="-20.53504" />
|
||||
<flowRoot
|
||||
xml:space="preserve"
|
||||
id="flowRoot964"
|
||||
style="font-style:normal;font-weight:normal;font-size:16px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none"
|
||||
transform="matrix(0.26458333,0,0,0.26458333,-52.538702,-82.012966)"><flowRegion
|
||||
id="flowRegion960"><rect
|
||||
id="rect958"
|
||||
width="142.85715"
|
||||
height="58.57143"
|
||||
x="261.42856"
|
||||
y="253.94826" /></flowRegion><flowPara
|
||||
id="flowPara962"
|
||||
style="text-align:center;text-anchor:middle">Generic sync interface</flowPara></flowRoot> </g>
|
||||
<g
|
||||
id="g978"
|
||||
transform="translate(44.065306,92.278574)">
|
||||
<rect
|
||||
y="-20.191383"
|
||||
x="-39.53973"
|
||||
height="21.088264"
|
||||
width="149.38306"
|
||||
id="rect968"
|
||||
style="fill:#a5f3f1;fill-opacity:1;stroke:#969696;stroke-width:0.51556557;stroke-linecap:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
|
||||
<flowRoot
|
||||
transform="matrix(0.26458333,0,0,0.26458333,-52.538702,-79.60754)"
|
||||
style="font-style:normal;font-weight:normal;font-size:16px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none"
|
||||
id="flowRoot976"
|
||||
xml:space="preserve"><flowRegion
|
||||
id="flowRegion972"><rect
|
||||
y="253.94826"
|
||||
x="261.42856"
|
||||
height="58.57143"
|
||||
width="142.85715"
|
||||
id="rect970" /></flowRegion><flowPara
|
||||
style="text-align:center;text-anchor:middle"
|
||||
id="flowPara974">Cobot API Client</flowPara></flowRoot> </g>
|
||||
<g
|
||||
id="g1004"
|
||||
transform="translate(83.563818,70.343464)">
|
||||
<rect
|
||||
y="56.390766"
|
||||
x="40.659348"
|
||||
height="26.702101"
|
||||
width="29.293636"
|
||||
id="rect994"
|
||||
style="fill:#a5f3f1;fill-opacity:1;stroke:#969696;stroke-width:0.25690475;stroke-linecap:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
|
||||
<flowRoot
|
||||
transform="matrix(0.26458333,0,0,0.26458333,-32.88393,-2.2678577)"
|
||||
style="font-style:normal;font-weight:normal;font-size:16px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none"
|
||||
id="flowRoot1002"
|
||||
xml:space="preserve"><flowRegion
|
||||
id="flowRegion998"><rect
|
||||
y="253.94826"
|
||||
x="261.42856"
|
||||
height="58.57143"
|
||||
width="142.85715"
|
||||
id="rect996" /></flowRegion><flowPara
|
||||
style="text-align:center;text-anchor:middle"
|
||||
id="flowPara1000">Upload/save</flowPara><flowPara
|
||||
style="text-align:center;text-anchor:middle"
|
||||
id="flowPara1006">logs</flowPara></flowRoot> </g>
|
||||
<g
|
||||
id="g1037"
|
||||
transform="translate(100.1919,119.6448)">
|
||||
<rect
|
||||
y="-20.584595"
|
||||
x="59.317844"
|
||||
height="21.493011"
|
||||
width="44.489399"
|
||||
id="rect1027"
|
||||
style="fill:#a5f3f1;fill-opacity:1;stroke:#969696;stroke-width:0.28404668;stroke-linecap:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
|
||||
<flowRoot
|
||||
transform="matrix(0.26458333,0,0,0.26458333,-6.306637,-82.91205)"
|
||||
style="font-style:normal;font-weight:normal;font-size:16px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none"
|
||||
id="flowRoot1035"
|
||||
xml:space="preserve"><flowRegion
|
||||
id="flowRegion1031"><rect
|
||||
y="253.94826"
|
||||
x="261.42856"
|
||||
height="58.57143"
|
||||
width="142.85715"
|
||||
id="rect1029" /></flowRegion><flowPara
|
||||
style="text-align:center;text-anchor:middle"
|
||||
id="flowPara1033">Visitor + Staff GUI</flowPara></flowRoot> </g>
|
||||
<g
|
||||
id="g1049"
|
||||
transform="translate(12.439439,127.81975)">
|
||||
<rect
|
||||
y="56.357227"
|
||||
x="28.652889"
|
||||
height="19.596451"
|
||||
width="35.286011"
|
||||
id="rect1039"
|
||||
style="fill:#a5f3f1;fill-opacity:1;stroke:#969696;stroke-width:0.24154764;stroke-linecap:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
|
||||
<flowRoot
|
||||
transform="matrix(0.26458333,0,0,0.26458333,-41.890508,-9.1844402)"
|
||||
style="font-style:normal;font-weight:normal;font-size:16px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none"
|
||||
id="flowRoot1047"
|
||||
xml:space="preserve"><flowRegion
|
||||
id="flowRegion1043"><rect
|
||||
y="253.94826"
|
||||
x="261.42856"
|
||||
height="58.57143"
|
||||
width="142.85715"
|
||||
id="rect1041" /></flowRegion><flowPara
|
||||
style="text-align:center;text-anchor:middle"
|
||||
id="flowPara1045">Apply time passes to board accesses</flowPara></flowRoot> </g>
|
||||
<g
|
||||
id="g1061"
|
||||
transform="translate(134.59061,70.721444)">
|
||||
<rect
|
||||
y="56.386978"
|
||||
x="25.189375"
|
||||
height="26.14271"
|
||||
width="44.767395"
|
||||
id="rect1051"
|
||||
style="fill:#a5f3f1;fill-opacity:1;stroke:#969696;stroke-width:0.31424543;stroke-linecap:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
|
||||
<flowRoot
|
||||
transform="matrix(0.26458333,0,0,0.26458333,-39.309526,-3.0238101)"
|
||||
style="font-style:normal;font-weight:normal;font-size:16px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none"
|
||||
id="flowRoot1059"
|
||||
xml:space="preserve"><flowRegion
|
||||
id="flowRegion1055"><rect
|
||||
y="253.94826"
|
||||
x="261.42856"
|
||||
height="58.57143"
|
||||
width="142.85715"
|
||||
id="rect1053" /></flowRegion><flowPara
|
||||
style="text-align:center;text-anchor:middle"
|
||||
id="flowPara1057">Display access messages + logs</flowPara></flowRoot> </g>
|
||||
<g
|
||||
transform="translate(-27.372198,113.85102)"
|
||||
id="g1075">
|
||||
<rect
|
||||
style="fill:#a5f3f1;fill-opacity:1;stroke:#969696;stroke-width:0.23656587;stroke-linecap:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
|
||||
id="rect1065"
|
||||
width="32.930759"
|
||||
height="20.140806"
|
||||
x="31.726583"
|
||||
y="69.940643" />
|
||||
<flowRoot
|
||||
xml:space="preserve"
|
||||
id="flowRoot1073"
|
||||
style="font-style:normal;font-weight:normal;font-size:16px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none"
|
||||
transform="matrix(0.26458333,0,0,0.26458333,-39.687502,6.992559)"><flowRegion
|
||||
id="flowRegion1069"><rect
|
||||
id="rect1067"
|
||||
width="142.85715"
|
||||
height="58.57143"
|
||||
x="261.42856"
|
||||
y="253.94826" /></flowRegion><flowPara
|
||||
id="flowPara1071"
|
||||
style="text-align:center;text-anchor:middle">Apply card list</flowPara><flowPara
|
||||
style="text-align:center;text-anchor:middle"
|
||||
id="flowPara1077">to board</flowPara></flowRoot> </g>
|
||||
<g
|
||||
transform="translate(12.439439,102.02565)"
|
||||
id="g1101">
|
||||
<rect
|
||||
style="fill:#a5f3f1;fill-opacity:1;stroke:#969696;stroke-width:0.24154764;stroke-linecap:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
|
||||
id="rect1091"
|
||||
width="35.286011"
|
||||
height="19.596451"
|
||||
x="28.652889"
|
||||
y="56.357227" />
|
||||
<flowRoot
|
||||
xml:space="preserve"
|
||||
id="flowRoot1099"
|
||||
style="font-style:normal;font-weight:normal;font-size:16px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none"
|
||||
transform="matrix(0.26458333,0,0,0.26458333,-41.890508,-6.727595)"><flowRegion
|
||||
id="flowRegion1095"><rect
|
||||
id="rect1093"
|
||||
width="142.85715"
|
||||
height="58.57143"
|
||||
x="261.42856"
|
||||
y="253.94826" /></flowRegion><flowPara
|
||||
id="flowPara1097"
|
||||
style="text-align:center;text-anchor:middle">Cache time passes</flowPara></flowRoot> </g>
|
||||
<g
|
||||
id="g1115"
|
||||
transform="translate(-27.372198,88.245914)">
|
||||
<rect
|
||||
y="69.940643"
|
||||
x="31.726583"
|
||||
height="20.140806"
|
||||
width="32.930759"
|
||||
id="rect1103"
|
||||
style="fill:#a5f3f1;fill-opacity:1;stroke:#969696;stroke-width:0.23656587;stroke-linecap:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
|
||||
<flowRoot
|
||||
transform="matrix(0.26458333,0,0,0.26458333,-39.687502,9.8273804)"
|
||||
style="font-style:normal;font-weight:normal;font-size:16px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none"
|
||||
id="flowRoot1113"
|
||||
xml:space="preserve"><flowRegion
|
||||
id="flowRegion1107"><rect
|
||||
y="253.94826"
|
||||
x="261.42856"
|
||||
height="58.57143"
|
||||
width="142.85715"
|
||||
id="rect1105" /></flowRegion><flowPara
|
||||
id="flowPara1111"
|
||||
style="text-align:center;text-anchor:middle">Cache card list</flowPara></flowRoot> </g>
|
||||
<g
|
||||
id="g1129"
|
||||
transform="translate(53.07188,102.02565)">
|
||||
<rect
|
||||
y="56.460369"
|
||||
x="28.756031"
|
||||
height="19.390165"
|
||||
width="122.58121"
|
||||
id="rect1119"
|
||||
style="fill:#a5f3f1;fill-opacity:1;stroke:#969696;stroke-width:0.44783244;stroke-linecap:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
|
||||
<flowRoot
|
||||
transform="matrix(0.26458333,0,0,0.26458333,1.0097901,-6.727595)"
|
||||
style="font-style:normal;font-weight:normal;font-size:16px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none"
|
||||
id="flowRoot1127"
|
||||
xml:space="preserve"><flowRegion
|
||||
id="flowRegion1123"><rect
|
||||
y="253.94826"
|
||||
x="261.42856"
|
||||
height="58.57143"
|
||||
width="142.85715"
|
||||
id="rect1121" /></flowRegion><flowPara
|
||||
style="text-align:center;text-anchor:middle"
|
||||
id="flowPara1125">Cache accesses and logs</flowPara></flowRoot> </g>
|
||||
<g
|
||||
transform="translate(53.449856,127.81975)"
|
||||
id="g1141">
|
||||
<rect
|
||||
style="fill:#a5f3f1;fill-opacity:1;stroke:#969696;stroke-width:0.33972436;stroke-linecap:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
|
||||
id="rect1131"
|
||||
width="70.150635"
|
||||
height="19.498274"
|
||||
x="28.701977"
|
||||
y="56.406315" />
|
||||
<flowRoot
|
||||
xml:space="preserve"
|
||||
id="flowRoot1139"
|
||||
style="font-style:normal;font-weight:normal;font-size:16px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none"
|
||||
transform="matrix(0.26458333,0,0,0.26458333,-22.991698,-9.1844402)"><flowRegion
|
||||
id="flowRegion1135"><rect
|
||||
id="rect1133"
|
||||
width="142.85715"
|
||||
height="58.57143"
|
||||
x="261.42856"
|
||||
y="253.94826" /></flowRegion><flowPara
|
||||
id="flowPara1137"
|
||||
style="text-align:center;text-anchor:middle">Collect accesses and logs from board</flowPara></flowRoot> </g>
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:0.22949952px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-start:url(#Arrow2Lstart);marker-end:url(#Arrow2Lend)"
|
||||
d="M 79.503333,63.379505 V 75.042654"
|
||||
id="path1143"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path3903"
|
||||
d="m 99.548547,117.47275 v 12.86077"
|
||||
style="fill:none;stroke:#000000;stroke-width:0.24099459px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-start:url(#marker3907)" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:0.24099459px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-start:url(#marker5089)"
|
||||
d="m 138.83717,117.47275 v 12.86077"
|
||||
id="path5085"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path5391"
|
||||
d="M 20.694714,129.93064 V 117.06988"
|
||||
style="fill:none;stroke:#000000;stroke-width:0.24099459px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-start:url(#marker5395)" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:0.24099459px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-start:url(#marker5953)"
|
||||
d="M 57.577909,129.93064 V 117.06988"
|
||||
id="path5949"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path6339"
|
||||
d="m 182.93664,117.47275 v 12.86077"
|
||||
style="fill:none;stroke:#000000;stroke-width:0.24099459px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-start:url(#marker6343)" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:0.24272452px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-start:url(#marker6727);marker-end:url(#marker7679)"
|
||||
d="M 79.503333,89.681624 V 102.72768"
|
||||
id="path6723"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:0.22742696px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-start:url(#marker7737)"
|
||||
d="M 20.648338,160.8875 V 149.44057"
|
||||
id="path7733"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path8147"
|
||||
d="M 20.694714,186.94468 V 174.80535"
|
||||
style="fill:none;stroke:#000000;stroke-width:0.23413768px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-start:url(#marker8151)" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:0.25192469px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-start:url(#marker8463)"
|
||||
d="m 20.694714,214.10593 v -14.0538"
|
||||
id="path8459"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path8825"
|
||||
d="M 57.55255,160.88749 V 149.44057"
|
||||
style="fill:none;stroke:#000000;stroke-width:0.22742696px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-start:url(#marker8829)" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:0.23413768px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-start:url(#marker9165)"
|
||||
d="M 57.577909,186.94468 V 174.80535"
|
||||
id="path9161"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path9497"
|
||||
d="m 57.577909,214.10593 v -14.0538"
|
||||
style="fill:none;stroke:#000000;stroke-width:0.25192469px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-start:url(#marker9501)" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:0.25192469px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-start:url(#marker9879)"
|
||||
d="m 117.72288,200.45312 v 14.0538"
|
||||
id="path9875"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path10499"
|
||||
d="m 117.72288,175.19676 v 12.13933"
|
||||
style="fill:none;stroke:#000000;stroke-width:0.23413768px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-start:url(#marker10503)" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:0.22742696px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-start:url(#marker11283)"
|
||||
d="m 99.547103,149.82076 v 11.44693"
|
||||
id="path11279"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path11627"
|
||||
d="m 138.85811,149.82076 v 11.44693"
|
||||
style="fill:none;stroke:#000000;stroke-width:0.22742696px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-start:url(#marker11631)" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:0.22742696px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-start:url(#marker11919)"
|
||||
d="m 183.51756,149.82076 v 11.44693"
|
||||
id="path11915"
|
||||
inkscape:connector-curvature="0" />
|
||||
<g
|
||||
transform="translate(-61.012078,176.8044)"
|
||||
id="g2974">
|
||||
<rect
|
||||
style="fill:#a5f3f1;fill-opacity:1;stroke:#969696;stroke-width:0.47380474;stroke-linecap:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
|
||||
id="rect2964"
|
||||
width="147.66766"
|
||||
height="18.017221"
|
||||
x="66.206352"
|
||||
y="57.045635" />
|
||||
<flowRoot
|
||||
xml:space="preserve"
|
||||
id="flowRoot2972"
|
||||
style="font-style:normal;font-weight:normal;font-size:16px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none"
|
||||
transform="matrix(0.26458333,0,0,0.26458333,60.762454,-3.5472221)"><flowRegion
|
||||
id="flowRegion2968"><rect
|
||||
id="rect2966"
|
||||
width="142.85715"
|
||||
height="58.57143"
|
||||
x="261.42856"
|
||||
y="253.94826" /></flowRegion><flowPara
|
||||
id="flowPara2970">ACCX Board</flowPara></flowRoot> </g>
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path2988"
|
||||
d="m 79.503333,224.38546 v 13.04606"
|
||||
style="fill:none;stroke:#000000;stroke-width:0.24272452px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-start:url(#marker2992);marker-end:url(#marker3152)" />
|
||||
</g>
|
||||
</svg>
|
After Width: | Height: | Size: 40 KiB |
Loading…
Reference in New Issue
Block a user