Uploaded wiki images.
[jpf-core.git] / docs / graphics / mji-functions.svg
diff --git a/docs/graphics/mji-functions.svg b/docs/graphics/mji-functions.svg
new file mode 100644 (file)
index 0000000..bac9b5c
--- /dev/null
@@ -0,0 +1,3 @@
+<?xml version="1.0" encoding="utf-8" standalone="no"?>
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xl="http://www.w3.org/1999/xlink" version="1.1" viewBox="20 17 583 414" width="583pt" height="414pt" xmlns:dc="http://purl.org/dc/elements/1.1/"><metadata> Produced by OmniGraffle 6.1 <dc:date>2011-05-24 04:01:26 +0000</dc:date></metadata><defs><marker orient="auto" overflow="visible" markerUnits="strokeWidth" id="SharpArrow_Marker" viewBox="-6 -4 10 8" markerWidth="10" markerHeight="8" color="black"><g><path d="M -5 0 L 3 3 L 0 0 L 0 0 L 3 -3 Z" fill="currentColor" stroke="currentColor" stroke-width="1"/></g></marker><marker orient="auto" overflow="visible" markerUnits="strokeWidth" id="SharpArrow_Marker_2" viewBox="-4 -4 10 8" markerWidth="10" markerHeight="8" color="black"><g><path d="M 5 0 L -3 -3 L 0 0 L 0 0 L -3 3 Z" fill="currentColor" stroke="currentColor" stroke-width="1"/></g></marker><font-face font-family="Monaco" font-size="12" units-per-em="1000" underline-position="-37.597656" underline-thickness="75.683594" slope="0" x-height="560.54688" cap-height="780.27344" ascent="1e3" descent="-250" font-weight="500"><font-face-src><font-face-name name="Monaco"/></font-face-src></font-face><font-face font-family="Helvetica" font-size="14" units-per-em="1000" underline-position="-75.683594" underline-thickness="49.316406" slope="-857.14286" x-height="522.94922" cap-height="717.28516" ascent="770.01953" descent="-229.98047" font-style="italic" font-weight="500"><font-face-src><font-face-name name="Helvetica-Oblique"/></font-face-src></font-face><font-face font-family="Helvetica" font-size="12" units-per-em="1000" underline-position="-75.683594" underline-thickness="49.316406" slope="-1e3" x-height="522.94922" cap-height="717.28516" ascent="770.01953" descent="-229.98047" font-style="italic" font-weight="500"><font-face-src><font-face-name name="Helvetica-Oblique"/></font-face-src></font-face></defs><g stroke="none" stroke-opacity="1" stroke-dasharray="none" fill="none" fill-opacity="1"><title>Canvas 1</title><rect fill="white" width="768.0188" height="588.0188"/><g><title>Layer 1</title><rect x="57" y="164" width="451" height="55" fill="red" fill-opacity=".11"/><rect x="57" y="164" width="451" height="55" stroke="red" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><line x1="288" y1="152.9" x2="288" y2="235" marker-start="url(#SharpArrow_Marker)" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><line x1="180" y1="155" x2="180" y2="228.1" marker-end="url(#SharpArrow_Marker_2)" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><line x1="37" y1="192" x2="540" y2="192" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" stroke-dasharray="10,3,2,3"/><text transform="translate(34 259.494)" fill="black"><tspan font-family="Monaco" font-size="12" font-weight="500" x="0" y="12" textLength="43.20703">class </tspan><tspan font-family="Monaco" font-size="12" font-weight="500" fill="red" x="43.20703" y="12" textLength="122.41992">JPF_x_y_z_MyClass</tspan><tspan font-family="Monaco" font-size="12" font-weight="500" x="165.62695" y="12" textLength="14.402344"> {</tspan><tspan font-family="Monaco" font-size="12" font-weight="500" x="0" y="28" textLength="144.02344">  public static int </tspan><tspan font-family="Monaco" font-size="12" font-weight="500" x="0" y="44" textLength="43.20703">      </tspan><tspan font-family="Monaco" font-size="12" font-weight="500" fill="red" x="43.20703" y="44" textLength="331.2539">foo__ILjava_lang_String_2__Ljava_lang_String_2</tspan><tspan font-family="Monaco" font-size="12" font-weight="500" x="374.46094" y="44" textLength="180.0293"> (MJIEnv env, int objRef,</tspan><tspan font-family="Monaco" font-size="12" font-weight="500" x="0" y="60" textLength="518.48438">                                                      int i, int sRef) {</tspan><tspan font-family="Monaco" font-size="12" font-weight="500" x="0" y="76" textLength="295.24805">    String s = env.getStringObject(sRef);</tspan><tspan font-family="Monaco" font-size="12" font-weight="500" x="0" y="92" textLength="43.20703">    ..</tspan><tspan font-family="Monaco" font-size="12" font-weight="500" x="0" y="108" textLength="230.4375">    int ref = env.newString(..);</tspan><tspan font-family="Monaco" font-size="12" font-weight="500" x="0" y="124" textLength="108.01758">    return ref;</tspan><tspan font-family="Monaco" font-size="12" font-weight="500" x="0" y="140" textLength="21.603516">  }</tspan><tspan font-family="Monaco" font-size="12" font-weight="500" x="0" y="156" textLength="7.201172">}</tspan></text><text transform="translate(83 31.125)" fill="black"><tspan font-family="Monaco" font-size="12" font-weight="500" x="0" y="12" textLength="57.609375">package </tspan><tspan font-family="Monaco" font-size="12" font-weight="500" fill="red" x="57.609375" y="12" textLength="36.00586">x.y.z</tspan><tspan font-family="Monaco" font-size="12" font-weight="500" x="93.615234" y="12" textLength="7.201172">;</tspan><tspan font-family="Monaco" font-size="12" font-weight="500" x="0" y="28" textLength="43.20703">class </tspan><tspan font-family="Monaco" font-size="12" font-weight="500" fill="red" x="43.20703" y="28" textLength="50.408203">MyClass</tspan><tspan font-family="Monaco" font-size="12" font-weight="500" x="93.615234" y="28" textLength="14.402344"> {</tspan><tspan font-family="Monaco" font-size="12" font-weight="500" x="0" y="44" textLength="28.804688">  ..</tspan><tspan font-family="Monaco" font-size="12" font-weight="500" x="0" y="60" textLength="115.21875">  native String </tspan><tspan font-family="Monaco" font-size="12" font-weight="500" fill="red" x="115.21875" y="60" textLength="21.603516">foo</tspan><tspan font-family="Monaco" font-size="12" font-weight="500" x="136.822266" y="60" textLength="14.402344"> (</tspan><tspan font-family="Monaco" font-size="12" font-weight="500" fill="red" x="151.22461" y="60" textLength="21.603516">int</tspan><tspan font-family="Monaco" font-size="12" font-weight="500" x="172.82812" y="60" textLength="28.804688"> i, </tspan><tspan font-family="Monaco" font-size="12" font-weight="500" fill="red" x="201.63281" y="60" textLength="43.20703">String</tspan><tspan font-family="Monaco" font-size="12" font-weight="500" x="244.83984" y="60" textLength="28.804688"> s);</tspan><tspan font-family="Monaco" font-size="12" font-weight="500" x="0" y="76" textLength="7.201172">}</tspan></text><path d="M 252 174 L 321 174 C 323.76142 174 326 176.23858 326 179 L 326 203 C 326 205.76142 323.76142 208 321 208 L 252 208 C 249.23858 208 247 205.76142 247 203 L 247 179 C 247 176.23858 249.23858 174 252 174 Z" fill="white"/><path d="M 252 174 L 321 174 C 323.76142 174 326 176.23858 326 179 L 326 203 C 326 205.76142 323.76142 208 321 208 L 252 208 C 249.23858 208 247 205.76142 247 203 L 247 179 C 247 176.23858 249.23858 174 252 174 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(252 183)" fill="black"><tspan font-family="Monaco" font-size="12" font-weight="500" x="12.896484" y="12" textLength="43.20703">MJIEnv</tspan></text><text transform="translate(351 169.125)" fill="blue"><tspan font-family="Helvetica" font-size="14" font-style="italic" font-weight="500" fill="blue" x=".43115234" y="14" textLength="73.137695">JPF objects</tspan></text><text transform="translate(349 195.125)" fill="blue"><tspan font-family="Helvetica" font-size="14" font-style="italic" font-weight="500" fill="blue" x=".08984375" y="14" textLength="77.820312">Java objects</tspan></text><path d="M 143 174 L 222 174 C 224.76142 174 227 176.23858 227 179 L 227 203 C 227 205.76142 224.76142 208 222 208 L 143 208 C 140.23858 208 138 205.76142 138 203 L 138 179 C 138 176.23858 140.23858 174 143 174 Z" fill="white"/><path d="M 143 174 L 222 174 C 224.76142 174 227 176.23858 227 179 L 227 203 C 227 205.76142 224.76142 208 222 208 L 143 208 C 140.23858 208 138 205.76142 138 203 L 138 179 C 138 176.23858 140.23858 174 143 174 Z" stroke="gray" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(143 183)" fill="gray"><tspan font-family="Monaco" font-size="12" font-weight="500" fill="gray" x="3.4941406" y="12" textLength="72.01172">NativePeer</tspan></text><text transform="translate(363 46.2916)" fill="blue"><tspan font-family="Helvetica" font-size="14" font-style="italic" font-weight="500" fill="blue" x=".20019531" y="14" textLength="85.59961">JPF executed</tspan></text><text transform="translate(388 380.062)" fill="blue"><tspan font-family="Helvetica" font-size="14" font-style="italic" font-weight="500" fill="blue" x=".46923828" y="14" textLength="112.061523">host VM executed</tspan></text><text transform="translate(110 116.125)" fill="blue"><tspan font-family="Helvetica" font-size="12" font-style="italic" font-weight="500" fill="blue" x="0" y="11" textLength="86.05078">- method lookup</tspan><tspan font-family="Helvetica" font-size="12" font-style="italic" font-weight="500" fill="blue" x="0" y="25" textLength="123.38672">- parameter conversion</tspan><tspan font-family="Helvetica" font-size="12" font-style="italic" font-weight="500" fill="blue" x="0" y="39" textLength="61.365234">- invocation</tspan></text><text transform="translate(299 225.125)" fill="blue"><tspan font-family="Helvetica" font-size="12" font-style="italic" font-weight="500" fill="blue" x="0" y="11" textLength="13.330078">- fi</tspan><tspan font-family="Helvetica" font-size="12" font-style="italic" font-weight="500" fill="blue" x="13.330078" y="11" textLength="56.695312">eld access</tspan><tspan font-family="Helvetica" font-size="12" font-style="italic" font-weight="500" fill="blue" x="0" y="25" textLength="100.716797">- object conversion</tspan><tspan font-family="Helvetica" font-size="12" font-style="italic" font-weight="500" fill="blue" x="0" y="39" textLength="119.35547">- JPF intrinsics access</tspan></text><text transform="translate(257 26.125)" fill="blue"><tspan font-family="Helvetica" font-size="14" font-style="italic" font-weight="500" fill="blue" x=".0166015625" y="14" textLength="4.9697266">&quot;</tspan><tspan font-family="Helvetica" font-size="14" font-style="italic" font-weight="500" fill="blue" x="4.986328" y="14" textLength="38.13086">Model</tspan><tspan font-family="Helvetica" font-size="14" font-style="italic" font-weight="500" fill="blue" x="43.117188" y="14" textLength="43.86621">&quot; Class</tspan></text><text transform="translate(248 404.125)" fill="blue"><tspan font-family="Helvetica" font-size="14" font-style="italic" font-weight="500" fill="blue" x=".45458984" y="14" textLength="4.9697266">&quot;</tspan><tspan font-family="Helvetica" font-size="14" font-style="italic" font-weight="500" fill="blue" x="5.4243164" y="14" textLength="69.254883">NativePeer</tspan><tspan font-family="Helvetica" font-size="14" font-style="italic" font-weight="500" fill="blue" x="74.6792" y="14" textLength="43.86621">&quot; Class</tspan></text><text transform="translate(336 146.125)" fill="red"><tspan font-family="Helvetica" font-size="14" font-style="italic" font-weight="500" fill="red" x=".0546875" y="14" textLength="174.89062">MJI - &quot;Model Java Interface&quot;</tspan></text></g></g></svg>