A_Sample Guide
Written by Brian Bushnell
Last updated December 22, 2015
A_Sample and A_SampleMT are sample BBTools that do some kind of manipulation on reads. They are designed for rapid creation of custom high-performance tools, following BBTools best practices and taking advantage of its existing infrastructure such as read input streams. A_Sample is singlethreaded, and A_SampleMT is multithreaded. Neither currently does anything to the reads (they act as a "null transform"); but there is an empty function, processReadPair, into which new code can be placed to modify or filter Read objects.
Notes
Java Code
These programs are not for end-users, only developers. The general idea is that you make a copy of A_Sample or A_SampleMT, rename it, and change processReadPair function. Usually, you will need to add any additional fields at the bottom and additional parsing terms at the top. Be sure that a new parse keyword you add does not conflict with one already in the Parser class.
Shellscript
After the java code is done, copy a_sample_mt.sh and rename that, too. Then modify the shellscript's usage function at the top, the execution function at the bottom (where the java command is called, e.g. bash java $EA $z -cp $CP jgi.A_SampleMT $@), and the default amounts of memory (default of variable "z" and the line with "freeRam").