Sophie

Sophie

distrib > Fedora > 18 > i386 > by-pkgid > 01fdc0b336185a24a094689dccd5b064 > files > 154

towhee-doc-7.0.4-2.fc18.noarch.rpm

<html>
 <head>
  <title>MCCCS Towhee (Developer's Manual)</title>
 </head>
 <body bgcolor="#FFFFFF" text="#000000">
  <table width="800" border="0" cellspacing="0" cellpadding="0" height="590">
   <tr> 
    <td colspan="2" height="29"> 
     <div align="center"><font size="5"><b><font face="Arial, Helvetica, sans-serif"><a name="top"></a>MCCCS Towhee (Developer Manual)</font></b></font></div>
    </td>
   </tr>
   <A href="http://sourceforge.net"> 
    <IMG src="http://sourceforge.net/sflogo.php?group_id=87039&amp;type=5" width="210" height="62" border="0" alt="SourceForge.net Logo" align="right"/>
   </A>
   <tr> 
    <td width="18" height="371" valign="top"> 
     <p>&nbsp; </p>
     <p>&nbsp;</p>
    </td>
    <td width="697" valign="top"> 
     <p></p>
     <b>Overview</b> 
     <ul>
      This section covers the basic information that is required in order to become a Towhee developer
      and also some suggested practices and overall guidelines for working with the Towhee development team.
     </ul>

     <p></p>
     <b>Becoming a Developer</b> 
     <ul>
      Towhee is an open-source project so anyone is welcome to download the package, including all of the 
      source code, and start modifying it for their own purposes.  Here we are concerned with 
      people who want to develop Towhee in conjunction with the current team of developers.  One way to 
      help is to report any problems you discover in the code to the developers via the
      <a href="mailto:towhee-bugs@lists.sourceforge.net">towhee-bugs@lists.sourceforge.net</a> mailing list.
      This is also a great way to communicate minor code changes, especially those that fix bugs, to the 
      developers for them to include in the next release.
      <p></p>
      Those wishing to make substantial changes to the code, such as implementing new algorithms, are better 
      served by joining the Towhee developer team in order to gain full access to the code repositories at 
      SourceForge.  If you are interested then you need to sign up for a free username at SourceForge 
      (<a href="http://sourceforge.net/">http://sourceforge.net/</a>), and send an email indicating your 
      interest to <a href="mailto:marcus_martin@users.sourceforge.net">Marcus G. Martin</a>.
     </ul>

     <p></p>
     <b>Subversion Access</b>
     <ul>
      In order to get started using Subersion (svn) you will need to checkout the current version of the code into a workspace 
      on one of your machines.  Directions for checking out the code are found by following the "Code" and "SVN" links from the
      <a href="http://sourceforge.net/projects/towhee/">Towhee SourceForge</a> site.  Make sure to follow the 
      developer access directions, and not the anonymous access directions.  Then you can checkout the code using
      <ul>
       svn co https://towhee.svn.sourceforge.net/svnroot/towhee towhee
      </ul>
      This command creates a directory named <b>towhee</b> that contains all of the Towhee files and directories. 
      <p></p>
     </ul>

     <p></p>
     <b>Test Suite</b>
     <ul>
      The Towhee <a href="examples/example_manual.html">example manual</a> also doubles as the test suite for the code.  Before 
      you commit changes to the repository you should build the <b>towhee</b> executable, using the <b>--enable-safe-compare</b> 
      configure flag and run it through the test suite in order to make sure you have not caused any unintentional damage to 
      the rest of the code while implementing your new features.
      This is done using the <b>./run_serial_test</b>
      command in the Examples directory.  This sequentially works through the examples producing files named <b>answer_new</b> 
      in each of the directories.  At the conclusion of the script it creates a file named <b>test_report</b> that contains 
      the Unix diff of all of the <b>answer_new</b> files with their respective <b>answer_current</b> files.  Once you are 
      satisfied that the differences between the files are an obvious and intended result of your changes then you can copy 
      all of the <b>answer_new</b> files to <b>answer_current</b> files using the <b>./reset_new_to_current</b> script in 
      the Examples directory.
      <p></p>
      If you are working on parallel programming features of Towhee then you will also want to run the <b>./run_para_test</b>
      script in the Examples directory.  This script then called the <b>./execute_parallel</b> script that is in the 
      Parallel_Test directory.  The <b>./execute_parallel</b> script is no longer included in the distribution because 
      it is a machine specific script that executes a parallel job in that directory.  If you are on a machine that 
      allows direct submission of parallel jobs then your <b>./execute_parallel</b> script would look something like
      <ul>
       mpirun -np 2 /towheebase/Source/towhee
      </ul>
      This will execute a job that utilizes the <b>towhee_parallel</b> file in the Parallel_Test directory to run a jobfarm that 
      executes the test suite jobs to produce output files named <b>par_answer_current</b>.  Running the <b>./run_para_diff</b>
      script in the Examples directory produces the <b>para_test_report</b> file that contains the diffs from all of the 
      <b>par_answer_current</b> and their respective <b>answer_current</b> files.  These files should be identical so the 
      <b>para_test_report</b> file should only contain the directory names of the test suite.
     </ul>

     <p>&nbsp;</p>
     <a href="index.html">Return to the main towhee web page</a> 
    </td>
   </tr>
  </table>
  <p></p>
  <hr width="715" align="left">
  <i><font size="2">Send comments to:</font></i>
  <font size="2"> <a href="mailto:marcus_martin@users.sourceforge.net">Marcus G. Martin</a>
   <br></br>
   <i>Last updated: </i><!-- #BeginDate format:Am1 -->February 02, 2011<!-- #EndDate -->
  </font>
  <br></br>
 </body>
</html>