--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/doc/canfestival_scheduling.svg Wed May 10 16:59:40 2006 +0200
@@ -0,0 +1,855 @@
+<?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://web.resource.org/cc/"
+ 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://inkscape.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ width="841.88977pt"
+ height="595.27557pt"
+ id="svg2"
+ sodipodi:version="0.32"
+ inkscape:version="0.43"
+ sodipodi:docbase="/home/edouard/taf/Pim/workspace_edouard/CanFestival-3/doc"
+ sodipodi:docname="canfestival_scheduling.svg"
+ version="1.0"
+ inkscape:export-filename="canfestival_scheduling.png"
+ inkscape:export-xdpi="87.57"
+ inkscape:export-ydpi="87.57">
+ <defs
+ id="defs4">
+ <marker
+ inkscape:stockid="Arrow1Lend"
+ orient="auto"
+ refY="0.0"
+ refX="0.0"
+ id="Arrow1Lend"
+ style="overflow:visible;">
+ <path
+ id="path3695"
+ 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:1.0pt;marker-start:none;"
+ transform="scale(0.8) rotate(180)" />
+ </marker>
+ <marker
+ inkscape:stockid="Arrow1Lstart"
+ orient="auto"
+ refY="0.0"
+ refX="0.0"
+ id="Arrow1Lstart"
+ style="overflow:visible">
+ <path
+ id="path3698"
+ 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:1.0pt;marker-start:none"
+ transform="scale(0.8)" />
+ </marker>
+ <linearGradient
+ id="linearGradient10920">
+ <stop
+ id="stop10922"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop10924"
+ offset="1"
+ style="stop-color:#88873c;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient2182">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop2184" />
+ <stop
+ style="stop-color:#48883c;stop-opacity:1;"
+ offset="1"
+ id="stop2186" />
+ </linearGradient>
+ </defs>
+ <sodipodi:namedview
+ id="base"
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1.0"
+ inkscape:pageopacity="0.0"
+ inkscape:pageshadow="2"
+ inkscape:zoom="1.2605926"
+ inkscape:cx="566.37525"
+ inkscape:cy="407.31628"
+ inkscape:document-units="px"
+ inkscape:current-layer="g12976"
+ showguides="true"
+ inkscape:guide-bbox="true"
+ inkscape:window-width="1592"
+ inkscape:window-height="1109"
+ inkscape:window-x="0"
+ inkscape:window-y="0"
+ showgrid="false"
+ gridspacingy="1cm"
+ gridspacingx="1cm"
+ gridoriginy="0cm"
+ gridoriginx="0cm"
+ inkscape:grid-points="true"
+ gridtolerance="0.1cm">
+ <sodipodi:guide
+ orientation="horizontal"
+ position="8.9749127"
+ id="guide11122" />
+ </sodipodi:namedview>
+ <metadata
+ id="metadata7">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ inkscape:label="Calque 1"
+ inkscape:groupmode="layer"
+ id="layer1">
+ <text
+ xml:space="preserve"
+ style="font-size:48px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:100%;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
+ x="524.84515"
+ y="53.523052"
+ id="text12903"
+ sodipodi:linespacing="100%"><tspan
+ sodipodi:role="line"
+ id="tspan12905"
+ x="524.84515"
+ y="53.523052">CanFestival Scheduling</tspan></text>
+ <g
+ id="g10042"
+ transform="matrix(0.716357,0,0,0.716357,344.9596,26.2812)">
+ <path
+ sodipodi:nodetypes="cc"
+ id="path12956"
+ d="M 874.99155,382.4845 L 874.99153,171.1786"
+ style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#8b8b8b;stroke-width:2.09393001;stroke-linecap:butt;stroke-linejoin:miter;marker-start:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+ <path
+ sodipodi:nodetypes="cc"
+ id="path4598"
+ d="M 705.56175,106.29921 L 250.39236,106.29921"
+ style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:2.09392977;stroke-linecap:butt;stroke-linejoin:miter;marker-start:url(#Arrow1Lstart);marker-end:url(#Arrow1Lend);stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+ <path
+ style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#8b8b8b;stroke-width:2.09392929;stroke-linecap:butt;stroke-linejoin:miter;marker-start:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+ d="M 226.71956,382.00309 L 226.71954,100.06877"
+ id="path4600"
+ sodipodi:nodetypes="cc" />
+ <path
+ sodipodi:nodetypes="cc"
+ id="path4602"
+ d="M 726.71956,380.03219 L 726.71954,100.44814"
+ style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#8b8b8b;stroke-width:2.09393001;stroke-linecap:butt;stroke-linejoin:miter;marker-start:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+ <text
+ sodipodi:linespacing="100%"
+ id="text4604"
+ y="101.77303"
+ x="477.21545"
+ style="font-size:12px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:100%;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
+ xml:space="preserve"><tspan
+ y="101.77303"
+ x="477.21545"
+ sodipodi:role="line"
+ id="tspan4608">Alarm A value</tspan></text>
+ <path
+ style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#8b8b8b;stroke-width:2.09393001;stroke-linecap:butt;stroke-linejoin:miter;marker-start:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+ d="M 370.12517,381.93391 L 370.12515,171.17543"
+ id="use5489"
+ sodipodi:nodetypes="cc" />
+ <path
+ style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#8b8b8b;stroke-width:2.09393048;stroke-linecap:butt;stroke-linejoin:miter;marker-start:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+ d="M 475.25215,380.28247 L 475.25213,171.1661"
+ id="use5491"
+ sodipodi:nodetypes="cc" />
+ <path
+ style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#8b8b8b;stroke-width:2.09393001;stroke-linecap:butt;stroke-linejoin:miter;marker-start:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+ d="M 555.25215,382.4845 L 555.25213,171.1786"
+ id="use5493"
+ sodipodi:nodetypes="cc" />
+ <path
+ style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#8b8b8b;stroke-width:2.09393001;stroke-linecap:butt;stroke-linejoin:miter;marker-start:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+ d="M 635.25215,382.4845 L 635.25213,171.1786"
+ id="use5495"
+ sodipodi:nodetypes="cc" />
+ <path
+ style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#8b8b8b;stroke-width:2.09393001;stroke-linecap:butt;stroke-linejoin:miter;marker-start:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+ d="M 715.25215,382.4845 L 715.25213,171.1786"
+ id="use5497"
+ sodipodi:nodetypes="cc" />
+ <path
+ style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#8b8b8b;stroke-width:2.09393001;stroke-linecap:butt;stroke-linejoin:miter;marker-start:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+ d="M 795.25215,382.4845 L 795.25213,171.1786"
+ id="use5499"
+ sodipodi:nodetypes="cc" />
+ <path
+ sodipodi:nodetypes="ccccccccccc"
+ id="path3711"
+ d="M 177.16535,354.3307 L 318.89764,212.59842 L 318.89764,354.3307 L 460.62992,212.59842 L 460.62992,354.3307 L 602.3622,212.59842 L 602.3622,354.3307 L 744.09449,212.59842 L 744.09449,354.3307 L 885.82677,212.59842 L 885.82677,354.3307"
+ style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:#ff0000;stroke-width:2.79190493;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+ <path
+ sodipodi:nodetypes="cc"
+ id="path1775"
+ d="M 177.16535,141.73228 L 177.16535,393.16085"
+ style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:4.18785763;stroke-linecap:butt;stroke-linejoin:miter;marker-start:url(#Arrow1Lstart);stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+ <path
+ sodipodi:nodetypes="cc"
+ id="path1777"
+ d="M 134.21825,354.3307 L 885.82677,354.3307"
+ style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:4.18785763;stroke-linecap:butt;stroke-linejoin:miter;marker-start:none;marker-end:url(#Arrow1Lend);stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+ <path
+ sodipodi:nodetypes="cc"
+ id="path7247"
+ d="M 533.84531,177.16535 L 498.51146,177.16535"
+ style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:2.09392977;stroke-linecap:butt;stroke-linejoin:miter;marker-start:url(#Arrow1Lstart);marker-end:url(#Arrow1Lend);stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+ <text
+ xml:space="preserve"
+ style="font-size:12px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:100%;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
+ x="517.80139"
+ y="154.63017"
+ id="text7255"
+ sodipodi:linespacing="100%"><tspan
+ id="tspan7257"
+ sodipodi:role="line"
+ x="517.80139"
+ y="154.63017">Alarm B</tspan><tspan
+ id="tspan7259"
+ sodipodi:role="line"
+ x="517.80139"
+ y="166.63017">value</tspan></text>
+ <text
+ sodipodi:linespacing="100%"
+ id="text7261"
+ y="154.63017"
+ x="597.80194"
+ style="font-size:12px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:100%;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
+ xml:space="preserve"><tspan
+ y="154.63017"
+ x="597.80194"
+ sodipodi:role="line"
+ id="tspan7263">Alarm B</tspan><tspan
+ y="166.63017"
+ x="597.80194"
+ sodipodi:role="line"
+ id="tspan7265">period</tspan></text>
+ <path
+ style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:2.09392977;stroke-linecap:butt;stroke-linejoin:miter;marker-start:url(#Arrow1Lstart);marker-end:url(#Arrow1Lend);stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+ d="M 614.62834,177.16535 L 577.72843,177.16535"
+ id="path7267"
+ sodipodi:nodetypes="cc" />
+ <text
+ xml:space="preserve"
+ style="font-size:12px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:100%;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
+ x="677.80286"
+ y="154.63017"
+ id="text7269"
+ sodipodi:linespacing="100%"><tspan
+ id="tspan7271"
+ sodipodi:role="line"
+ x="677.80286"
+ y="154.63017">Alarm B</tspan><tspan
+ id="tspan7273"
+ sodipodi:role="line"
+ x="677.80286"
+ y="166.63017">period</tspan></text>
+ <path
+ sodipodi:nodetypes="cc"
+ id="path7275"
+ d="M 692.67075,177.16535 L 657.33691,177.16535"
+ style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:2.09392977;stroke-linecap:butt;stroke-linejoin:miter;marker-start:url(#Arrow1Lstart);marker-end:url(#Arrow1Lend);stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+ <path
+ style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:2.09392977;stroke-linecap:butt;stroke-linejoin:miter;marker-start:url(#Arrow1Lstart);marker-end:url(#Arrow1Lend);stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+ d="M 772.27924,177.16535 L 737.33691,177.16535"
+ id="path7283"
+ sodipodi:nodetypes="cc" />
+ <path
+ style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#8b8b8b;stroke-width:2.09393024;stroke-linecap:butt;stroke-linejoin:miter;marker-start:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:6.00000635, 3.00000318, 1.50000159, 3.00000318;stroke-dashoffset:0;stroke-opacity:1"
+ d="M 218.5217,301.24549 L 392.43967,301.24548"
+ id="use5487"
+ sodipodi:nodetypes="cc" />
+ <path
+ sodipodi:nodetypes="cc"
+ id="path12962"
+ d="M 852.01864,177.16535 L 817.07631,177.16535"
+ style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:2.09392977;stroke-linecap:butt;stroke-linejoin:miter;marker-start:url(#Arrow1Lstart);marker-end:url(#Arrow1Lend);stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+ <text
+ sodipodi:linespacing="100%"
+ id="text12964"
+ y="154.63017"
+ x="758.76813"
+ style="font-size:12px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:100%;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
+ xml:space="preserve"><tspan
+ y="154.63017"
+ x="758.76813"
+ sodipodi:role="line"
+ id="tspan12966">Alarm B</tspan><tspan
+ y="166.63017"
+ x="758.76813"
+ sodipodi:role="line"
+ id="tspan12968">period</tspan></text>
+ <text
+ xml:space="preserve"
+ style="font-size:12px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:100%;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
+ x="836.94147"
+ y="154.63017"
+ id="text12970"
+ sodipodi:linespacing="100%"><tspan
+ id="tspan12972"
+ sodipodi:role="line"
+ x="836.94147"
+ y="154.63017">Alarm B</tspan><tspan
+ id="tspan12974"
+ sodipodi:role="line"
+ x="836.94147"
+ y="166.63017">period</tspan></text>
+ <path
+ style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:4.18785763;stroke-linecap:butt;stroke-linejoin:miter;marker-start:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+ d="M 134.21825,382.24974 L 885.82677,382.24974"
+ id="path13046"
+ sodipodi:nodetypes="cc" />
+ <path
+ style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:2.09392977;stroke-linecap:butt;stroke-linejoin:miter;marker-start:url(#Arrow1Lstart);marker-end:url(#Arrow1Lend);stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+ d="M 345.65605,178.46604 L 250.24484,178.46604"
+ id="path4586"
+ sodipodi:nodetypes="cc" />
+ <text
+ xml:space="preserve"
+ style="font-size:12px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:100%;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
+ x="297.33368"
+ y="174.25685"
+ id="text4592"
+ sodipodi:linespacing="100%"><tspan
+ dy="0 0 0 0 0"
+ id="tspan4596"
+ sodipodi:role="line"
+ x="297.33368"
+ y="174.25685">Clock range</tspan></text>
+ <text
+ sodipodi:linespacing="100%"
+ id="text13923"
+ y="373.52527"
+ x="201.32327"
+ style="font-size:12px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:100%;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
+ xml:space="preserve"><tspan
+ sodipodi:role="line"
+ id="tspan13927"
+ x="201.32327"
+ y="373.52527">t0</tspan></text>
+ <text
+ xml:space="preserve"
+ style="font-size:12px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:100%;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
+ x="301.83179"
+ y="373.52527"
+ id="text13929"
+ sodipodi:linespacing="100%"><tspan
+ y="373.52527"
+ x="301.83179"
+ id="tspan13931"
+ sodipodi:role="line">t1</tspan></text>
+ <text
+ xml:space="preserve"
+ style="font-size:12px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:100%;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
+ x="424.49796"
+ y="373.52527"
+ id="text13941"
+ sodipodi:linespacing="100%"><tspan
+ y="373.52527"
+ x="424.49796"
+ id="tspan13943"
+ sodipodi:role="line">t2</tspan></text>
+ <text
+ xml:space="preserve"
+ style="font-size:12px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:100%;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
+ x="516.11298"
+ y="373.52527"
+ id="text13945"
+ sodipodi:linespacing="100%"><tspan
+ y="373.52527"
+ x="516.11298"
+ id="tspan13947"
+ sodipodi:role="line">t3</tspan></text>
+ <text
+ xml:space="preserve"
+ style="font-size:12px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:100%;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
+ x="596.7655"
+ y="373.52527"
+ id="text13949"
+ sodipodi:linespacing="100%"><tspan
+ y="373.52527"
+ x="596.7655"
+ id="tspan13951"
+ sodipodi:role="line">t4</tspan></text>
+ <text
+ xml:space="preserve"
+ style="font-size:12px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:100%;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
+ x="678.98407"
+ y="373.52527"
+ id="text13953"
+ sodipodi:linespacing="100%"><tspan
+ y="373.52527"
+ x="678.98407"
+ id="tspan13955"
+ sodipodi:role="line">t5</tspan></text>
+ <text
+ xml:space="preserve"
+ style="font-size:12px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:100%;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
+ x="721.26794"
+ y="373.52527"
+ id="text13957"
+ sodipodi:linespacing="100%"><tspan
+ y="373.52527"
+ x="721.26794"
+ id="tspan13959"
+ sodipodi:role="line">t6</tspan></text>
+ <text
+ xml:space="preserve"
+ style="font-size:12px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:100%;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
+ x="761.98572"
+ y="373.52527"
+ id="text13961"
+ sodipodi:linespacing="100%"><tspan
+ y="373.52527"
+ x="761.98572"
+ id="tspan13963"
+ sodipodi:role="line">t7</tspan></text>
+ <text
+ xml:space="preserve"
+ style="font-size:12px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:100%;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
+ x="838.72308"
+ y="373.52527"
+ id="text13965"
+ sodipodi:linespacing="100%"><tspan
+ y="373.52527"
+ x="838.72308"
+ id="tspan13967"
+ sodipodi:role="line">t8</tspan></text>
+ <text
+ sodipodi:linespacing="100%"
+ id="text13969"
+ y="170.05028"
+ x="-249.31723"
+ style="font-size:16.93255615px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:100%;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
+ xml:space="preserve"
+ transform="matrix(-8.852537e-8,-1,1,-8.852537e-8,0,0)"><tspan
+ y="170.05028"
+ x="-249.31723"
+ sodipodi:role="line"
+ id="tspan13971"
+ dy="0 0 0 0 0">Clock value</tspan></text>
+ <text
+ xml:space="preserve"
+ style="font-size:16.93255424px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:100%;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
+ x="837.39917"
+ y="347.28287"
+ id="text13973"
+ sodipodi:linespacing="100%"><tspan
+ id="tspan13975"
+ sodipodi:role="line"
+ x="837.39917"
+ y="347.28287">Time</tspan></text>
+ </g>
+ <flowRoot
+ xml:space="preserve"
+ style="font-size:16px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:100%;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
+ id="flowRoot10132"><flowRegion
+ id="flowRegion10134"><path
+ style="color:#000000;fill:none;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible"
+ d="M 35.4375,82.0625 L 35.4375,449.96875 L 1027.5625,449.96875 L 1027.5625,312.71875 L 435.46875,312.71875 L 435.46875,82.0625 L 35.4375,82.0625 z "
+ id="rect10125"
+ sodipodi:nodetypes="ccccccc" /></flowRegion><flowPara
+ id="flowPara11039">A CanOpen must be able to take delayed actions.</flowPara><flowPara
+ id="flowPara11041" /><flowPara
+ id="flowPara11043"> As exemples, periodic sync emission, heartbeat production or SDO timeout need to set some alarms that will be called later and do the job.</flowPara><flowPara
+ id="flowPara11045" /><flowPara
+ id="flowPara11047">µC generaly do not have many anough free timers to handle all the CanOpen needs directly. Moreover, CanFestival internal data may be corrupt by reentrant calls. </flowPara><flowPara
+ id="flowPara11049" /><flowPara
+ id="flowPara11051">CanFestival implement a mini-scheduler (timer.c). It uses only one timer to mimic many timers. It manage an alarm table, and call alarms at time.</flowPara><flowPara
+ id="flowPara11053" /><flowPara
+ id="flowPara11055">Scheduler can handle short clock value ranges limitation found on some µC. As an example, value range for a 16bit clock counter with 4µs tick is crossed within 0.26 seconds... Long alarms must be segmented.</flowPara><flowPara
+ id="flowPara11057" /><flowPara
+ id="flowPara11059">Chronogram illustrate a long alarm (A) and a short periodic alarm (B), with a A value > clock range > B value. Values t0...t8 are successive setTimer values. t1 illustrates an intermediate call to TimeDispatch, caused by a delay longer than clock range. At the end of t1, TimeDispatch call will not trig any alarm callback.</flowPara></flowRoot> <g
+ id="g12976"
+ transform="translate(-42.01567,-16)">
+ <rect
+ rx="35.822395"
+ ry="28.965975"
+ y="478.94418"
+ x="524.47717"
+ height="254.36101"
+ width="230.30719"
+ id="rect11071"
+ style="color:#000000;fill:#4c9d40;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:4.34227848;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible" />
+ <rect
+ ry="35.82243"
+ y="479.1806"
+ x="100.05056"
+ height="253.97131"
+ width="256.29242"
+ id="rect12909"
+ style="color:#000000;fill:#6f6f6f;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:4.3422823;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible"
+ rx="35.822414" />
+ <text
+ xml:space="preserve"
+ style="font-size:16.62873268px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:center;text-decoration:none;line-height:100%;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:middle;opacity:1;color:#000000;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;font-family:Bitstream Vera Sans"
+ x="225.72682"
+ y="508.69693"
+ id="text12911"
+ sodipodi:linespacing="100%"><tspan
+ id="tspan12931"
+ sodipodi:role="line"
+ x="225.72682"
+ y="508.69693">HW interfaces</tspan></text>
+ <rect
+ rx="5.9955626"
+ ry="7.3854532"
+ y="685.56757"
+ x="646.5863"
+ height="22.156359"
+ width="97.684883"
+ id="rect11084"
+ style="color:#000000;fill:#efeeb1;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1.87500072;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible" />
+ <rect
+ style="color:#000000;fill:#efeeb1;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1.87500072;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible"
+ id="rect11090"
+ width="97.684883"
+ height="22.156359"
+ x="646.5863"
+ y="601.56757"
+ ry="7.3854532"
+ rx="5.9955626" />
+ <g
+ id="g7299"
+ transform="translate(-63.82361,349.4256)">
+ <rect
+ ry="14.770906"
+ y="183.78499"
+ x="501.7005"
+ height="176.13176"
+ width="183.69043"
+ id="rect7301"
+ style="opacity:1;color:#000000;fill:#efeeb1;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1.875;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible"
+ rx="14.770906" />
+ <text
+ sodipodi:linespacing="100%"
+ id="text7303"
+ y="215.93582"
+ x="593.54962"
+ style="font-size:16px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:100%;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
+ xml:space="preserve"><tspan
+ id="tspan7307"
+ y="215.93582"
+ x="593.54962"
+ sodipodi:role="line">SCHEDULING</tspan><tspan
+ id="tspan7309"
+ y="231.93582"
+ x="593.54962"
+ sodipodi:role="line">timer.c</tspan><tspan
+ id="tspan7331"
+ y="247.93582"
+ x="593.54962"
+ sodipodi:role="line" /><tspan
+ id="tspan7333"
+ y="263.93582"
+ x="593.54962"
+ sodipodi:role="line">SetAlarm</tspan><tspan
+ id="tspan7335"
+ y="279.93582"
+ x="593.54962"
+ sodipodi:role="line">DelAlarm</tspan><tspan
+ id="tspan10040"
+ y="295.93582"
+ x="593.54962"
+ sodipodi:role="line" /><tspan
+ id="tspan7337"
+ y="311.93582"
+ x="593.54962"
+ sodipodi:role="line" /><tspan
+ id="tspan11067"
+ y="327.93582"
+ x="593.54962"
+ sodipodi:role="line">TimeDispatch</tspan></text>
+ </g>
+ <g
+ id="g7311"
+ transform="translate(105.9332,176.2278)">
+ <rect
+ ry="20.027502"
+ y="354.35071"
+ x="36.736599"
+ height="177.14536"
+ width="183.69043"
+ id="rect7313"
+ style="color:#000000;fill:#efeeb1;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1.87499928;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible"
+ rx="20.028" />
+ <text
+ sodipodi:linespacing="100%"
+ id="text7315"
+ y="376.4429"
+ x="128.57401"
+ style="font-size:16px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:100%;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
+ xml:space="preserve"><tspan
+ id="tspan7319"
+ y="376.4429"
+ x="128.57401"
+ sodipodi:role="line">SYSTEM TIMERS</tspan><tspan
+ id="tspan7321"
+ y="392.4429"
+ x="128.57401"
+ sodipodi:role="line">INTERFACE</tspan><tspan
+ id="tspan7323"
+ y="408.4429"
+ x="128.57401"
+ sodipodi:role="line">(timers_xxx.c)</tspan><tspan
+ id="tspan7325"
+ y="424.4429"
+ x="128.57401"
+ sodipodi:role="line" /><tspan
+ id="tspan7327"
+ y="440.4429"
+ x="128.57401"
+ sodipodi:role="line">setTimer</tspan><tspan
+ id="tspan9156"
+ y="456.4429"
+ x="128.57401"
+ sodipodi:role="line" /><tspan
+ id="tspan7329"
+ y="472.4429"
+ x="128.57401"
+ sodipodi:role="line">getElapsedTime</tspan></text>
+ </g>
+ <g
+ transform="translate(72.86614,69.90356)"
+ id="g9140">
+ <path
+ sodipodi:type="arc"
+ style="opacity:1;color:#000000;fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:#8b8b8b;stroke-width:4;stroke-linecap:round;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible"
+ id="path7339"
+ sodipodi:cx="70.866142"
+ sodipodi:cy="602.36218"
+ sodipodi:rx="35.433071"
+ sodipodi:ry="35.433071"
+ d="M 106.29921 602.36218 A 35.433071 35.433071 0 1 1 35.433071,602.36218 A 35.433071 35.433071 0 1 1 106.29921 602.36218 z" />
+ <path
+ style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:3;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+ d="M 82.737476,583.94838 L 70.866142,602.3622 L 95.077981,621.53083"
+ id="path7341" />
+ <path
+ style="fill:#ff0000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ d="M 66.168336,567.89171 L 75.655709,567.89171 L 70.677437,572.86998 L 66.168336,567.89171 z "
+ id="path7343" />
+ <path
+ id="path9093"
+ d="M 66.168336,636.83266 L 75.655709,636.83266 L 70.677437,631.85439 L 66.168336,636.83266 z "
+ style="fill:#ff0000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
+ <path
+ id="path9097"
+ d="M 105.3368,597.66453 L 105.3368,607.15191 L 100.35852,602.17363 L 105.3368,597.66453 z "
+ style="fill:#ff0000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
+ <path
+ style="fill:#ff0000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ d="M 36.395337,607.06013 L 36.395347,597.57275 L 41.373618,602.55104 L 36.395337,607.06013 z "
+ id="path9106" />
+ <path
+ id="path9110"
+ d="M 86.032987,571.75922 L 90.249293,574.19351 L 86.759555,575.12858 L 86.032987,571.75922 z "
+ style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
+ <path
+ style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ d="M 99.302523,583.44266 L 101.73681,587.65897 L 98.24707,586.72389 L 99.302523,583.44266 z "
+ id="path9114" />
+ <path
+ id="path9118"
+ d="M 101.46928,617.52919 L 99.034993,621.7455 L 98.099926,618.25575 L 101.46928,617.52919 z "
+ style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
+ <path
+ style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ d="M 89.785827,630.79872 L 85.569518,633.23301 L 86.504601,629.74327 L 89.785827,630.79872 z "
+ id="path9122" />
+ <path
+ id="path9126"
+ d="M 55.699155,632.96543 L 51.482846,630.53114 L 54.972588,629.59608 L 55.699155,632.96543 z "
+ style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
+ <path
+ style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ d="M 42.429186,621.28179 L 39.994899,617.06549 L 43.484636,618.00057 L 42.429186,621.28179 z "
+ id="path9130" />
+ <path
+ id="path9134"
+ d="M 40.26142,587.19403 L 42.695698,582.97773 L 43.630764,586.46746 L 40.26142,587.19403 z "
+ style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
+ <path
+ style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ d="M 51.944928,573.92365 L 56.161223,571.48937 L 55.22615,574.97909 L 51.944928,573.92365 z "
+ id="path9138" />
+ </g>
+ <path
+ sodipodi:nodetypes="ccc"
+ id="path9158"
+ d="M 151.73228,629.79527 L 151.73228,608.3622 L 195.04994,608.3622"
+ style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;marker-start:url(#Arrow1Lstart);marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+ <path
+ style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;marker-start:url(#Arrow1Lstart);marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+ d="M 291.73228,608.3622 L 487.04994,608.3622"
+ id="path10033"
+ sodipodi:nodetypes="cc" />
+ <path
+ sodipodi:nodetypes="cc"
+ id="path11061"
+ d="M 310.80397,642.01812 L 487.04994,608.3622"
+ style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;marker-start:url(#Arrow1Lstart);marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+ <path
+ style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;marker-start:url(#Arrow1Lstart);marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+ d="M 460.62992,677.72422 L 420.05467,671.15709 L 426.91091,679.66223 L 386.33566,673.0951 L 393.1919,681.60025 L 352.61665,675.03312 L 359.47288,683.53826 L 318.89764,676.97113 L 325.75387,685.47628 L 285.17863,678.90915 L 292.03486,687.41429 L 251.45961,680.84716 L 258.31585,689.35231 L 217.7406,682.78518 L 224.59683,691.29033 L 184.02159,684.72319"
+ id="path11063"
+ sodipodi:nodetypes="cccccccccccccccc" />
+ <text
+ xml:space="preserve"
+ style="font-size:16.62873268px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:100%;writing-mode:lr-tb;text-anchor:middle;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
+ x="638.72174"
+ y="501.71832"
+ id="text11092"
+ sodipodi:linespacing="100%"><tspan
+ sodipodi:role="line"
+ id="tspan11094"
+ x="638.72174"
+ y="501.71832">CanFestival Library</tspan></text>
+ <rect
+ rx="5.9955626"
+ ry="7.3854532"
+ y="571.56757"
+ x="646.5863"
+ height="22.156359"
+ width="97.684883"
+ id="rect11105"
+ style="color:#000000;fill:#efeeb1;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1.87500072;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible" />
+ <rect
+ style="color:#000000;fill:#efeeb1;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1.87500072;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible"
+ id="rect11107"
+ width="97.684883"
+ height="22.156359"
+ x="646.5863"
+ y="543.56757"
+ ry="7.3854532"
+ rx="5.9955626" />
+ <rect
+ rx="5.9955626"
+ ry="7.3854532"
+ y="515.56757"
+ x="646.5863"
+ height="22.156359"
+ width="97.684883"
+ id="rect11109"
+ style="color:#000000;fill:#efeeb1;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1.87500072;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible" />
+ <path
+ sodipodi:nodetypes="cc"
+ id="path11111"
+ d="M 585.95363,596.76542 L 678.62072,527.77078"
+ style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;marker-start:url(#Arrow1Lstart);marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+ <path
+ style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;marker-start:url(#Arrow1Lstart);marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+ d="M 593.24574,602.3622 L 693.76589,558.06111"
+ id="path11113"
+ sodipodi:nodetypes="cc" />
+ <rect
+ style="color:#000000;fill:#efeeb1;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1.87500072;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible"
+ id="rect11086"
+ width="97.684883"
+ height="22.156359"
+ x="646.5863"
+ y="657.56757"
+ ry="7.3854532"
+ rx="5.9955626" />
+ <rect
+ rx="5.9955626"
+ ry="7.3854532"
+ y="629.56757"
+ x="646.5863"
+ height="22.156359"
+ width="97.684883"
+ id="rect11088"
+ style="color:#000000;fill:#efeeb1;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1.87500072;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible" />
+ <path
+ sodipodi:nodetypes="cccccccc"
+ id="path11073"
+ d="M 705.86851,671.50197 L 673.73942,666.30182 L 679.16848,673.03649 L 647.03942,667.83642 L 652.46845,674.57115 L 620.33941,669.37102 L 625.76844,676.1057 L 593.63939,670.90562"
+ style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:0.99999899;stroke-linecap:butt;stroke-linejoin:miter;marker-start:url(#Arrow1Lstart);marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+ <path
+ sodipodi:nodetypes="cccccccc"
+ id="path11077"
+ d="M 692.33796,620.124 L 661.38347,630.18092 L 669.29009,633.69036 L 638.33576,643.74725 L 646.24236,647.25666 L 615.28797,657.31358 L 623.19455,660.82301 L 592.24016,670.87988"
+ style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:0.99999911;stroke-linecap:butt;stroke-linejoin:miter;marker-start:url(#Arrow1Lstart);marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+ <path
+ sodipodi:nodetypes="cc"
+ id="path11118"
+ d="M 591.56294,613.03245 L 686.47377,588.91237"
+ style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;marker-start:url(#Arrow1Lstart);marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+ <rect
+ rx="35.822414"
+ style="color:#000000;fill:#6f6f6f;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:4.3422823;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible"
+ id="rect11124"
+ width="256.29242"
+ height="253.97131"
+ x="780.05054"
+ y="479.1806"
+ ry="35.82243" />
+ <text
+ sodipodi:linespacing="100%"
+ id="text10926"
+ y="502.68628"
+ x="906.5498"
+ style="font-size:16.62873268px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:center;text-decoration:none;line-height:100%;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:middle;opacity:1;color:#000000;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;font-family:Bitstream Vera Sans"
+ xml:space="preserve"><tspan
+ id="tspan10987"
+ y="502.68628"
+ x="906.54981"
+ sodipodi:role="line">Application</tspan></text>
+ <g
+ transform="translate(294.5898,383.1441)"
+ id="g11128">
+ <rect
+ rx="14.770906"
+ style="opacity:1;color:#000000;fill:#efeeb1;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1.875;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible"
+ id="rect11130"
+ width="183.69043"
+ height="64.246498"
+ x="501.7005"
+ y="183.78499"
+ ry="14.770906" />
+ <text
+ xml:space="preserve"
+ style="font-size:16px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:100%;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
+ x="593.54962"
+ y="215.93582"
+ id="text11132"
+ sodipodi:linespacing="100%"><tspan
+ sodipodi:role="line"
+ x="593.54962"
+ y="215.93582"
+ id="tspan11148">Callbacks</tspan></text>
+ </g>
+ <path
+ style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;marker-start:url(#Arrow1Lstart);marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+ d="M 594.73605,621.7585 L 824.50409,588.11909"
+ id="path11185"
+ sodipodi:nodetypes="cc" />
+ <path
+ style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:0.99999905;stroke-linecap:butt;stroke-linejoin:miter;marker-start:url(#Arrow1Lstart);marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+ d="M 799.92708,608.42646 L 737.25827,618.44636 L 751.76709,625.81879 L 689.09859,635.83868 L 703.60736,643.21104 L 640.93876,653.23097 L 655.44748,660.60337 L 592.77888,670.62321"
+ id="path11187"
+ sodipodi:nodetypes="cccccccc" />
+ <path
+ style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:0.99999899;stroke-linecap:butt;stroke-linejoin:miter;marker-start:url(#Arrow1Lstart);marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+ d="M 703.13448,701.80457 L 673.56253,688.20972 L 676.99499,696.15004 L 647.42305,682.55528 L 650.85547,690.49565 L 621.28356,676.90084 L 624.716,684.84116 L 595.14407,671.24639"
+ id="path11189"
+ sodipodi:nodetypes="cccccccc" />
+ </g>
+ </g>
+</svg>