static void InitializeAlignmentArrays(string fastaFile, string chromosome, CanvasCoverageMode coverageMode, IDictionary<string, BitArray> possibleAlignments, IDictionary<string, HitArray> observedAlignments, IDictionary<string, Int16[]> fragmentLengths)
{
string referenceBases = FastaLoader.LoadFastaSequence(fastaFile, chromosome);
BitArray possible = new BitArray(referenceBases.Length);
possibleAlignments[chromosome] = possible;
observedAlignments[chromosome] = new HitArray(referenceBases.Length);
if (coverageMode == CanvasCoverageMode.GCContentWeighted)
fragmentLengths[chromosome] = new Int16[referenceBases.Length];
else
fragmentLengths[chromosome] = new Int16[0];
// Mark which k-mers in the fasta file are unique. These are indicated by upper-case letters.
for (int i = 0; i < referenceBases.Length; i++)
{
if (char.IsUpper(referenceBases[i]))
possible[i] = true;
}
}