void abcFilter::getOptions(argStruct *arguments){ fname=angsd::getArg("-sites",fname,arguments); if(fname!=NULL) fl = filt_read(fname); if(fl!=NULL) fprintf(stderr,"\t-> [%s] -sites is still beta, use at own risk...\n",__FILE__); //1=bim 2=keep doMajorMinor = angsd::getArg("-doMajorMinor",doMajorMinor,arguments); if(doMajorMinor==3 && fl!=NULL&& fl->hasExtra!=1){ fprintf(stderr,"\t-> Must supply -sites with a file containing major and minor if -doMajorMinor 3\n"); } if(doMajorMinor!=3 && fl!=NULL&& fl->hasExtra==1){ fprintf(stderr,"\t-> Filter file contains major/minor information to use these in analysis supper \'-doMajorMinor 3\'\n"); } capDepth = angsd::getArg("-capDepth",capDepth,arguments); minInd = angsd::getArg("-minInd",minInd,arguments); setMinIndDepth = angsd::getArg("-setMinDepthInd",setMinIndDepth,arguments); strict = angsd::getArg("-strict",strict,arguments); if(minInd >arguments->nInd){ fprintf(stderr,"\t-> Potential problem you filter -minInd %d but you only have %d samples?\n",minInd,arguments->nInd); exit(0); } }
int main_sites(int argc,char **argv){ #if 0 for(int i=0;i<argc;i++) fprintf(stderr,"argv[%d]:%s\n",i,argv[i]); #endif if(argc==1){ fprintf(stderr,"\tsites print filename\t\tPrint index file\n\tsites index filename [-r offset -compl doCompl]\tgenerate binary index file\n"); return 0; } --argc;++argv; if(!strcasecmp(*argv,"index")){ filt_init(--argc,++argv); }else if(!strcasecmp(*argv,"print")){ filt *f = filt_read(*++argv); filt_print(stdout,f,NULL); dalloc(f); }else fprintf(stderr,"Unknown option: \'%s\'\n",*argv); return 0; }