Browse Source

Add SHADR module WIP.

tags/v2.6.0
Andrew Belt 1 year ago
parent
commit
0e88599c2d
5 changed files with 820 additions and 0 deletions
  1. +6
    -0
      plugin.json
  2. +728
    -0
      res/SHADR.svg
  3. +84
    -0
      src/SHADR.cpp
  4. +1
    -0
      src/plugin.cpp
  5. +1
    -0
      src/plugin.hpp

+ 6
- 0
plugin.json View File

@@ -391,6 +391,12 @@
"tags": [
"Utility"
]
},
{
"slug": "SHADR",
"name": "Sample & Hold Analog Shift Register",
"description": "",
"tags": []
}
]
}

+ 728
- 0
res/SHADR.svg View File

@@ -0,0 +1,728 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
width="105"
height="380"
viewBox="0 0 105 380"
version="1.1"
id="svg208"
sodipodi:docname="SH_ASR.svg"
inkscape:version="1.2.1 (9c6d41e410, 2022-07-14)"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg">
<sodipodi:namedview
id="namedview210"
pagecolor="#ffffff"
bordercolor="#000000"
borderopacity="0.25"
inkscape:showpageshadow="2"
inkscape:pageopacity="0.0"
inkscape:pagecheckerboard="0"
inkscape:deskcolor="#d1d1d1"
showgrid="false"
inkscape:zoom="2.1815789"
inkscape:cx="51.109771"
inkscape:cy="190.22919"
inkscape:window-width="1920"
inkscape:window-height="1009"
inkscape:window-x="-8"
inkscape:window-y="-8"
inkscape:window-maximized="1"
inkscape:current-layer="uuid-f5d828c0-96f2-44e6-9d4d-5f62c3fc741e" />
<defs
id="defs7">
<linearGradient
id="uuid-0979e54b-41ad-49e9-b304-e1cb2ee10a56"
x1="52.5"
y1="0"
x2="52.5"
y2="380"
gradientUnits="userSpaceOnUse">
<stop
offset="0"
stop-color="#ebebeb"
id="stop2" />
<stop
offset="1"
stop-color="#e1e1e1"
id="stop4" />
</linearGradient>
</defs>
<g
id="uuid-c0c47bce-b523-4103-aaff-f7552d6374b9"
data-name="FND BG">
<rect
width="105"
height="380"
fill="url(#uuid-0979e54b-41ad-49e9-b304-e1cb2ee10a56)"
id="rect9" />
</g>
<g
id="uuid-6a091a4e-2503-4fc8-8a71-a72d0bd14b8c"
data-name="FND GRAPH">
<g
id="g28">
<line
x1="22.9792"
y1="333.67721"
x2="44.25791"
y2="333.67721"
fill="none"
stroke="#1f1f1f"
stroke-linecap="round"
stroke-linejoin="round"
stroke-width=".8"
id="line12" />
<line
x1="22.9792"
y1="303.77331"
x2="44.25791"
y2="303.77331"
fill="none"
stroke="#1f1f1f"
stroke-linecap="round"
stroke-linejoin="round"
stroke-width=".8"
id="line14" />
<line
x1="22.9792"
y1="273.86941"
x2="44.25791"
y2="273.86941"
fill="none"
stroke="#1f1f1f"
stroke-linecap="round"
stroke-linejoin="round"
stroke-width=".8"
id="line16" />
<line
x1="22.9792"
y1="243.96551"
x2="44.25791"
y2="243.96551"
fill="none"
stroke="#1f1f1f"
stroke-linecap="round"
stroke-linejoin="round"
stroke-width=".8"
id="line18" />
<line
x1="22.9792"
y1="214.06161"
x2="44.25791"
y2="214.06161"
fill="none"
stroke="#1f1f1f"
stroke-linecap="round"
stroke-linejoin="round"
stroke-width=".8"
id="line20" />
<line
x1="22.9792"
y1="184.1577"
x2="44.25791"
y2="184.1577"
fill="none"
stroke="#1f1f1f"
stroke-linecap="round"
stroke-linejoin="round"
stroke-width=".8"
id="line22" />
<line
x1="22.9792"
y1="154.2538"
x2="44.25791"
y2="154.2538"
fill="none"
stroke="#1f1f1f"
stroke-linecap="round"
stroke-linejoin="round"
stroke-width=".8"
id="line24" />
<line
x1="22.9792"
y1="124.3499"
x2="44.25791"
y2="124.3499"
fill="none"
stroke="#1f1f1f"
stroke-linecap="round"
stroke-linejoin="round"
stroke-width=".8"
id="line26" />
</g>
<g
id="g46">
<line
x1="52.9809"
y1="333.67721"
x2="74.2596"
y2="333.67721"
fill="none"
stroke="#1f1f1f"
stroke-linecap="round"
stroke-linejoin="round"
stroke-width=".8"
id="line30" />
<line
x1="52.9809"
y1="303.77331"
x2="74.2596"
y2="303.77331"
fill="none"
stroke="#1f1f1f"
stroke-linecap="round"
stroke-linejoin="round"
stroke-width=".8"
id="line32" />
<line
x1="52.9809"
y1="273.86941"
x2="74.2596"
y2="273.86941"
fill="none"
stroke="#1f1f1f"
stroke-linecap="round"
stroke-linejoin="round"
stroke-width=".8"
id="line34" />
<line
x1="52.9809"
y1="243.96551"
x2="74.2596"
y2="243.96551"
fill="none"
stroke="#1f1f1f"
stroke-linecap="round"
stroke-linejoin="round"
stroke-width=".8"
id="line36" />
<line
x1="52.9809"
y1="214.06161"
x2="74.2596"
y2="214.06161"
fill="none"
stroke="#1f1f1f"
stroke-linecap="round"
stroke-linejoin="round"
stroke-width=".8"
id="line38" />
<line
x1="52.9809"
y1="184.1577"
x2="74.2596"
y2="184.1577"
fill="none"
stroke="#1f1f1f"
stroke-linecap="round"
stroke-linejoin="round"
stroke-width=".8"
id="line40" />
<line
x1="52.9809"
y1="154.2538"
x2="74.2596"
y2="154.2538"
fill="none"
stroke="#1f1f1f"
stroke-linecap="round"
stroke-linejoin="round"
stroke-width=".8"
id="line42" />
<line
x1="52.9809"
y1="124.3499"
x2="74.2596"
y2="124.3499"
fill="none"
stroke="#1f1f1f"
stroke-linecap="round"
stroke-linejoin="round"
stroke-width=".8"
id="line44" />
</g>
<path
d="m20.87349,85.38806l1.65796-2.87167c.14313-.24791-.03578-.55779-.32204-.55779h-3.31592c-.28626,0-.46517.30989-.32204.55779l1.65796,2.87167c.14313.24791.50096.24791.64409,0Z"
fill="#1f1f1f"
id="path48" />
<path
d="m52.71745,85.38807l1.65796-2.87167c.14313-.24791-.03578-.55779-.32204-.55779h-3.31592c-.28626,0-.46517.30989-.32204.55779l1.65796,2.87167c.14313.24791.50096.24791.64409,0Z"
fill="#1f1f1f"
id="path50" />
<path
d="m84.8752,85.38807l1.65796-2.87167c.14313-.24791-.03578-.55779-.32204-.55779h-3.31592c-.28626,0-.46517.30989-.32204.55779l1.65796,2.87167c.14313.24791.50096.24791.64409,0Z"
fill="#1f1f1f"
id="path52" />
<g
id="g82">
<path
d="m32.26,140.84683l3.20293-.85822c.27651-.07409.36912-.41972.1667-.62214l-2.34471-2.34471c-.20242-.20242-.54805-.1098-.62214.1667l-.85822,3.20293c-.07409.27651.17893.52953.45544.45544Z"
fill="#1f1f1f"
id="path54" />
<path
d="m33.43229,139.1738l2.47982-2.47982c.53225-.53225,1.25413-.83126,2.00684-.83126h4.68001"
fill="none"
stroke="#1f1f1f"
stroke-linecap="round"
stroke-linejoin="round"
stroke-width=".8"
id="path56" />
<path
d="m32.26,170.75073l3.20293-.85822c.27651-.07409.36912-.41972.1667-.62214l-2.34471-2.34471c-.20242-.20242-.54805-.1098-.62214.1667l-.85822,3.20293c-.07409.27651.17893.52953.45544.45544Z"
fill="#1f1f1f"
id="path58" />
<path
d="m33.43229,169.07771l2.47982-2.47982c.53225-.53225,1.25413-.83126,2.00684-.83126h4.68001"
fill="none"
stroke="#1f1f1f"
stroke-linecap="round"
stroke-linejoin="round"
stroke-width=".8"
id="path60" />
<path
d="m32.26,200.65463l3.20293-.85822c.27651-.07409.36912-.41972.1667-.62214l-2.34471-2.34471c-.20242-.20242-.54805-.1098-.62214.1667l-.85822,3.20293c-.07409.27651.17893.52953.45544.45544Z"
fill="#1f1f1f"
id="path62" />
<path
d="m33.43229,198.98161l2.47982-2.47982c.53225-.53225,1.25413-.83126,2.00684-.83126h4.68001"
fill="none"
stroke="#1f1f1f"
stroke-linecap="round"
stroke-linejoin="round"
stroke-width=".8"
id="path64" />
<path
d="m32.26,230.55853l3.20293-.85822c.27651-.07409.36912-.41972.1667-.62214l-2.34471-2.34471c-.20242-.20242-.54805-.1098-.62214.1667l-.85822,3.20293c-.07409.27651.17893.52953.45544.45544Z"
fill="#1f1f1f"
id="path66" />
<path
d="m33.43229,228.88551l2.47982-2.47982c.53225-.53225,1.25413-.83126,2.00684-.83126h4.68001"
fill="none"
stroke="#1f1f1f"
stroke-linecap="round"
stroke-linejoin="round"
stroke-width=".8"
id="path68" />
<path
d="m32.26,260.46244l3.20293-.85822c.27651-.07409.36912-.41972.1667-.62214l-2.34471-2.34471c-.20242-.20242-.54805-.1098-.62214.1667l-.85822,3.20293c-.07409.27651.17893.52953.45544.45544Z"
fill="#1f1f1f"
id="path70" />
<path
d="m33.43229,258.78941l2.47982-2.47982c.53225-.53225,1.25413-.83126,2.00684-.83126h4.68001"
fill="none"
stroke="#1f1f1f"
stroke-linecap="round"
stroke-linejoin="round"
stroke-width=".8"
id="path72" />
<path
d="m32.26,290.36634l3.20293-.85822c.27651-.07409.36912-.41972.1667-.62214l-2.34471-2.34471c-.20242-.20242-.54805-.1098-.62214.1667l-.85822,3.20293c-.07409.27651.17893.52953.45544.45544Z"
fill="#1f1f1f"
id="path74" />
<path
d="m33.43229,288.69331l2.47982-2.47982c.53225-.53225,1.25413-.83126,2.00684-.83126h4.68001"
fill="none"
stroke="#1f1f1f"
stroke-linecap="round"
stroke-linejoin="round"
stroke-width=".8"
id="path76" />
<path
d="m32.26,320.27024l3.20293-.85822c.27651-.07409.36912-.41972.1667-.62214l-2.34471-2.34471c-.20242-.20242-.54805-.1098-.62214.1667l-.85822,3.20293c-.07409.27651.17893.52953.45544.45544Z"
fill="#1f1f1f"
id="path78" />
<path
d="m33.43229,318.59722l2.47982-2.47982c.53225-.53225,1.25413-.83126,2.00684-.83126h4.68001"
fill="none"
stroke="#1f1f1f"
stroke-linecap="round"
stroke-linejoin="round"
stroke-width=".8"
id="path80" />
</g>
<path
d="m95.99426,99.40625h-22.8822c-1.55908,0-2.83466,1.27557-2.83466,2.83459v33.04041h1.46576c.59766,0,1.15967-.23291,1.58252-.65576l10.79785-10.79785.84863.84863-10.79785,10.79785c-.64941.64941-1.51318,1.00732-2.43115,1.00732h-1.46576v28.70361h1.46576c.59814,0,1.16016-.23242,1.58252-.65527l10.79785-10.79834.84863.84863-10.79785,10.79834c-.64941.64941-1.5127,1.00684-2.43115,1.00684h-1.46576v28.70361h1.46576c.59814,0,1.16016-.23242,1.58252-.65527l10.79785-10.79785.84863.84863-10.79785,10.79785c-.64941.64941-1.5127,1.00684-2.43115,1.00684h-1.46576v28.70361h1.46576c.59814,0,1.16016-.23242,1.58252-.65527l10.79785-10.79785.84863.84863-10.79785,10.79785c-.64941.64941-1.5127,1.00684-2.43115,1.00684h-1.46576v28.7041h1.46576c.59766,0,1.15967-.23291,1.58252-.65576l10.79785-10.79785.84863.84863-10.79785,10.79785c-.64941.64941-1.51318,1.00732-2.43115,1.00732h-1.46576v28.70361h1.46576c.59766,0,1.15967-.23291,1.58252-.65576l10.79785-10.79785.84863.84863-10.79785,10.79785c-.64941.64941-1.51318,1.00732-2.43115,1.00732h-1.46576v28.70361h1.46576c.59814,0,1.16016-.23242,1.58252-.65527l10.79785-10.79834.84863.84863-10.79785,10.79834c-.64941.64941-1.5127,1.00684-2.43115,1.00684h-1.46576v29.47382c0,1.55902,1.27557,2.83466,2.83466,2.83466h22.8822c1.55908,0,2.83466-1.27563,2.83466-2.83466V102.24084c0-1.55902-1.27557-2.83459-2.83466-2.83459Z"
fill="#1f1f1f"
id="path84" />
<g
id="g94">
<circle
cx="53.04737"
cy="356.48323"
r="1.18571"
fill="#1f1f1f"
id="circle86" />
<path
d="m44.405,360.4052c-.34551,0-.66126-.1952-.8158-.50419l-2.96428-5.92856c-.22526-.45057-.04266-.99844.40794-1.2237.45008-.22535.99831-.04271,1.22366.4079l2.14848,4.29696,2.14848-4.29696c.22526-.45057.77314-.63325,1.22366-.4079.45061.22526.63321.77314.40794,1.2237l-2.96428,5.92856c-.15454.30899-.47029.50419-.8158.50419Z"
fill="#1f1f1f"
id="path88" />
<path
d="m60.68645,360.4052c-.34551,0-.66126-.1952-.8158-.50419l-2.96428-5.92856c-.22526-.45057-.04266-.99844.40794-1.2237.45016-.22535.9984-.04271,1.22366.4079l2.14848,4.29696,2.14848-4.29696c.22526-.45057.77305-.63325,1.22366-.4079.45061.22526.63321.77314.40794,1.2237l-2.96428,5.92856c-.15454.30899-.47029.50419-.8158.50419Z"
fill="#1f1f1f"
id="path90" />
<path
d="m52.98814,360.4052c-2.13744,0-3.87637-1.73893-3.87637-3.87637s1.73893-3.87637,3.87637-3.87637c.84653,0,1.65102.26819,2.32653.77554.40278.30253.48401.87428.18153,1.27705-.30248.40273-.87432.48401-1.2771.18148-.357-.26815-.78267-.4099-1.23096-.4099-1.13156,0-2.05219.92059-2.05219,2.05219s.92064,2.05219,2.05219,2.05219c.44829,0,.87396-.14176,1.23096-.4099.40269-.30271.97444-.22125,1.2771.18148.30248.40278.22125.97453-.18153,1.27705-.67551.50735-1.48.77554-2.32653.77554Z"
fill="#1f1f1f"
id="path92" />
</g>
<path
d="m52.84502,320.34703l1.65796-2.87167c.14313-.24791-.03578-.55779-.32204-.55779h-3.31592c-.28626,0-.46517.30989-.32204.55779l1.65796,2.87167c.14313.24791.50096.24791.64409,0Z"
fill="#1f1f1f"
id="path96" />
<path
d="m52.84502,290.44313l1.65796-2.87167c.14313-.24791-.03578-.55779-.32204-.55779h-3.31592c-.28626,0-.46517.30989-.32204.55779l1.65796,2.87167c.14313.24791.50096.24791.64409,0Z"
fill="#1f1f1f"
id="path98" />
<path
d="m52.84502,260.53923l1.65796-2.87167c.14313-.24791-.03578-.55779-.32204-.55779h-3.31592c-.28626,0-.46517.30989-.32204.55779l1.65796,2.87167c.14313.24791.50096.24791.64409,0Z"
fill="#1f1f1f"
id="path100" />
<path
d="m52.84502,230.63532l1.65796-2.87167c.14313-.24791-.03578-.55779-.32204-.55779h-3.31592c-.28626,0-.46517.30989-.32204.55779l1.65796,2.87167c.14313.24791.50096.24791.64409,0Z"
fill="#1f1f1f"
id="path102" />
<path
d="m52.84502,200.73142l1.65796-2.87167c.14313-.24791-.03578-.55779-.32204-.55779h-3.31592c-.28626,0-.46517.30989-.32204.55779l1.65796,2.87167c.14313.24791.50096.24791.64409,0Z"
fill="#1f1f1f"
id="path104" />
<path
d="m52.84502,170.82752l1.65796-2.87167c.14313-.24791-.03578-.55779-.32204-.55779h-3.31592c-.28626,0-.46517.30989-.32204.55779l1.65796,2.87167c.14313.24791.50096.24791.64409,0Z"
fill="#1f1f1f"
id="path106" />
<path
d="m52.84502,140.92362l1.65796-2.87167c.14313-.24791-.03578-.55779-.32204-.55779h-3.31592c-.28626,0-.46517.30989-.32204.55779l1.65796,2.87167c.14313.24791.50096.24791.64409,0Z"
fill="#1f1f1f"
id="path108" />
</g>
<g
id="uuid-2636a8de-4c92-41c2-9a92-d43b7f61adbd"
data-name="FND TXT"
style="display:inline">
<g
id="g117">
<path
d="m 13.14746,45.45898 c 0,-0.2373 0.18262,-0.41992 0.41992,-0.41992 h 1.69336 c 0.59668,0 1.06396,0.17578 1.36914,0.47412 0.25049,0.25732 0.39258,0.60986 0.39258,1.02295 v 0.01367 c 0,0.75879 -0.44043,1.21924 -1.07715,1.41602 l 0.9082,1.14453 c 0.08105,0.10156 0.13525,0.18994 0.13525,0.31836 0,0.23047 -0.19678,0.38672 -0.3999,0.38672 -0.18945,0 -0.31152,-0.08838 -0.40625,-0.2168 l -1.15186,-1.4707 h -1.05029 v 1.27393 c 0,0.23047 -0.18262,0.41357 -0.41309,0.41357 -0.2373,0 -0.41992,-0.18311 -0.41992,-0.41357 v -3.94287 z m 2.05273,1.93066 c 0.59619,0 0.97559,-0.31152 0.97559,-0.79248 v -0.01367 c 0,-0.5083 -0.36621,-0.78564 -0.98242,-0.78564 h -1.21289 v 1.5918 h 1.21973 z"
fill="#1f1f1f"
id="path111" />
<path
d="m 18.28027,45.43164 c 0,-0.23047 0.18262,-0.41992 0.41992,-0.41992 h 0.08789 c 0.20312,0 0.31836,0.10156 0.43359,0.24414 l 2.37109,3.06885 v -2.91357 c 0,-0.22314 0.18262,-0.40625 0.40625,-0.40625 0.23047,0 0.41357,0.18311 0.41357,0.40625 v 3.98389 c 0,0.23047 -0.17627,0.41357 -0.40674,0.41357 h -0.03369 c -0.19678,0 -0.31836,-0.10156 -0.43359,-0.25098 L 19.0996,46.40039 v 3.0083 c 0,0.22363 -0.18262,0.40674 -0.40625,0.40674 -0.23047,0 -0.41309,-0.18311 -0.41309,-0.40674 v -3.97705 z"
fill="#1f1f1f"
id="path113" />
<path
d="m 23.875,45.45898 c 0,-0.2373 0.18359,-0.41992 0.42041,-0.41992 h 1.34814 c 1.49023,0 2.52051,1.02246 2.52051,2.35742 v 0.01367 c 0,1.33447 -1.03027,2.37109 -2.52051,2.37109 h -1.34814 c -0.23682,0 -0.42041,-0.18262 -0.42041,-0.41992 z m 1.76855,3.56348 c 0.99609,0 1.64648,-0.6709 1.64648,-1.59863 v -0.01367 c 0,-0.92822 -0.65039,-1.6123 -1.64648,-1.6123 h -0.93457 v 3.22461 h 0.93457 z"
fill="#1f1f1f"
id="path115" />
</g>
<g
id="g129">
<path
d="m 72.53613,47.42383 v -0.01367 c 0,-1.34863 1.00928,-2.45264 2.44531,-2.45264 0.73193,0 1.21289,0.2168 1.62598,0.53516 0.08838,0.06787 0.16309,0.18311 0.16309,0.33203 0,0.23047 -0.18311,0.40674 -0.41357,0.40674 -0.11475,0 -0.19678,-0.04102 -0.25049,-0.08154 -0.3252,-0.26416 -0.67773,-0.42676 -1.13184,-0.42676 -0.90039,0 -1.56445,0.74512 -1.56445,1.67334 v 0.01367 c 0,0.92773 0.65723,1.68018 1.56445,1.68018 0.50195,0 0.84033,-0.1626 1.18555,-0.4541 0.06152,-0.0542 0.14941,-0.09473 0.25098,-0.09473 0.20996,0 0.39307,0.17627 0.39307,0.38623 0,0.12891 -0.06104,0.23047 -0.13525,0.29785 -0.44727,0.39307 -0.95557,0.63672 -1.72119,0.63672 -1.38232,0 -2.41162,-1.07715 -2.41162,-2.43848 z"
fill="#1f1f1f"
id="path119" />
<path
d="m 77.95312,45.41797 c 0,-0.22998 0.18262,-0.41309 0.41992,-0.41309 0.23047,0 0.41309,0.18311 0.41309,0.41309 v 3.60449 h 2.14746 c 0.21045,0 0.37988,0.16943 0.37988,0.37939 0,0.20996 -0.16943,0.37939 -0.37988,0.37939 h -2.56055 c -0.2373,0 -0.41992,-0.18262 -0.41992,-0.41992 v -3.94336 z"
fill="#1f1f1f"
id="path121" />
<path
d="m 82.30664,49.36133 v -3.90234 c 0,-0.2373 0.18262,-0.41992 0.41992,-0.41992 h 2.75684 c 0.20361,0 0.37305,0.16895 0.37305,0.37207 0,0.21045 -0.16943,0.37305 -0.37305,0.37305 h -2.34375 v 1.23291 h 2.03906 c 0.20312,0 0.37305,0.16943 0.37305,0.37939 0,0.20312 -0.16992,0.36572 -0.37305,0.36572 h -2.03906 v 1.27393 h 2.37793 c 0.20312,0 0.37256,0.16895 0.37256,0.37256 0,0.20996 -0.16943,0.37256 -0.37256,0.37256 h -2.79102 c -0.2373,0 -0.41992,-0.18262 -0.41992,-0.41992 z"
fill="#1f1f1f"
id="path123" />
<path
d="m 86.82715,49.23926 1.76172,-3.92969 c 0.09473,-0.20996 0.26465,-0.33838 0.50146,-0.33838 h 0.04053 c 0.2373,0 0.3999,0.12842 0.49463,0.33838 l 1.76123,3.92969 c 0.03418,0.06104 0.04785,0.12207 0.04785,0.17627 0,0.22314 -0.16943,0.3999 -0.39307,0.3999 -0.19678,0 -0.33203,-0.11523 -0.40674,-0.2915 l -0.38574,-0.8877 h -2.30371 l -0.39941,0.91455 c -0.06836,0.16943 -0.20996,0.26465 -0.38672,0.26465 -0.2168,0 -0.38574,-0.16992 -0.38574,-0.38672 0,-0.06055 0.02051,-0.12158 0.05371,-0.18945 z m 3.10352,-1.34131 -0.8335,-1.91748 -0.8335,1.91748 h 1.66699 z"
fill="#1f1f1f"
id="path125" />
<path
d="m 92.46875,45.45898 c 0,-0.2373 0.18262,-0.41992 0.41992,-0.41992 h 1.69336 c 0.59668,0 1.06348,0.17578 1.36865,0.47412 0.25049,0.25732 0.39307,0.60986 0.39307,1.02295 v 0.01367 c 0,0.75879 -0.44043,1.21924 -1.07715,1.41602 l 0.90771,1.14453 c 0.08154,0.10156 0.13525,0.18994 0.13525,0.31836 0,0.23047 -0.19629,0.38672 -0.39941,0.38672 -0.18945,0 -0.31152,-0.08838 -0.40625,-0.2168 l -1.15234,-1.4707 h -1.0498 v 1.27393 c 0,0.23047 -0.18262,0.41357 -0.41309,0.41357 -0.2373,0 -0.41992,-0.18311 -0.41992,-0.41357 v -3.94287 z m 2.05273,1.93066 c 0.5957,0 0.97559,-0.31152 0.97559,-0.79248 v -0.01367 c 0,-0.5083 -0.36621,-0.78564 -0.98242,-0.78564 h -1.21289 v 1.5918 h 1.21973 z"
fill="#1f1f1f"
id="path127" />
</g>
<g
id="g139">
<path
d="m 43.24609,45.45898 c 0,-0.2373 0.18311,-0.41992 0.41992,-0.41992 h 1.4502 c 1.11133,0 1.80176,0.62988 1.80176,1.58496 v 0.01367 c 0,1.06348 -0.85352,1.61914 -1.89648,1.61914 H 44.0796 v 1.14502 c 0,0.23047 -0.18311,0.41357 -0.41357,0.41357 -0.23682,0 -0.41992,-0.18311 -0.41992,-0.41357 v -3.94287 z m 1.80225,2.0459 c 0.63037,0 1.02295,-0.35254 1.02295,-0.84668 v -0.01367 c 0,-0.55566 -0.39941,-0.84668 -1.02295,-0.84668 h -0.96875 v 1.70703 z"
fill="#1f1f1f"
id="path131" />
<path
d="m 47.88281,47.76904 v -2.35107 c 0,-0.22998 0.18262,-0.41309 0.41992,-0.41309 0.23047,0 0.41309,0.18311 0.41309,0.41309 v 2.31738 c 0,0.88086 0.4541,1.34814 1.19922,1.34814 0.73828,0 1.19238,-0.44043 1.19238,-1.31445 v -2.35107 c 0,-0.22998 0.18262,-0.41309 0.41992,-0.41309 0.23047,0 0.41309,0.18311 0.41309,0.41309 v 2.31055 c 0,1.41602 -0.79883,2.12695 -2.03906,2.12695 -1.23291,0 -2.01855,-0.71094 -2.01855,-2.08643 z"
fill="#1f1f1f"
id="path133" />
<path
d="m 53.17871,49.25293 c -0.09473,-0.06787 -0.16211,-0.18311 -0.16211,-0.31836 0,-0.2168 0.17578,-0.38623 0.39258,-0.38623 0.11523,0 0.18945,0.03369 0.24414,0.07471 0.39258,0.31152 0.8125,0.4873 1.32812,0.4873 0.51465,0 0.83984,-0.24365 0.83984,-0.5957 v -0.01367 c 0,-0.33887 -0.18945,-0.52197 -1.07031,-0.7251 -1.00977,-0.24365 -1.5791,-0.54199 -1.5791,-1.41602 v -0.01318 c 0,-0.81348 0.67773,-1.37549 1.61914,-1.37549 0.59668,0 1.07764,0.15576 1.50439,0.43994 0.09521,0.05469 0.18311,0.16992 0.18311,0.33203 0,0.2168 -0.17627,0.38672 -0.39307,0.38672 -0.08154,0 -0.14893,-0.02051 -0.2168,-0.06152 -0.36572,-0.23682 -0.71826,-0.35889 -1.09082,-0.35889 -0.48779,0 -0.77197,0.25049 -0.77197,0.5625 v 0.01318 c 0,0.36621 0.2168,0.52881 1.13086,0.74561 1.00293,0.24365 1.51758,0.60303 1.51758,1.38867 v 0.01367 c 0,0.88721 -0.69727,1.41602 -1.69336,1.41602 -0.64355,0 -1.25391,-0.20361 -1.78223,-0.59619 z"
fill="#1f1f1f"
id="path135" />
<path
d="m 57.86523,45.41797 c 0,-0.22998 0.18311,-0.41309 0.41992,-0.41309 0.23047,0 0.41357,0.18311 0.41357,0.41309 v 1.59229 h 2.2627 v -1.59229 c 0,-0.22998 0.18311,-0.41309 0.41357,-0.41309 0.23682,0 0.41992,0.18311 0.41992,0.41309 v 3.98389 c 0,0.23047 -0.18311,0.41357 -0.41992,0.41357 -0.23047,0 -0.41357,-0.18311 -0.41357,-0.41357 v -1.61914 h -2.2627 v 1.61914 c 0,0.23047 -0.18311,0.41357 -0.41357,0.41357 -0.23682,0 -0.41992,-0.18311 -0.41992,-0.41357 z"
fill="#1f1f1f"
id="path137" />
</g>
<g
id="g153">
<path
d="m 23.01074,28.01318 c -0.21289,-0.15039 -0.36279,-0.42529 -0.36279,-0.72607 0,-0.5 0.40039,-0.88818 0.90088,-0.88818 0.25,0 0.42529,0.0874 0.55029,0.17529 0.66309,0.48779 1.38867,0.78809 2.23975,0.78809 0.78809,0 1.26367,-0.3125 1.26367,-0.82568 v -0.0249 c 0,-0.48828 -0.30029,-0.73828 -1.76416,-1.11377 -1.76416,-0.45068 -2.90283,-0.93848 -2.90283,-2.67725 v -0.02539 c 0,-1.58887 1.27637,-2.64014 3.06543,-2.64014 1.06348,0 1.98975,0.27539 2.77783,0.77588 0.21289,0.125 0.42529,0.3877 0.42529,0.76318 0,0.50049 -0.40039,0.88818 -0.90088,0.88818 -0.1875,0 -0.33789,-0.0498 -0.48779,-0.1377 -0.63818,-0.375 -1.23877,-0.58789 -1.83936,-0.58789 -0.73828,0 -1.12598,0.33789 -1.12598,0.76367 v 0.02441 c 0,0.57617 0.375,0.76367 1.88916,1.15137 1.77686,0.46289 2.77783,1.10107 2.77783,2.62793 v 0.02441 c 0,1.73926 -1.32617,2.71533 -3.21582,2.71533 -1.15088,0 -2.31445,-0.3501 -3.29053,-1.05078 z"
fill="#1f1f1f"
id="path141" />
<path
d="m 36.98096,28.78906 -0.73828,-0.73828 c -0.71289,0.61279 -1.56396,1.01318 -2.60254,1.01318 -1.67676,0 -2.94043,-0.97607 -2.94043,-2.52734 v -0.0249 c 0,-1.11377 0.60059,-1.90186 1.70166,-2.40234 -0.43799,-0.60059 -0.61279,-1.15137 -0.61279,-1.75195 v -0.0249 c 0,-1.20117 0.96338,-2.30225 2.65234,-2.30225 1.48926,0 2.46484,0.97607 2.46484,2.20215 v 0.0249 c 0,1.17627 -0.75049,1.86475 -1.82666,2.28955 l 1.15088,1.13867 c 0.2002,-0.2998 0.38818,-0.61279 0.57568,-0.95068 0.08789,-0.17529 0.33789,-0.43799 0.71338,-0.43799 0.43799,0 0.80078,0.36279 0.80078,0.80078 0,0.1377 -0.0376,0.27539 -0.11279,0.40039 -0.25,0.43799 -0.53809,0.88867 -0.83838,1.31396 l 0.80078,0.78809 c 0.17529,0.17529 0.28809,0.36279 0.28809,0.62549 0,0.47559 -0.36279,0.83838 -0.83838,0.83838 -0.2627,0 -0.43799,-0.07471 -0.63818,-0.2749 z M 35.1416,26.96191 33.46484,25.27295 c -0.58789,0.31299 -0.82568,0.72559 -0.82568,1.16357 v 0.0249 c 0,0.61328 0.51318,1.02588 1.22607,1.02588 0.45068,0 0.87598,-0.2002 1.27637,-0.52539 z m 0.0874,-4.5918 v -0.02539 c 0,-0.5 -0.3374,-0.81299 -0.82568,-0.81299 -0.5127,0 -0.85059,0.36279 -0.85059,0.88818 v 0.02539 c 0,0.3877 0.1499,0.67578 0.5127,1.08838 0.76318,-0.2876 1.16357,-0.60059 1.16357,-1.16357 z"
fill="#1f1f1f"
id="path143" />
<path
d="m 40.07568,21.06885 c 0,-0.53809 0.42578,-0.96338 0.96387,-0.96338 0.53809,0 0.96338,0.42529 0.96338,0.96338 v 2.57764 h 3.55322 v -2.57764 c 0,-0.53809 0.42578,-0.96338 0.96338,-0.96338 0.53809,0 0.96338,0.42529 0.96338,0.96338 v 6.98193 c 0,0.53809 -0.42529,0.96338 -0.96338,0.96338 -0.5376,0 -0.96338,-0.42529 -0.96338,-0.96338 v -2.62793 h -3.55322 v 2.62793 c 0,0.53809 -0.42529,0.96338 -0.96338,0.96338 -0.53809,0 -0.96387,-0.42529 -0.96387,-0.96338 z"
fill="#1f1f1f"
id="path145" />
<path
d="m 56.61328,27.7002 3.05322,-6.89404 c 0.2124,-0.47559 0.60059,-0.76318 1.12598,-0.76318 h 0.1123 c 0.52588,0 0.90137,0.2876 1.11377,0.76318 l 3.05322,6.89404 c 0.0625,0.1377 0.1001,0.2627 0.1001,0.3877 0,0.51318 -0.40039,0.92627 -0.91357,0.92627 -0.4502,0 -0.75098,-0.26318 -0.92578,-0.66357 l -0.58838,-1.37598 h -3.85352 l -0.61328,1.43896 c -0.1626,0.37549 -0.48779,0.60059 -0.88818,0.60059 -0.50049,0 -0.88867,-0.40039 -0.88867,-0.90088 0,-0.1377 0.05029,-0.27539 0.11279,-0.41309 z m 5.41797,-2.42725 -1.21387,-2.89014 -1.21338,2.89014 z"
fill="#1f1f1f"
id="path147" />
<path
d="m 66.64307,28.01318 c -0.21289,-0.15039 -0.36279,-0.42529 -0.36279,-0.72607 0,-0.5 0.40039,-0.88818 0.90088,-0.88818 0.25,0 0.42529,0.0874 0.55029,0.17529 0.66309,0.48779 1.38916,0.78809 2.23975,0.78809 0.78809,0 1.26367,-0.3125 1.26367,-0.82568 v -0.0249 c 0,-0.48828 -0.30029,-0.73828 -1.76416,-1.11377 -1.76416,-0.45068 -2.90283,-0.93848 -2.90283,-2.67725 v -0.02539 c 0,-1.58887 1.27637,-2.64014 3.06543,-2.64014 1.06348,0 1.98926,0.27539 2.77783,0.77588 0.2124,0.125 0.42529,0.3877 0.42529,0.76318 0,0.50049 -0.40039,0.88818 -0.90088,0.88818 -0.1875,0 -0.33789,-0.0498 -0.48779,-0.1377 -0.63818,-0.375 -1.23877,-0.58789 -1.83936,-0.58789 -0.73828,0 -1.12598,0.33789 -1.12598,0.76367 v 0.02441 c 0,0.57617 0.375,0.76367 1.88916,1.15137 1.77686,0.46289 2.77783,1.10107 2.77783,2.62793 v 0.02441 c 0,1.73926 -1.32666,2.71533 -3.21582,2.71533 -1.15088,0 -2.31494,-0.3501 -3.29053,-1.05078 z"
fill="#1f1f1f"
id="path149" />
<path
d="m 74.9585,21.14355 c 0,-0.5376 0.42529,-0.96289 0.96338,-0.96289 h 3.04053 c 1.11328,0 1.97656,0.3125 2.55225,0.88818 0.48779,0.48779 0.75049,1.17627 0.75049,2.00195 v 0.0249 c 0,1.37646 -0.68799,2.22754 -1.75146,2.66504 l 1.33887,1.62695 c 0.1875,0.2373 0.31299,0.4375 0.31299,0.73828 0,0.5376 -0.45068,0.88818 -0.91357,0.88818 -0.43799,0 -0.72559,-0.21289 -0.95117,-0.50049 l -1.87646,-2.37744 h -1.53906 v 1.91455 c 0,0.53809 -0.42578,0.96338 -0.96338,0.96338 -0.53809,0 -0.96338,-0.42529 -0.96338,-0.96338 v -6.90723 z m 3.87842,3.29102 c 0.93848,0 1.47656,-0.50049 1.47656,-1.23877 v -0.0249 c 0,-0.82617 -0.57568,-1.25098 -1.51416,-1.25098 h -1.91406 v 2.51465 z"
fill="#1f1f1f"
id="path151" />
</g>
<g
id="g159">
<path
d="m 17.35156,104.73145 c 0,-0.23047 0.18262,-0.41357 0.41992,-0.41357 0.23047,0 0.41309,0.18311 0.41309,0.41357 v 3.9834 c 0,0.23047 -0.18262,0.41309 -0.41309,0.41309 -0.2373,0 -0.41992,-0.18262 -0.41992,-0.41309 z"
fill="#1f1f1f"
id="path155" />
<path
d="m 19.66113,104.74463 c 0,-0.22998 0.18262,-0.41992 0.41992,-0.41992 h 0.08789 c 0.20312,0 0.31836,0.10156 0.43359,0.24365 l 2.37109,3.06934 v -2.91309 c 0,-0.22363 0.18262,-0.40674 0.40625,-0.40674 0.23047,0 0.41309,0.18311 0.41309,0.40674 v 3.9834 c 0,0.23047 -0.17578,0.41309 -0.40625,0.41309 h -0.0332 c -0.19727,0 -0.31934,-0.10156 -0.43359,-0.25049 l -2.43945,-3.15674 v 3.00781 c 0,0.22363 -0.18262,0.40625 -0.40625,0.40625 -0.23047,0 -0.41309,-0.18262 -0.41309,-0.40625 z"
fill="#1f1f1f"
id="path157" />
</g>
<g
id="g169">
<path
d="m 45.67578,105.12402 h -1.15186 c -0.2168,0 -0.38574,-0.17578 -0.38574,-0.38574 0,-0.21045 0.16895,-0.38672 0.38574,-0.38672 h 3.15039 c 0.20996,0 0.37939,0.17627 0.37939,0.38672 0,0.20996 -0.16943,0.38574 -0.37939,0.38574 h -1.1582 v 3.59082 c 0,0.23047 -0.18994,0.41309 -0.41992,0.41309 -0.23047,0 -0.42041,-0.18262 -0.42041,-0.41309 z"
fill="#1f1f1f"
id="path161" />
<path
d="m 49.05469,104.77197 c 0,-0.2373 0.18262,-0.42041 0.41992,-0.42041 h 1.69385 c 0.59619,0 1.06348,0.17627 1.36816,0.47461 0.25098,0.25732 0.39307,0.60938 0.39307,1.02295 v 0.0132 c 0,0.75879 -0.44043,1.21973 -1.07715,1.41602 l 0.90771,1.14551 c 0.08154,0.10156 0.13574,0.18945 0.13574,0.31836 0,0.22998 -0.19629,0.38574 -0.3999,0.38574 -0.18945,0 -0.31152,-0.0879 -0.40625,-0.2168 l -1.15186,-1.46973 h -1.05029 v 1.27344 c 0,0.23047 -0.18262,0.41309 -0.41309,0.41309 -0.2373,0 -0.41992,-0.18262 -0.41992,-0.41309 v -3.94287 z m 2.05273,1.93066 c 0.59619,0 0.97559,-0.31152 0.97559,-0.79248 v -0.0137 c 0,-0.50781 -0.36572,-0.78613 -0.98242,-0.78613 H 49.8877 v 1.59229 h 1.21973 z"
fill="#1f1f1f"
id="path163" />
<path
d="m 54.21289,104.73145 c 0,-0.23047 0.18311,-0.41357 0.41992,-0.41357 0.23047,0 0.41357,0.18311 0.41357,0.41357 v 3.9834 c 0,0.23047 -0.18311,0.41309 -0.41357,0.41309 -0.23682,0 -0.41992,-0.18262 -0.41992,-0.41309 z"
fill="#1f1f1f"
id="path165" />
<path
d="m 56.27393,106.73633 v -0.0132 c 0,-1.32812 1.01611,-2.45264 2.44531,-2.45264 0.71143,0 1.18604,0.16943 1.61963,0.48096 0.08105,0.061 0.16943,0.17627 0.16943,0.33887 0,0.22363 -0.18311,0.41309 -0.41357,0.41309 -0.1084,0 -0.18945,-0.0474 -0.25732,-0.0947 -0.30469,-0.22363 -0.63672,-0.37256 -1.15186,-0.37256 -0.87402,0 -1.5376,0.76562 -1.5376,1.67334 v 0.0137 c 0,0.97559 0.64355,1.69385 1.6123,1.69385 0.44727,0 0.85352,-0.14258 1.14502,-0.35938 v -0.8877 h -0.93506 c -0.20312,0 -0.37256,-0.15527 -0.37256,-0.35889 0,-0.20312 0.16943,-0.36572 0.37256,-0.36572 h 1.32129 c 0.23682,0 0.41992,0.18262 0.41992,0.41992 v 1.26709 c 0,0.23682 -0.09473,0.40625 -0.2915,0.52832 -0.40625,0.271 -0.97559,0.51514 -1.68701,0.51514 -1.4834,0 -2.45898,-1.05713 -2.45898,-2.43945 z"
fill="#1f1f1f"
id="path167" />
</g>
<g
id="g177">
<path
d="m 77.71094,108.69678 c -0.11523,-0.0815 -0.19629,-0.23047 -0.19629,-0.39307 0,-0.271 0.2168,-0.48096 0.48779,-0.48096 0.13525,0 0.23047,0.0474 0.29785,0.0947 0.35938,0.26416 0.75195,0.42676 1.21289,0.42676 0.42676,0 0.68408,-0.16943 0.68408,-0.44678 v -0.0137 c 0,-0.26465 -0.1626,-0.3999 -0.95508,-0.60303 -0.95508,-0.24365 -1.57178,-0.5083 -1.57178,-1.44971 v -0.0137 c 0,-0.86035 0.69092,-1.42969 1.65967,-1.42969 0.57617,0 1.07764,0.14941 1.50439,0.41992 0.11523,0.0679 0.22998,0.20996 0.22998,0.41357 0,0.271 -0.2168,0.48096 -0.48779,0.48096 -0.10156,0 -0.18262,-0.0273 -0.26416,-0.0742 -0.34521,-0.20361 -0.67041,-0.31885 -0.99561,-0.31885 -0.3999,0 -0.60986,0.18311 -0.60986,0.41357 v 0.0137 c 0,0.31152 0.20312,0.41309 1.02295,0.62305 0.96191,0.25049 1.50391,0.59619 1.50391,1.42285 v 0.0137 c 0,0.94141 -0.71777,1.46973 -1.74121,1.46973 -0.62305,0 -1.25293,-0.18945 -1.78174,-0.56885 z"
fill="#f0f0f0"
id="path171" />
<path
d="m 85.43994,109.1167 -0.3999,-0.3999 c -0.38623,0.33203 -0.84668,0.54883 -1.40918,0.54883 -0.90771,0 -1.5918,-0.52832 -1.5918,-1.36816 v -0.0137 c 0,-0.60303 0.3252,-1.02979 0.92139,-1.30078 -0.2373,-0.3252 -0.33203,-0.62354 -0.33203,-0.94873 v -0.0132 c 0,-0.65039 0.52148,-1.24707 1.43604,-1.24707 0.80615,0 1.33496,0.52881 1.33496,1.19238 v 0.0137 c 0,0.63672 -0.40674,1.00977 -0.98926,1.24023 l 0.62354,0.61621 c 0.1084,-0.1626 0.20996,-0.33203 0.31152,-0.51465 0.04736,-0.0952 0.18262,-0.2373 0.38623,-0.2373 0.23682,0 0.43359,0.19629 0.43359,0.43359 0,0.0742 -0.02051,0.14893 -0.06104,0.2168 -0.13574,0.2373 -0.2915,0.48096 -0.4541,0.71143 l 0.43359,0.42676 c 0.09473,0.0947 0.15576,0.19629 0.15576,0.33838 0,0.25781 -0.19629,0.4541 -0.45361,0.4541 -0.14258,0 -0.2373,-0.0405 -0.3457,-0.14893 z m -0.99609,-0.98926 -0.90771,-0.91455 c -0.31836,0.16943 -0.44727,0.39307 -0.44727,0.62988 v 0.0137 c 0,0.33203 0.27783,0.55566 0.66406,0.55566 0.24414,0 0.47412,-0.1084 0.69092,-0.28467 z m 0.04785,-2.48633 v -0.0132 c 0,-0.27148 -0.18311,-0.44043 -0.44727,-0.44043 -0.27783,0 -0.46094,0.19629 -0.46094,0.48047 v 0.0137 c 0,0.20996 0.08154,0.36621 0.27783,0.58984 0.41357,-0.15625 0.63037,-0.3252 0.63037,-0.63037 z"
fill="#f0f0f0"
id="path173" />
<path
d="m 87.28564,104.93652 c 0,-0.29102 0.22998,-0.52148 0.52148,-0.52148 0.29102,0 0.52148,0.23047 0.52148,0.52148 v 1.39551 h 1.92432 v -1.39551 c 0,-0.29102 0.22998,-0.52148 0.52148,-0.52148 0.2915,0 0.52197,0.23047 0.52197,0.52148 v 3.78027 c 0,0.2915 -0.23047,0.52197 -0.52197,0.52197 -0.2915,0 -0.52148,-0.23047 -0.52148,-0.52197 v -1.42285 H 88.3286 v 1.42285 c 0,0.2915 -0.23047,0.52197 -0.52148,0.52197 -0.2915,0 -0.52148,-0.23047 -0.52148,-0.52197 z"
fill="#f0f0f0"
id="path175" />
</g>
</g>
<g
id="uuid-f5d828c0-96f2-44e6-9d4d-5f62c3fc741e"
data-name="components"
style="display:none"
inkscape:groupmode="layer">
<circle
id="uuid-1e250e98-a38d-4734-8fe7-6336cbbeddc8"
data-name="Rnd#LEDButton"
cx="20.5515"
cy="64.524193"
r="5"
fill="#ff0000" />
<circle
id="uuid-b6de7f5e-9f2c-453b-8341-7e31b841bb8f"
data-name="Clear#LEDButton"
cx="84.448502"
cy="64.524193"
r="5"
fill="#ff0000" />
<circle
id="uuid-e17cb700-c9b7-4a60-a533-95cb3f7f5bf5"
data-name="Push#LEDLightBezel"
cx="52.52298"
cy="64.524193"
r="5"
fill="#ff0000" />
<circle
id="uuid-91990096-3a4f-472b-8692-23e40f96ab1c"
data-name="Trig1#PJ301MPort"
cx="52.52298"
cy="124.17849"
r="5"
fill="#00ff00" />
<circle
id="uuid-02d0bc31-8f9a-4f8f-b780-b70205cac121"
data-name="Trig8#PJ301MPort"
cx="52.52298"
cy="333.67722"
r="5"
fill="#00ff00" />
<circle
id="uuid-9ab91612-d373-4a3f-b495-275c5ec70c01"
data-name="In8#PJ301MPort"
cx="20.551451"
cy="333.67722"
r="5"
fill="#00ff00" />
<circle
id="uuid-4e618ab2-ec1f-410c-81c8-21df07cc39e3"
data-name="Trig7#PJ301MPort"
cx="52.52298"
cy="303.77332"
r="5"
fill="#00ff00" />
<circle
id="uuid-3752ffb4-6ce0-445d-a0ce-fd0e532a01b5"
data-name="In7#PJ301MPort"
cx="20.551451"
cy="303.77332"
r="5"
fill="#00ff00" />
<circle
id="uuid-b2c1216d-c3e0-42a6-8240-cd4bd982da66"
data-name="Trig6#PJ301MPort"
cx="52.52298"
cy="273.86942"
r="5"
fill="#00ff00" />
<circle
id="uuid-64ac859b-83be-4f7e-8d05-144b71a96d7a"
data-name="In6#PJ301MPort"
cx="20.551451"
cy="273.86942"
r="5"
fill="#00ff00" />
<circle
id="uuid-c23294c1-46f0-4d58-b183-fb3356258791"
data-name="Trig5#PJ301MPort"
cx="52.52298"
cy="243.96552"
r="5"
fill="#00ff00" />
<circle
id="uuid-41d07e12-53fd-403c-9f27-e328aabd8015"
data-name="In5#PJ301MPort"
cx="20.551451"
cy="243.96552"
r="5"
fill="#00ff00" />
<circle
id="uuid-b18023f1-3d7b-4c75-9a8f-923be43e3b0a"
data-name="Trig4#PJ301MPort"
cx="52.52298"
cy="214.06161"
r="5"
fill="#00ff00" />
<circle
id="uuid-95f1e7a6-0f9a-46e1-9ce8-3d8bf64a9b72"
data-name="In4#PJ301MPort"
cx="20.551451"
cy="214.06161"
r="5"
fill="#00ff00" />
<circle
id="uuid-b1b0fab4-f5e8-47c9-aac8-62568fa0859c"
data-name="Trig3#PJ301MPort"
cx="52.52298"
cy="184.1577"
r="5"
fill="#00ff00" />
<circle
id="uuid-e2b39dfa-8cbd-403b-934f-04675d8ac692"
data-name="In3#PJ301MPort"
cx="20.551451"
cy="184.1577"
r="5"
fill="#00ff00" />
<circle
id="uuid-d9e5b74b-10b0-4b64-859a-b94ecc26d26a"
data-name="Trig2#PJ301MPort"
cx="52.52298"
cy="154.2538"
r="5"
fill="#00ff00" />
<circle
id="uuid-23c901a7-9697-4ec9-9320-9fb08e819f85"
data-name="In2#PJ301MPort"
cx="20.551451"
cy="154.2538"
r="5"
fill="#00ff00" />
<circle
id="uuid-63bdb5a5-eada-4080-87b6-932e5a54ddc0"
data-name="In1#PJ301MPort"
cx="20.551451"
cy="124.3499"
r="5"
fill="#00ff00" />
<circle
id="uuid-cb690557-696a-4156-8a08-4a0b4f732858"
data-name="Sh8#PJ301MPort"
cx="84.448547"
cy="333.67722"
r="5"
fill="#0000ff" />
<circle
id="uuid-35118042-4a44-4c4a-a43f-32400a86eeb4"
data-name="Sh7#PJ301MPort"
cx="84.448547"
cy="303.77332"
r="5"
fill="#0000ff" />
<circle
id="uuid-a21e2520-ac1a-4bd7-92f7-fb006108e80d"
data-name="Sh6#PJ301MPort"
cx="84.448547"
cy="273.86942"
r="5"
fill="#0000ff" />
<circle
id="uuid-c6c0b27e-ad3d-47ed-962e-908188e0bfc9"
data-name="Sh5#PJ301MPort"
cx="84.448547"
cy="243.96552"
r="5"
fill="#0000ff" />
<circle
id="uuid-b5fb3d28-0719-47ea-9d31-7f81e95c7d58"
data-name="Sh4#PJ301MPort"
cx="84.448547"
cy="214.06161"
r="5"
fill="#0000ff" />
<circle
id="uuid-599a5d60-4f87-49ea-827f-e2901d96cd6d"
data-name="Sh3#PJ301MPort"
cx="84.448547"
cy="184.1577"
r="5"
fill="#0000ff" />
<circle
id="uuid-6eb24cd9-861d-47ad-bbe2-16282f0eb52f"
data-name="Sh2#PJ301MPort"
cx="84.448547"
cy="154.2538"
r="5"
fill="#0000ff" />
<circle
id="uuid-5bc4e340-9a31-42ca-9781-936e4b23db19"
data-name="Sh1#PJ301MPort"
cx="84.448547"
cy="124.3499"
r="5"
fill="#0000ff" />
</g>
</svg>

+ 84
- 0
src/SHADR.cpp View File

@@ -0,0 +1,84 @@
#include "plugin.hpp"


struct SHADR : Module {
enum ParamId {
RND_PARAM,
PUSH_PARAM,
CLEAR_PARAM,
PARAMS_LEN
};
enum InputId {
ENUMS(IN_INPUTS, 8),
ENUMS(TRIG_INPUTS, 8),
INPUTS_LEN
};
enum OutputId {
ENUMS(SH_OUTPUTS, 8),
OUTPUTS_LEN
};
enum LightId {
LIGHTS_LEN
};

SHADR() {
config(PARAMS_LEN, INPUTS_LEN, OUTPUTS_LEN, LIGHTS_LEN);
configParam(RND_PARAM, 0.f, 1.f, 0.f, "");
configParam(PUSH_PARAM, 0.f, 1.f, 0.f, "");
configParam(CLEAR_PARAM, 0.f, 1.f, 0.f, "");
for (int i = 0; i < 8; i++) {
configInput(IN_INPUTS + i, string::f("Sample %d", i + 1));
configInput(TRIG_INPUTS + i, string::f("Trigger %d", i + 1));
configOutput(SH_OUTPUTS + i, string::f("Sample %d", i + 1));
}
}

void process(const ProcessArgs& args) override {
}
};


struct SHADRWidget : ModuleWidget {
SHADRWidget(SHADR* module) {
setModule(module);
setPanel(createPanel(asset::plugin(pluginInstance, "res/SHADR.svg")));

addChild(createWidget<ScrewSilver>(Vec(RACK_GRID_WIDTH, 0)));
addChild(createWidget<ScrewSilver>(Vec(box.size.x - 2 * RACK_GRID_WIDTH, 0)));
addChild(createWidget<ScrewSilver>(Vec(RACK_GRID_WIDTH, RACK_GRID_HEIGHT - RACK_GRID_WIDTH)));
addChild(createWidget<ScrewSilver>(Vec(box.size.x - 2 * RACK_GRID_WIDTH, RACK_GRID_HEIGHT - RACK_GRID_WIDTH)));

addParam(createParamCentered<VCVButton>(mm2px(Vec(6.96, 21.852)), module, SHADR::RND_PARAM));
addParam(createParamCentered<VCVLightBezel<>>(mm2px(Vec(17.788, 21.852)), module, SHADR::PUSH_PARAM));
addParam(createParamCentered<VCVButton>(mm2px(Vec(28.6, 21.852)), module, SHADR::CLEAR_PARAM));

addInput(createInputCentered<PJ301MPort>(mm2px(Vec(6.96, 42.113)), module, SHADR::IN_INPUTS + 0));
addInput(createInputCentered<PJ301MPort>(mm2px(Vec(17.788, 42.055)), module, SHADR::TRIG_INPUTS + 0));
addInput(createInputCentered<PJ301MPort>(mm2px(Vec(6.96, 52.241)), module, SHADR::IN_INPUTS + 1));
addInput(createInputCentered<PJ301MPort>(mm2px(Vec(17.788, 52.241)), module, SHADR::TRIG_INPUTS + 1));
addInput(createInputCentered<PJ301MPort>(mm2px(Vec(6.96, 62.368)), module, SHADR::IN_INPUTS + 2));
addInput(createInputCentered<PJ301MPort>(mm2px(Vec(17.788, 62.368)), module, SHADR::TRIG_INPUTS + 2));
addInput(createInputCentered<PJ301MPort>(mm2px(Vec(6.96, 72.496)), module, SHADR::IN_INPUTS + 3));
addInput(createInputCentered<PJ301MPort>(mm2px(Vec(17.788, 72.496)), module, SHADR::TRIG_INPUTS + 3));
addInput(createInputCentered<PJ301MPort>(mm2px(Vec(6.96, 82.623)), module, SHADR::IN_INPUTS + 4));
addInput(createInputCentered<PJ301MPort>(mm2px(Vec(17.788, 82.623)), module, SHADR::TRIG_INPUTS + 4));
addInput(createInputCentered<PJ301MPort>(mm2px(Vec(6.96, 92.75)), module, SHADR::IN_INPUTS + 5));
addInput(createInputCentered<PJ301MPort>(mm2px(Vec(17.788, 92.75)), module, SHADR::TRIG_INPUTS + 5));
addInput(createInputCentered<PJ301MPort>(mm2px(Vec(6.96, 102.878)), module, SHADR::IN_INPUTS + 6));
addInput(createInputCentered<PJ301MPort>(mm2px(Vec(17.788, 102.878)), module, SHADR::TRIG_INPUTS + 6));
addInput(createInputCentered<PJ301MPort>(mm2px(Vec(6.96, 113.005)), module, SHADR::IN_INPUTS + 7));
addInput(createInputCentered<PJ301MPort>(mm2px(Vec(17.788, 113.005)), module, SHADR::TRIG_INPUTS + 7));

addOutput(createOutputCentered<PJ301MPort>(mm2px(Vec(28.6, 42.113)), module, SHADR::SH_OUTPUTS + 0));
addOutput(createOutputCentered<PJ301MPort>(mm2px(Vec(28.6, 52.241)), module, SHADR::SH_OUTPUTS + 1));
addOutput(createOutputCentered<PJ301MPort>(mm2px(Vec(28.6, 62.368)), module, SHADR::SH_OUTPUTS + 2));
addOutput(createOutputCentered<PJ301MPort>(mm2px(Vec(28.6, 72.496)), module, SHADR::SH_OUTPUTS + 3));
addOutput(createOutputCentered<PJ301MPort>(mm2px(Vec(28.6, 82.623)), module, SHADR::SH_OUTPUTS + 4));
addOutput(createOutputCentered<PJ301MPort>(mm2px(Vec(28.6, 92.75)), module, SHADR::SH_OUTPUTS + 5));
addOutput(createOutputCentered<PJ301MPort>(mm2px(Vec(28.6, 102.878)), module, SHADR::SH_OUTPUTS + 6));
addOutput(createOutputCentered<PJ301MPort>(mm2px(Vec(28.6, 113.005)), module, SHADR::SH_OUTPUTS + 7));
}
};


Model* modelSHADR = createModel<SHADR, SHADRWidget>("SHADR");

+ 1
- 0
src/plugin.cpp View File

@@ -44,4 +44,5 @@ void init(Plugin* p) {
p->addModel(modelRescale);
p->addModel(modelRandomValues);
p->addModel(modelPush);
p->addModel(modelSHADR);
}

+ 1
- 0
src/plugin.hpp View File

@@ -44,6 +44,7 @@ extern Model* modelMult;
extern Model* modelRescale;
extern Model* modelRandomValues;
extern Model* modelPush;
extern Model* modelSHADR;


struct DigitalDisplay : Widget {


Loading…
Cancel
Save