[Jpeergen-cvs] web-site development.html,NONE,1.1 documentation.html,NONE,1.1 overview.html,NONE,1.1
Status: Beta
Brought to you by:
pspeed
|
From: <ps...@us...> - 2004-08-16 05:03:03
|
Update of /cvsroot/jpeergen/web-site In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv29747 Modified Files: index.html Added Files: development.html documentation.html overview.html template.html Log Message: Initial web site fleshing out. --- NEW FILE: development.html --- <html> <title>JPeerGen - Development</title> <body> <table> <tr valign="top"><td> <font size="+2"><a href="http://jpeergen.sourceforge.net/">JPeerGen</a></font><br> <image src="images/Blank.gif" height="25" width="1" /><br> <font size="-1"> <a href="index.html">Home</a><br> <a href="overview.html">Overview</a><br> <a href="documentation.html">Documentation</a><br> <a href="http://sourceforge.net/projects/jpeergen">Sourceforge Project</a><br> <a href="https://sourceforge.net/project/showfiles.php?group_id=116596">Download</a><br> <a href="https://sourceforge.net/forum/?group_id=116596">Public Forums</a><br> <a href="development.html">Development</a><br> <a href="http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/jpeergen/dev/">CVS</a><br> </font> </td><td><image src="images/Blank.gif" height="1" width="10" /></td><td> <h1>Getting Involved</h1> <p>For now, the best way to get involved is by downloading the source, building it, and playing with it. Participate in the forums, etc..</p> <h3>Building</h3> <p>Building is pretty easy. The only prerequisite is that <a href="http://jakarta.apache.org/ant/index.html">ant</a> is installed/setup. After that, simply download a source distribution or check it out directly from CVS. Once you have a source distribution, run <code>ant</code> from the directory that contains <code>build.xml</code></p> <br><br><br> <hr> <font size="-1"><i>Copyright Paul Speed and Progeeks 2004</i></font> </td></tr> </table> </body> </html> --- NEW FILE: documentation.html --- <html> <title>JPeerGen - Documentation</title> <body> <table> <tr valign="top"><td> <font size="+2"><a href="http://jpeergen.sourceforge.net/">JPeerGen</a></font><br> <image src="images/Blank.gif" height="25" width="1" /><br> <font size="-1"> <a href="index.html">Home</a><br> <a href="overview.html">Overview</a><br> <a href="documentation.html">Documentation</a><br> <a href="http://sourceforge.net/projects/jpeergen">Sourceforge Project</a><br> <a href="https://sourceforge.net/project/showfiles.php?group_id=116596">Download</a><br> <a href="https://sourceforge.net/forum/?group_id=116596">Public Forums</a><br> <a href="development.html">Development</a><br> <a href="http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/jpeergen/dev/">CVS</a><br> </font> </td><td><image src="images/Blank.gif" height="1" width="10" /></td><td> <h1>Documentation</h1> <p>Under construction</p> <h3>Java Class Considerations</h3> <h3>Running the doclet</h3> <br><br><br> <hr> <font size="-1"><i>Copyright Paul Speed and Progeeks 2004</i></font> </td></tr> </table> </body> </html> --- NEW FILE: overview.html --- <html> <title>JPeerGen - Overview</title> <body> <table> <tr valign="top"><td> <font size="+2"><a href="http://jpeergen.sourceforge.net/">JPeerGen</a></font><br> <image src="images/Blank.gif" height="25" width="1" /><br> <font size="-1"> <a href="index.html">Home</a><br> <a href="overview.html">Overview</a><br> <a href="documentation.html">Documentation</a><br> <a href="http://sourceforge.net/projects/jpeergen">Sourceforge Project</a><br> <a href="https://sourceforge.net/project/showfiles.php?group_id=116596">Download</a><br> <a href="https://sourceforge.net/forum/?group_id=116596">Public Forums</a><br> <a href="development.html">Development</a><br> <a href="http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/jpeergen/dev/">CVS</a><br> </font> </td><td><image src="images/Blank.gif" height="1" width="10" /></td><td> <h1>Overview</h1> <p>Basically, JPeerGen is a Javadoc doclet that can generate the code and header files for a compatible C++ peer class. The utility's intent is to make implementing native object oriented methods as smooth as possible. As a result, a binding layer will do its best to translate JNI types into native C++ types before passing them on to the native methods implementations. This same binding layer is responsible for doing reverse translations for Java methods that have been made available for calling from C++ code. The fileds that make up this binding layer are generated directly from the .java source file.</p> <table> <tr><td>This image shows the basic high-level interaction between a Java object and its native peer.</td></tr> <tr><td><img src="images/JPeerGen1.png" /></td></tr></table> <p>Several files are generated to facilitate this interaction. These are as follows:</p> <table border="1"> <tr> <td>JNI header (<code>.h</code>)</td> <td>This is the file normally generated by javah and is required for the C part of the native method implementations. A user should rarely need to even look at this file.</td> </tr> <tr> <td>JNI binding (<code>.cpp</code>)</td> <td>This is the implementation of the C functions defined in the JNI header file. The functions simply lookup the C++ peer instance and forward the call onto the relevant C++ binding method.</td> </tr> <tr> <td>C++ binding (<code>.h</code>)</td> <td>This is included in the peer header file and defines the forward and reverse call bindings between JNI and C++. JNI calls have their parameters translated to native C++ types when possible. The return values are translated back to JNI types when possible.<br> Any reverse-peered Java methods are bound in a similar way by translating the C++ parameters to JNI types. The return values are translated back to C++ types.</td> </tr> <tr> <td>Peer header (<code>.h</code>)</td> <td>This file sets up the necessary includes for using the peered class but is otherwise user editable. It's primarily used to make the user's life easier.<br> By default, this file is not overwritten when JPeerGen is run again.</td> </tr> <tr> <td>Peer class (<code>.cpp</code>)</td> <td>This file sets up empty method stubs for any of the native peered methods. This helps the user hit the ground running as well as give the user an idea of what parameters were able to be translated and which ones weren't.<br> By default, this file is not overwritten when JPeerGen is run again. Instead, a <code>.new</code> file is created that the user can use to cut and paste any new or modified method signatures since the last time JPeerGen was run.</td> </tr> </table> <p>Following is an example list of files that might be generated for the class <code>foo.MyObject</code>:</p> <ul> <li><code><b>foo_MyObject.h</b></code> <i>(JNI header)</i></li> <li><code><b>foo_MyObjectJniBinding.cpp</b></code> <i>(JNI binding)</i></li> <li><code><b>MyObjectBindings.h</b></code> <i>(C++ binding)</i></li> <li><code><b>MyObjectPeer.h</b></code> <i>(Peer header)</i></li> <li><code><b>MyObjectPeer.cpp</b></code> <i>(Peer class)</i></li> </ul> <table> <tr><td>This diagram illustrates the interaction between these files:</td></tr> <tr><td><img src="images/JPeerGen2.png" /></td></tr> </table> <br><br><br> <hr> <font size="-1"><i>Copyright Paul Speed and Progeeks 2004</i></font> </td></tr> </table> </body> </html> --- NEW FILE: template.html --- <html> <title>Title Goes Here</title> <body> <table> <tr valign="top"><td> <font size="+2"><a href="http://jpeergen.sourceforge.net/">JPeerGen</a></font><br> <image src="images/Blank.gif" height="25" width="1" /><br> <font size="-1"> <a href="index.html">Home</a><br> <a href="overview.html">Overview</a><br> <a href="documentation.html">Documentation</a><br> <a href="http://sourceforge.net/projects/jpeergen">Sourceforge Project</a><br> <a href="https://sourceforge.net/project/showfiles.php?group_id=116596">Download</a><br> <a href="https://sourceforge.net/forum/?group_id=116596">Public Forums</a><br> <a href="development.html">Development</a><br> <a href="http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/jpeergen/dev/">CVS</a><br> </font> </td><td><image src="images/Blank.gif" height="1" width="10" /></td><td> <h1>Title Goes Here</h1> <br><br><br> <hr> <font size="-1"><i>Copyright Paul Speed and Progeeks 2004</i></font> </td></tr> </table> </body> </html> Index: index.html =================================================================== RCS file: /cvsroot/jpeergen/web-site/index.html,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** index.html 12 Aug 2004 07:29:32 -0000 1.1 --- index.html 16 Aug 2004 05:02:54 -0000 1.2 *************** *** 4,14 **** <body> ! <h2>JPeerGen</h2> ! <p>Under Construction</p> ! <p>Just a placeholder page at the moment.</p> ! <a href="http://sourceforge.net/projects/jpeergen">Sourceforge Project</a><br> <br><br> --- 4,41 ---- <body> ! <table > ! <tr valign="top"><td> ! <image src="images/Blank.gif" height="55" width="1" /><br> ! <font size="-1"> ! <a href="index.html">Home</a><br> ! <a href="overview.html">Overview</a><br> ! <a href="documentation.html">Documentation</a><br> ! <a href="http://sourceforge.net/projects/jpeergen">Sourceforge Project</a><br> ! <a href="https://sourceforge.net/project/showfiles.php?group_id=116596">Download</a><br> ! <a href="https://sourceforge.net/forum/?group_id=116596">Public Forums</a><br> ! <a href="development.html">Development</a><br> ! <a href="http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/jpeergen/dev/">CVS</a><br> ! </font> ! </td><td><image src="images/Blank.gif" height="1" width="10" /></td><td> ! <image src="images/JPeerGen-Logo.png" /> ! <p>Helping bridge the Java->C++ gap.</p> ! ! <h3>Introduction</h3> ! ! <p>JPeerGen is a developer utility to generate C++ source for Java object peers ! that interact using JNI. These peers can then implement object-specific native ! code as well as be used as entry points for calling Java from C++ code.</p> ! ! <p>For more detailed information, see the <a href="overview.html">overview</a> page.</p> ! ! <h3>What's new?</h3> ! ! <ul> ! <li>August 16, 2004 - Setup initial web site. ! <li>August 15, 2004 - Cut first public release 0.9.0. ! </ul> <br><br> *************** *** 18,21 **** --- 45,54 ---- <font size="-1"><i>Copyright Paul Speed and Progeeks 2004</i></font> + </td></tr> + </table> + </body> </html> + + + |