0f28f57729ca94d504f5dd4cf9f2704b8089dac3 markd Sun Aug 16 21:59:23 2015 -0400 converted macro to access PSL strands to inline functions to improve code reliablity (no redmine) diff --git src/inc/psl.h src/inc/psl.h index 894e3d7..c9a9d1d 100644 --- src/inc/psl.h +++ src/inc/psl.h @@ -185,34 +185,42 @@ struct ffAli *pslToFakeFfAli(struct psl *psl, DNA *needle, DNA *haystack); /* Convert from psl to ffAli format. In some cases you can pass NULL * for needle and haystack - depending what the post-processing is going * to be. */ struct psl *pslFromFakeFfAli(struct ffAli *ff, DNA *needle, DNA *haystack, char strand, char *qName, int qSize, char *tName, int tSize); /* This will create a basic psl structure from a sorted series of ffAli * blocks. The fields that would need actual sequence to be filled in * are left zero however - fields including match, repMatch, mismatch. */ int pslOrientation(struct psl *psl); /* Translate psl strand + or - to orientation +1 or -1 */ -/* marcos to get query and target strand. Target returns implied + when +INLINE char pslQStrand(struct psl *psl) +/* Get query strand. */ +{ +return psl->strand[0]; +} + +INLINE char pslTStrand(struct psl *psl) +/* Get the target strand., Returns implied + when * it's not specific */ -#define pslQStrand(p) ((p)->strand[0]) -#define pslTStrand(p) (((p)->strand[1] != '-') ? '+' : '-') +{ +return (psl->strand[1] != '-') ? '+' : '-'; +} int pslWeightedIntronOrientation(struct psl *psl, struct dnaSeq *genoSeq, int offset); /* Return >0 if introns make it look like alignment is on + strand, * <0 if introns make it look like alignment is on - strand, * 0 if can't tell. The absolute value of the return indicates * how many splice sites we've seen supporting the orientation. * Sequence should NOT be reverse complemented. */ int pslIntronOrientation(struct psl *psl, struct dnaSeq *genoSeq, int offset); /* Return 1 if introns make it look like alignment is on + strand, * -1 if introns make it look like alignment is on - strand, * 0 if can't tell. * Sequence should NOT be reverse complemented. */ boolean pslHasIntron(struct psl *psl, struct dnaSeq *seq, int seqOffset);