298 lines
21 KiB
XML
298 lines
21 KiB
XML
<svg xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" aria-roledescription="classDiagram" role="graphics-document document" viewBox="0 0 613.46875 625" style="max-width: 613.469px; background-color: white;" width="613.46875" id="my-svg">
|
|
<style>#my-svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#my-svg .error-icon{fill:#552222;}#my-svg .error-text{fill:#552222;stroke:#552222;}#my-svg .edge-thickness-normal{stroke-width:2px;}#my-svg .edge-thickness-thick{stroke-width:3.5px;}#my-svg .edge-pattern-solid{stroke-dasharray:0;}#my-svg .edge-pattern-dashed{stroke-dasharray:3;}#my-svg .edge-pattern-dotted{stroke-dasharray:2;}#my-svg .marker{fill:#333333;stroke:#333333;}#my-svg .marker.cross{stroke:#333333;}#my-svg svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#my-svg g.classGroup text{fill:#9370DB;fill:#131300;stroke:none;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:10px;}#my-svg g.classGroup text .title{font-weight:bolder;}#my-svg .nodeLabel,#my-svg .edgeLabel{color:#131300;}#my-svg .edgeLabel .label rect{fill:#ECECFF;}#my-svg .label text{fill:#131300;}#my-svg .edgeLabel .label span{background:#ECECFF;}#my-svg .classTitle{font-weight:bolder;}#my-svg .node rect,#my-svg .node circle,#my-svg .node ellipse,#my-svg .node polygon,#my-svg .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#my-svg .divider{stroke:#9370DB;stroke-width:1;}#my-svg g.clickable{cursor:pointer;}#my-svg g.classGroup rect{fill:#ECECFF;stroke:#9370DB;}#my-svg g.classGroup line{stroke:#9370DB;stroke-width:1;}#my-svg .classLabel .box{stroke:none;stroke-width:0;fill:#ECECFF;opacity:0.5;}#my-svg .classLabel .label{fill:#9370DB;font-size:10px;}#my-svg .relation{stroke:#333333;stroke-width:1;fill:none;}#my-svg .dashed-line{stroke-dasharray:3;}#my-svg .dotted-line{stroke-dasharray:1 2;}#my-svg #compositionStart,#my-svg .composition{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #compositionEnd,#my-svg .composition{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #dependencyStart,#my-svg .dependency{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #dependencyStart,#my-svg .dependency{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#my-svg #extensionStart,#my-svg .extension{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #extensionEnd,#my-svg .extension{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #aggregationStart,#my-svg .aggregation{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #aggregationEnd,#my-svg .aggregation{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #lollipopStart,#my-svg .lollipop{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg #lollipopEnd,#my-svg .lollipop{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#my-svg .edgeTerminals{font-size:11px;}#my-svg .classTitleText{text-anchor:middle;font-size:18px;fill:#333;}#my-svg :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;}</style>
|
|
<g>
|
|
<defs>
|
|
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker aggregation classDiagram" id="classDiagram-aggregationStart">
|
|
<path d="M 18,7 L9,13 L1,7 L9,1 Z"/>
|
|
</marker>
|
|
<style type="text/css">a:hover { text-decoration: underline; }</style>
|
|
</defs>
|
|
<defs>
|
|
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="19" class="marker aggregation classDiagram" id="classDiagram-aggregationEnd">
|
|
<path d="M 18,7 L9,13 L1,7 L9,1 Z"/>
|
|
</marker>
|
|
</defs>
|
|
<defs>
|
|
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker extension classDiagram" id="classDiagram-extensionStart">
|
|
<path d="M 1,7 L18,13 V 1 Z"/>
|
|
</marker>
|
|
</defs>
|
|
<defs>
|
|
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="19" class="marker extension classDiagram" id="classDiagram-extensionEnd">
|
|
<path d="M 1,1 V 13 L18,7 Z"/>
|
|
</marker>
|
|
</defs>
|
|
<defs>
|
|
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker composition classDiagram" id="classDiagram-compositionStart">
|
|
<path d="M 18,7 L9,13 L1,7 L9,1 Z"/>
|
|
</marker>
|
|
</defs>
|
|
<defs>
|
|
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="19" class="marker composition classDiagram" id="classDiagram-compositionEnd">
|
|
<path d="M 18,7 L9,13 L1,7 L9,1 Z"/>
|
|
</marker>
|
|
</defs>
|
|
<defs>
|
|
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker dependency classDiagram" id="classDiagram-dependencyStart">
|
|
<path d="M 5,7 L9,13 L1,7 L9,1 Z"/>
|
|
</marker>
|
|
</defs>
|
|
<defs>
|
|
<marker orient="auto" markerHeight="28" markerWidth="20" refY="7" refX="19" class="marker dependency classDiagram" id="classDiagram-dependencyEnd">
|
|
<path d="M 18,7 L9,13 L14,7 L9,1 Z"/>
|
|
</marker>
|
|
</defs>
|
|
<defs>
|
|
<marker orient="auto" markerHeight="240" markerWidth="190" refY="7" refX="0" class="marker lollipop classDiagram" id="classDiagram-lollipopStart">
|
|
<circle r="6" cy="7" cx="6" fill="white" stroke="black"/>
|
|
</marker>
|
|
</defs>
|
|
<g class="root">
|
|
<g class="clusters"/>
|
|
<g class="edgePaths">
|
|
<path marker-end="url(#classDiagram-extensionEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id1" d="M153.74609375,510L153.74609375,514.1666666666666C153.74609375,518.3333333333334,153.74609375,526.6666666666666,153.74609375,535C153.74609375,543.3333333333334,153.74609375,551.6666666666666,153.74609375,555.8333333333334L153.74609375,560"/>
|
|
<path marker-end="url(#classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-solid relation" id="id2" d="M365.4854180301047,385L357.17339523342054,390.6666666666667C348.8613724367365,396.3333333333333,332.23732684336824,407.6666666666667,309.2493457133508,419C286.2613645833333,430.3333333333333,256.9094479166667,441.6666666666667,242.23348958333335,447.3333333333333L227.55753125,453"/>
|
|
<path marker-end="url(#classDiagram-extensionEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id3" d="M469.72449689136124,385L471.017158867801,390.6666666666667C472.30982084424085,396.3333333333333,474.8951447971204,407.6666666666667,476.18780677356017,419C477.48046875,430.3333333333333,477.48046875,441.6666666666667,477.48046875,447.3333333333333L477.48046875,453"/>
|
|
<path marker-end="url(#classDiagram-extensionEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id4" d="M131.9609375,352L131.9609375,363.1666666666667C131.9609375,374.3333333333333,131.9609375,396.6666666666667,133.936125,413.5C135.9113125,430.3333333333333,139.8616875,441.6666666666667,141.836875,447.3333333333333L143.8120625,453"/>
|
|
<path marker-end="url(#classDiagram-dependencyEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id5" d="M207.5998101635514,212L194.99333138629285,216.16666666666666C182.38685260903426,220.33333333333334,157.17389505451715,228.66666666666666,144.56741627725856,242.5C131.9609375,256.3333333333333,131.9609375,275.6666666666667,131.9609375,285.3333333333333L131.9609375,295"/>
|
|
<path marker-end="url(#classDiagram-extensionEnd)" style="fill:none" class="edge-pattern-dashed relation" id="id6" d="M380.0564398364486,212L392.6629186137072,216.16666666666666C405.2693973909657,220.33333333333334,430.4823549454829,228.66666666666666,443.0888337227414,237C455.6953125,245.33333333333334,455.6953125,253.66666666666666,455.6953125,257.8333333333333L455.6953125,262"/>
|
|
<path marker-start="url(#classDiagram-aggregationStart)" style="fill:none" class="edge-pattern-solid relation" id="id7" d="M293.828125,87L293.828125,92.66666666666667C293.828125,98.33333333333333,293.828125,109.66666666666667,293.828125,121C293.828125,132.33333333333334,293.828125,143.66666666666666,293.828125,149.33333333333334L293.828125,155"/>
|
|
</g>
|
|
<g class="edgeLabels">
|
|
<g transform="translate(undefined, undefined)" class="edgeLabel">
|
|
<g transform="translate(0, 0)" class="label">
|
|
<foreignObject height="0" width="0">
|
|
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
|
|
<span class="edgeLabel">
|
|
<span class="edgeLabel"/>
|
|
</span>
|
|
</div>
|
|
</foreignObject>
|
|
</g>
|
|
</g>
|
|
<g transform="translate(315.61328125, 419)" class="edgeLabel">
|
|
<g transform="translate(-23.5703125, -9)" class="label">
|
|
<foreignObject height="18" width="47.140625">
|
|
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
|
|
<span class="edgeLabel">
|
|
<span class="edgeLabel">-signal</span>
|
|
</span>
|
|
</div>
|
|
</foreignObject>
|
|
</g>
|
|
</g>
|
|
<g transform="translate(undefined, undefined)" class="edgeLabel">
|
|
<g transform="translate(0, 0)" class="label">
|
|
<foreignObject height="0" width="0">
|
|
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
|
|
<span class="edgeLabel">
|
|
<span class="edgeLabel"/>
|
|
</span>
|
|
</div>
|
|
</foreignObject>
|
|
</g>
|
|
</g>
|
|
<g transform="translate(undefined, undefined)" class="edgeLabel">
|
|
<g transform="translate(0, 0)" class="label">
|
|
<foreignObject height="0" width="0">
|
|
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
|
|
<span class="edgeLabel">
|
|
<span class="edgeLabel"/>
|
|
</span>
|
|
</div>
|
|
</foreignObject>
|
|
</g>
|
|
</g>
|
|
<g transform="translate(undefined, undefined)" class="edgeLabel">
|
|
<g transform="translate(0, 0)" class="label">
|
|
<foreignObject height="0" width="0">
|
|
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
|
|
<span class="edgeLabel">
|
|
<span class="edgeLabel"/>
|
|
</span>
|
|
</div>
|
|
</foreignObject>
|
|
</g>
|
|
</g>
|
|
<g transform="translate(undefined, undefined)" class="edgeLabel">
|
|
<g transform="translate(0, 0)" class="label">
|
|
<foreignObject height="0" width="0">
|
|
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
|
|
<span class="edgeLabel">
|
|
<span class="edgeLabel"/>
|
|
</span>
|
|
</div>
|
|
</foreignObject>
|
|
</g>
|
|
</g>
|
|
<g transform="translate(293.828125, 121)" class="edgeLabel">
|
|
<g transform="translate(-23.3515625, -9)" class="label">
|
|
<foreignObject height="18" width="46.703125">
|
|
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
|
|
<span class="edgeLabel">
|
|
<span class="edgeLabel">+sink1</span>
|
|
</span>
|
|
</div>
|
|
</foreignObject>
|
|
</g>
|
|
</g>
|
|
</g>
|
|
<g class="nodes">
|
|
<a transform="translate(153.74609375, 481.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/563014901639bc5a0152a82d6567fd340dc5f5a5/tests/t00044/t00044.cc#L9">
|
|
<g title="signal_handler" id="classId-C_0001591729735727316875-0" class="node default clickable">
|
|
<rect height="57" width="248.84375" y="-28.5" x="-124.421875" class="outer title-state"/>
|
|
<line y2="1.5" y1="1.5" x2="124.421875" x1="-124.421875" class="divider"/>
|
|
<line y2="17.5" y1="17.5" x2="124.421875" x1="-124.421875" class="divider"/>
|
|
<g class="label">
|
|
<foreignObject height="0" width="0">
|
|
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
|
|
<span class="nodeLabel"/>
|
|
</div>
|
|
</foreignObject>
|
|
<foreignObject transform="translate( -116.921875, -21)" height="18" width="233.84375" class="classTitle">
|
|
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
|
|
<span class="nodeLabel">signal_handler<Ret(Args...),A></span>
|
|
</div>
|
|
</foreignObject>
|
|
</g>
|
|
</g>
|
|
</a>
|
|
<a transform="translate(455.6953125, 323.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/563014901639bc5a0152a82d6567fd340dc5f5a5/tests/t00044/t00044.cc#L9">
|
|
<g title="sink" id="classId-C_0000559574389062594251-1" class="node default clickable">
|
|
<rect height="123" width="299.546875" y="-61.5" x="-149.7734375" class="outer title-state"/>
|
|
<line y2="-31.5" y1="-31.5" x2="149.7734375" x1="-149.7734375" class="divider"/>
|
|
<line y2="6.5" y1="6.5" x2="149.7734375" x1="-149.7734375" class="divider"/>
|
|
<g class="label">
|
|
<foreignObject height="0" width="0">
|
|
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
|
|
<span class="nodeLabel"/>
|
|
</div>
|
|
</foreignObject>
|
|
<foreignObject transform="translate( -142.2734375, -54)" height="18" width="284.546875" class="classTitle">
|
|
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
|
|
<span class="nodeLabel">sink<signal_handler<Ret(Args...),A>></span>
|
|
</div>
|
|
</foreignObject>
|
|
<foreignObject transform="translate( -142.2734375, -20)" height="18" width="115.625">
|
|
<div xmlns="http://www.w3.org/1999/xhtml" style="font-style: italic; display: inline-block; white-space: nowrap;">
|
|
<span style="font-style:italic;" class="nodeLabel">-signal : signal_t </span>
|
|
</div>
|
|
</foreignObject>
|
|
<foreignObject transform="translate( -142.2734375, 14)" height="18" width="182.75">
|
|
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
|
|
<span class="nodeLabel">+sink(signal_t & sh) : void</span>
|
|
</div>
|
|
</foreignObject>
|
|
<foreignObject transform="translate( -142.2734375, 36)" height="18" width="156.390625">
|
|
<div xmlns="http://www.w3.org/1999/xhtml" style="font-style: italic; display: inline-block; white-space: nowrap;">
|
|
<span style="font-style:italic;" class="nodeLabel">+get_signal() : CastTo</span>
|
|
</div>
|
|
</foreignObject>
|
|
</g>
|
|
</g>
|
|
</a>
|
|
<a transform="translate(131.9609375, 323.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/563014901639bc5a0152a82d6567fd340dc5f5a5/tests/t00044/t00044.cc#L4">
|
|
<g title="signal_handler" id="classId-C_0000103559998624864011-2" class="node default clickable">
|
|
<rect height="57" width="247.921875" y="-28.5" x="-123.9609375" class="outer title-state"/>
|
|
<line y2="1.5" y1="1.5" x2="123.9609375" x1="-123.9609375" class="divider"/>
|
|
<line y2="17.5" y1="17.5" x2="123.9609375" x1="-123.9609375" class="divider"/>
|
|
<g class="label">
|
|
<foreignObject height="0" width="0">
|
|
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
|
|
<span class="nodeLabel"/>
|
|
</div>
|
|
</foreignObject>
|
|
<foreignObject transform="translate( -116.4609375, -21)" height="18" width="232.921875" class="classTitle">
|
|
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
|
|
<span class="nodeLabel">signal_handler<void(int),bool></span>
|
|
</div>
|
|
</foreignObject>
|
|
</g>
|
|
</g>
|
|
</a>
|
|
<a transform="translate(293.828125, 183.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/563014901639bc5a0152a82d6567fd340dc5f5a5/tests/t00044/t00044.cc#L4">
|
|
<g title="sink" id="classId-C_0001718007222067272862-3" class="node default clickable">
|
|
<rect height="57" width="298.625" y="-28.5" x="-149.3125" class="outer title-state"/>
|
|
<line y2="1.5" y1="1.5" x2="149.3125" x1="-149.3125" class="divider"/>
|
|
<line y2="17.5" y1="17.5" x2="149.3125" x1="-149.3125" class="divider"/>
|
|
<g class="label">
|
|
<foreignObject height="0" width="0">
|
|
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
|
|
<span class="nodeLabel"/>
|
|
</div>
|
|
</foreignObject>
|
|
<foreignObject transform="translate( -141.8125, -21)" height="18" width="283.625" class="classTitle">
|
|
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
|
|
<span class="nodeLabel">sink<signal_handler<void(int),bool>></span>
|
|
</div>
|
|
</foreignObject>
|
|
</g>
|
|
</g>
|
|
</a>
|
|
<a transform="translate(293.828125, 47.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/563014901639bc5a0152a82d6567fd340dc5f5a5/tests/t00044/t00044.cc#L33">
|
|
<g title="R" id="classId-C_0001644484569399365272-4" class="node default clickable">
|
|
<rect height="79" width="340.984375" y="-39.5" x="-170.4921875" class="outer title-state"/>
|
|
<line y2="-9.5" y1="-9.5" x2="170.4921875" x1="-170.4921875" class="divider"/>
|
|
<line y2="28.5" y1="28.5" x2="170.4921875" x1="-170.4921875" class="divider"/>
|
|
<g class="label">
|
|
<foreignObject height="0" width="0">
|
|
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
|
|
<span class="nodeLabel"/>
|
|
</div>
|
|
</foreignObject>
|
|
<foreignObject transform="translate( -5.78125, -32)" height="18" width="11.5625" class="classTitle">
|
|
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
|
|
<span class="nodeLabel">R</span>
|
|
</div>
|
|
</foreignObject>
|
|
<foreignObject transform="translate( -162.9921875, 2)" height="18" width="325.984375">
|
|
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
|
|
<span class="nodeLabel">+sink1 : sink<signal_handler<void (int),bool>></span>
|
|
</div>
|
|
</foreignObject>
|
|
</g>
|
|
</g>
|
|
</a>
|
|
<a transform="translate(153.74609375, 588.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/563014901639bc5a0152a82d6567fd340dc5f5a5/tests/t00044/t00044.cc#L6">
|
|
<g title="signal_handler" id="classId-C_0000276594465967577895-5" class="node default clickable">
|
|
<rect height="57" width="170.609375" y="-28.5" x="-85.3046875" class="outer title-state"/>
|
|
<line y2="1.5" y1="1.5" x2="85.3046875" x1="-85.3046875" class="divider"/>
|
|
<line y2="17.5" y1="17.5" x2="85.3046875" x1="-85.3046875" class="divider"/>
|
|
<g class="label">
|
|
<foreignObject height="0" width="0">
|
|
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
|
|
<span class="nodeLabel"/>
|
|
</div>
|
|
</foreignObject>
|
|
<foreignObject transform="translate( -77.8046875, -21)" height="18" width="155.609375" class="classTitle">
|
|
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
|
|
<span class="nodeLabel">signal_handler<T,A></span>
|
|
</div>
|
|
</foreignObject>
|
|
</g>
|
|
</g>
|
|
</a>
|
|
<a transform="translate(477.48046875, 481.5)" xlink:href="https://github.com/bkryza/clang-uml/blob/563014901639bc5a0152a82d6567fd340dc5f5a5/tests/t00044/t00044.cc#L4">
|
|
<g title="sink" id="classId-C_0001759724482769288325-6" class="node default clickable">
|
|
<rect height="57" width="75.484375" y="-28.5" x="-37.7421875" class="outer title-state"/>
|
|
<line y2="1.5" y1="1.5" x2="37.7421875" x1="-37.7421875" class="divider"/>
|
|
<line y2="17.5" y1="17.5" x2="37.7421875" x1="-37.7421875" class="divider"/>
|
|
<g class="label">
|
|
<foreignObject height="0" width="0">
|
|
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
|
|
<span class="nodeLabel"/>
|
|
</div>
|
|
</foreignObject>
|
|
<foreignObject transform="translate( -30.2421875, -21)" height="18" width="60.484375" class="classTitle">
|
|
<div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; white-space: nowrap;">
|
|
<span class="nodeLabel">sink<T></span>
|
|
</div>
|
|
</foreignObject>
|
|
</g>
|
|
</g>
|
|
</a>
|
|
</g>
|
|
</g>
|
|
</g>
|
|
</svg>
|