INNER CODE UNIT · C
isCpG
dpryan79/MethylDackel · common.c:49
inline int isCpG(char *seq, int pos, int seqlen) {
if(pos >= seqlen) return 0;
if(*(seq+pos) == 'C' || *(seq+pos) == 'c') {
if(pos+1 == seqlen) return 0;
if(*(seq+pos+1) == 'G' || *(seq+pos+1) == 'g') return 1;
return 0;
} else if(*(seq+pos) == 'G' || *(seq+pos) == 'g') {
if(pos == 0) return 0;
if(*(seq+pos-1) == 'C' || *(seq+pos-1) == 'c') return -1;
return 0;
}
return 0;
}
inline int isCHG(char *seq, int pos, int seqlen) {
if(pos >= seqlen) return 0;
if(*(seq+pos) == 'C' || *(seq+pos) == 'c') {
if(pos+2 >= seqlen) return 0;