The java archive for JPSGCS was downloaded from
http://balance.med.utah.edu/wiki/index.php/JPSGCS
in March of 2011. It was necessary to make the following changes to
these java programs in order to interface with R:
1) GeneDrops.java - write output to a single file instead of multiple files.
Added option -z to GeneDrops to have output file compressed.
Overloaded functions writeTo and writePedigree to accept a GZIPOutputStream object.
Modified the following files:
GeneDrops.java
jpsgcs/alun/genio/GeneticDataSource.java
jpsgcs/alun/linkage/LinkageInterface.java
jpsgcs/alun/linkage/LinkagePedigreeData.java
jpsgcs/alun/linkage/LinkageIndividual.java
2) Removed extra spaces from GeneDrops output file,
jpsgcs/alun/linkage/LinkagePedigreeData.java
jpsgcs/alun/linkage/LinkageIndividual.java
added functions writeToNoSpace(PrintStream p) and shortStringNoSpace()
3) TransposeLinkage.java can take output file name as argument, when given.
ped.writeTranspose write to file instead of to screen.
4) FitGMLD.java, GeneDrop.java - take output file name as an additional argument.
writes output to a file instead of to screen.
5) Avoid crashing R when calling function CheckFormat.
jpsgcs/alun/linkage/LinkageFormatter.java
function crash(String s) throws RuntimeException instead of calling System.exit(1).
jpsgcs/alun/linkage/LinkageParameterData.java
LinkageParameterData(LinkageFormatter b, boolean forceConversion)
throws a RuntimeException (because it calls 'LinkageFormatter.crash').
CheckFormat.java - catch RuntimeException, that may be thrown in the line
case 2: x = new LinkageDataSet(args[0],args[1],premake)
since this function calls LinkageParameterData(LinkageFormatter b)
which calls LinkageParameterData(LinkageFormatter b, boolean forceConversion).