/* Check that a phase wasn't passed in for anything that's not an exon. (Technically it
* should be anything that's not a CDS, but we copy the CDS phase to exons/UTRs so we
* can calculate which reading frame to display them in.) */
if(!mspIsExon(msp)&&msp->phase!=UNSET_INT)
{
g_warning("Warning: MSP '%s' (%d-%d) has phase '%d' specified but only CDS types should have phase (MSP type=%d).\n",msp->sname,msp->qRange.min,msp->qRange.max,msp->phase,msp->type);
}
/* Alignments don't have a phase, so set it to 0 so that it gets ignored in our reading-frame calculation. */
if(mspIsBlastMatch(msp)&&msp->phase==UNSET_INT)
{
msp->phase=0;
}
/* For exons and introns, the s strand is not applicable. We always want the exon
* to be in the same direction as the ref sequence, so set the match seq strand to be