/* --------------------------------------------- */ static int parse_commandline(int argc, char **argv) { int nargc , nargsused; char **pargv, *option ; if (argc < 1) usage_exit(); nargc = argc; pargv = argv; while (nargc > 0) { option = pargv[0]; if (debug) printf("%d %s\n",nargc,option); nargc -= 1; pargv += 1; nargsused = 0; if (!strcasecmp(option, "--help")) print_help() ; else if (!strcasecmp(option, "--version")) print_version() ; else if (!strcasecmp(option, "--debug")) debug = 1; else if (!strcmp(option, "--s")) { if (nargc < 1) argnerr(option,1); subject = pargv[0]; nargsused = 1; } else if (!strcmp(option, "--wmseg")) { if (nargc < 1) argnerr(option,1); WMSegFile = pargv[0]; nargsused = 1; } else { fprintf(stderr,"ERROR: Option %s unknown\n",option); if (singledash(option)) fprintf(stderr," Did you really mean -%s ?\n",option); exit(-1); } nargc -= nargsused; pargv += nargsused; } return(0); }
/* --------------------------------------------- */ static int parse_commandline(int argc, char **argv) { int nargc , nargsused; char **pargv, *option ; if (argc < 1) { usage_exit(); } nargc = argc; pargv = argv; while (nargc > 0) { option = pargv[0]; if (debug) { printf("%d %s\n",nargc,option); } nargc -= 1; pargv += 1; nargsused = 0; if (!strcasecmp(option, "--help")|| !strcasecmp(option, "-h")|| !strcasecmp(option, "--usage")|| !strcasecmp(option, "-u")) { print_help() ; } else if (!strcasecmp(option, "--version")) { print_version() ; } else if (!strcasecmp(option, "--debug")) { debug = 1; } // This was --ribbon, but changed to --old-ribbon 4/17/08 DNG else if (!strcasecmp(option, "--old-ribbon")) { UseRibbon = 1; UseNewRibbon = 0; } else if (!strcasecmp(option, "--volmask") || !strcasecmp(option, "--new-ribbon")) { UseNewRibbon = 1; } else if (!strcasecmp(option, "--noribbon")) { UseRibbon = 0; UseNewRibbon = 0; } else if (!strcasecmp(option, "--labelwm")) { LabelWM = 1; } else if (!strcasecmp(option, "--fix-parahipwm")) { FixParaHipWM = 1; } else if (!strcasecmp(option, "--no-fix-parahipwm")) { FixParaHipWM = 0; } else if (!strcasecmp(option, "--hypo-as-wm")) { LabelHypoAsWM = 1; } else if (!strcasecmp(option, "--rip-unknown")) { RipUnknown = 1; } else if (!strcasecmp(option, "--no-hash")) { UseHash = 0; } else if (!strcmp(option, "--sd")) { if (nargc < 1) { argnerr(option,1); } SUBJECTS_DIR = pargv[0]; setenv("SUBJECTS_DIR",SUBJECTS_DIR,1); nargsused = 1; } else if (!strcmp(option, "--s")) { if (nargc < 1) { argnerr(option,1); } subject = pargv[0]; nargsused = 1; } else if (!strcmp(option, "--oaseg") || !strcmp(option, "--o")) { if (nargc < 1) { argnerr(option,1); } OutASegFile = pargv[0]; nargsused = 1; } else if (!strcmp(option, "--a2005s")) { annotname = "aparc.a2005s"; baseoffset = 100; } else if (!strcmp(option, "--a2009s")) { annotname = "aparc.a2009s"; baseoffset = 10100; } else if (!strcmp(option, "--annot")) { if (nargc < 1) { argnerr(option,1); } annotname = pargv[0]; nargsused = 1; } else if (!strcmp(option, "--annot-table")) { if (nargc < 1) { argnerr(option,1); } // annotation_table_file is declared in annotation.h // default is $FREESURFER_HOME/Simple_surface_labels2009.txt annotation_table_file = pargv[0]; nargsused = 1; } else if (!strcmp(option, "--oaparc")) { if (nargc < 1) { argnerr(option,1); } OutAParcFile = pargv[0]; nargsused = 1; } else if (!strcmp(option, "--ctxseg")) { if (nargc < 1) { argnerr(option,1); } CtxSegFile = pargv[0]; nargsused = 1; } else if (!strcmp(option, "--dist")) { if (nargc < 1) { argnerr(option,1); } OutDistFile = pargv[0]; nargsused = 1; } else if (!strcmp(option, "--hashres")) { if (nargc < 1) { argnerr(option,1); } sscanf(pargv[0],"%f",&hashres); nargsused = 1; } else if (!strcmp(option, "--wmparc-dmax")) { if (nargc < 1) { argnerr(option,1); } sscanf(pargv[0],"%f",&dmaxctx); nargsused = 1; } else if (!strcmp(option, "--crs-test")) { if (nargc < 3) { argnerr(option,3); } sscanf(pargv[0],"%d",&ctest); sscanf(pargv[1],"%d",&rtest); sscanf(pargv[2],"%d",&stest); crsTest = 1; nargsused = 3; } else { fprintf(stderr,"ERROR: Option %s unknown\n",option); if (singledash(option)) { fprintf(stderr," Did you really mean -%s ?\n",option); } exit(-1); } nargc -= nargsused; pargv += nargsused; } return(0); }
/* ------------------------------------------------------------------ */ static int parse_commandline(int argc, char **argv) { int nargc , nargsused; char **pargv, *option ; DVT *dvttmp; float ftmp[2000]; if (argc < 1) usage_exit(); nargc = argc; pargv = argv; while (nargc > 0) { option = pargv[0]; if (debug) printf("%d %s\n",nargc,option); nargc -= 1; pargv += 1; nargsused = 0; if (!strcasecmp(option, "--help")) print_help() ; else if (!strcasecmp(option, "--version")) print_version() ; else if (!strcasecmp(option, "--debug")) debug = 1; else if (!strcasecmp(option, "--keepid")) KeepSubjId = 1; else if (!strcmp(option, "--gdf")) { if (nargc < 1) argnerr(option,1); GDFile = pargv[0]; fsgd0 = gdfRead(GDFile,0); if (fsgd0 == NULL) exit(1); nargsused = 1; } else if (!strcmp(option, "--dvt")) { if (nargc < 1) argnerr(option,1); DVTFile = pargv[0]; dvttmp = DVTread(DVTFile); dvt0 = DVTtranspose(dvttmp); DVTfree(&dvttmp); nargsused = 1; } else if (!strcmp(option, "--classes")) { if (nargc < 1) argnerr(option,1); while (nth_is_arg(nargc, pargv, nargsused)) { ClassList[nClassList] = pargv[nargsused]; nClassList++; nargsused++; } } else if (!strcmp(option, "--covar")) { if (nargc < 1) argnerr(option,1); while (nth_is_arg(nargc, pargv, nargsused)) { CovarList[nCovarList] = pargv[nargsused]; nCovarList++; nargsused++; } } else if (!strcmp(option, "--covarprune")) { if (nargc < 3) argnerr(option,3); CovarPrune[nCovarPrune].Covar = pargv[0]; sscanf(pargv[1],"%f",&CovarPrune[nCovarPrune].Min); sscanf(pargv[2],"%f",&CovarPrune[nCovarPrune].Max); if (CovarPrune[nCovarPrune].Min > CovarPrune[nCovarPrune].Max) { printf("ERROR: covarprune min > max\n"); exit(1); } nCovarPrune++; nargsused = 3; } else if (!strcmp(option, "--depvar")) { if (nargc < 1) argnerr(option,1); while (nth_is_arg(nargc, pargv, nargsused)) { DepVarList[nDepVarList] = pargv[nargsused]; nDepVarList++; nargsused++; } } else if (!strcmp(option, "--wdepvar")) { if (nargc < 1) argnerr(option,1); while (nth_is_arg(nargc, pargv, nargsused)) { sscanf(pargv[nargsused],"%f",&ftmp[nwDepVar]); nwDepVar++; nargsused++; } wDepVar = (float *)calloc(sizeof(float),nwDepVar); memmove(wDepVar,ftmp,sizeof(float)*nwDepVar); } else if (!strcmp(option, "--wlms")) { if (nargc < 1) argnerr(option,1); WLMSDepVar = pargv[0]; nargsused = 1; } else if (!strcmp(option, "--wclass")) { if (nargc < 1) argnerr(option,1); while (nth_is_arg(nargc, pargv, nargsused)) { sscanf(pargv[nargsused],"%f",&ftmp[nwClass]); nwClass++; nargsused++; } wClass = (float *)calloc(sizeof(float),nwClass); memmove(wClass,ftmp,sizeof(float)*nwClass); } else if (!strcmp(option, "--wcovar")) { if (nargc < 1) argnerr(option,1); while (nth_is_arg(nargc, pargv, nargsused)) { sscanf(pargv[nargsused],"%f",&ftmp[nwCovar]); nwCovar++; nargsused++; } wCovar = (float *)calloc(sizeof(float),nwCovar+1); memmove(&wCovar[1],ftmp,sizeof(float)*nwCovar); wCovar[0] = 0.0; //Note: the first weight is for offset } else if (!strcmp(option, "--testoffset")) TestOffset = 1; else if (!strcmp(option, "--o")) { if (nargc < 1) argnerr(option,1); OutBase = pargv[0]; nargsused = 1; } else { fprintf(stderr,"ERROR: Option %s unknown\n",option); if (singledash(option)) fprintf(stderr," Did you really mean -%s ?\n",option); exit(-1); } nargc -= nargsused; pargv += nargsused; } return(0); }
/* ------------------------------------------------------------------ */ static int parse_commandline(int argc, char **argv) { int i, nargc , nargsused; char **pargv, *option ; char tmpstr[1000]; if (argc < 1) usage_exit(); nargc = argc; pargv = argv; while (nargc > 0) { option = pargv[0]; if (debug) printf("%d %s\n",nargc,option); nargc -= 1; pargv += 1; nargsused = 0; if (!strcasecmp(option, "--help")) print_help() ; else if (!strcasecmp(option, "--version")) print_version() ; else if (!strcasecmp(option, "--debug")) debug = 1; else if (!strcasecmp(option, "--abs")) DoAbs = 1; else if (!strcasecmp(option, "--nogmnnorm")) gmnnorm = 0; else if (!strcasecmp(option, "--rescale")) rescale=1; else if (!strcasecmp(option, "--norescale")) rescale=0; else if (!strcasecmp(option, "--no-output")) NoOutput = 1; else if (!strcasecmp(option, "--fft")) UseFFT = 1; else if (!strcasecmp(option, "--offset")) AddOffset=1; else if (!strcasecmp(option, "--offset-mid")){ AddOffset = 1; OffsetFrame = -1; } else if (!strcmp(option, "--hsc")) { if (nargc < 2) argnerr(option,2); sscanf(pargv[0],"%lf",&HSCMin); sscanf(pargv[1],"%lf",&HSCMax); DoHSC = 1; nargsused = 2; } else if (!strcmp(option, "--sum2")) { if (nargc < 1) argnerr(option,1); sum2file = pargv[0]; pdfname = "delta"; //NoOutput = 1; nframes = 1; nargsused = 1; } else if (!strcmp(option, "--hsynth")) { // eres mask DoTnorm out if (nargc < 3) argnerr(option,3); mri = MRIread(pargv[0]); mask = MRIread(pargv[1]); sscanf(pargv[2],"%d",&DoTNorm); mri2 = fMRIhsynth(mri, mask, DoTNorm); MRIwrite(mri2,pargv[3]); exit(0); nargsused = 2; } else if (!strcmp(option, "--vol") || !strcmp(option, "--o")) { if (nargc < 1) argnerr(option,1); volid = pargv[0]; nargsused = 1; if (nth_is_arg(nargc, pargv, 1)) { volfmt = pargv[1]; nargsused ++; volfmtid = checkfmt(volfmt); } } else if (!strcmp(option, "--temp") || !strcmp(option, "--template")) { if(DoCurv){ printf("ERROR: cannot use --temp and --curv\n"); exit(1); } if(nargc < 1) argnerr(option,1); tempid = pargv[0]; nargsused = 1; if (nth_is_arg(nargc, pargv, 1)) { tempfmt = pargv[1]; nargsused ++; tempfmtid = checkfmt(tempfmt); } else tempfmtid = getfmtid(tempid); } else if (!strcmp(option, "--curv")) { if(tempid != NULL){ printf("ERROR: cannot use --temp and --curv\n"); exit(1); } if(nargc < 2) argnerr(option,2); subject = pargv[0]; hemi = pargv[1]; DoCurv = 1; nargsused = 2; sprintf(tmpstr,"%s/%s/surf/%s.thickness",getenv("SUBJECTS_DIR"),subject,hemi); tempid = strcpyalloc(tmpstr); } else if ( !strcmp(option, "--dim") ) { if (nargc < 4) argnerr(option,4); for (i=0;i<4;i++) sscanf(pargv[i],"%d",&dim[i]); nargsused = 4; dimSpeced = 1; } else if ( !strcmp(option, "--nframes") ) { if (nargc < 1) argnerr(option,1); sscanf(pargv[0],"%d",&nframes); nargsused = 1; } else if ( !strcmp(option, "--TR") || !strcmp(option, "--tr") ) { if (nargc < 1) argnerr(option,1); sscanf(pargv[0],"%lf",&TR); nargsused = 1; } else if ( !strcmp(option, "--res") ) { if (nargc < 4) argnerr(option,4); for (i=0;i<4;i++) sscanf(pargv[i],"%f",&res[i]); nargsused = 4; resSpeced = 1; } else if ( !strcmp(option, "--vox-size") ) { if (nargc < 3) argnerr(option,3); for (i=0;i<3;i++) sscanf(pargv[i],"%f",&res[i]); nargsused = 4; resSpeced = 1; NewVoxSizeSpeced = 1; } else if ( !strcmp(option, "--c_ras") ) { if (nargc < 3) argnerr(option,3); for (i=0;i<3;i++) sscanf(pargv[i],"%f",&cras[i]); nargsused = 3; } else if ( !strcmp(option, "--p0") ) { if (nargc < 3) argnerr(option,3); for (i=0;i<3;i++) sscanf(pargv[i],"%f",&p0[i]); usep0 = 1; nargsused = 3; } else if ( !strcmp(option, "--cdircos") ) { if (nargc < 3) argnerr(option,3); for (i=0;i<3;i++) sscanf(pargv[i],"%f",&cdircos[i]); nargsused = 3; } else if ( !strcmp(option, "--rdircos") ) { if (nargc < 3) argnerr(option,3); for (i=0;i<3;i++) sscanf(pargv[i],"%f",&rdircos[i]); nargsused = 3; } else if ( !strcmp(option, "--sdircos") ) { if (nargc < 3) argnerr(option,3); for (i=0;i<3;i++) sscanf(pargv[i],"%f",&sdircos[i]); nargsused = 3; } else if ( !strcmp(option, "--fwhm") ) { if (nargc < 1) argnerr(option,1); sscanf(pargv[0],"%f",&fwhm); gstd = fwhm/sqrt(log(256.0)); nargsused = 1; } else if (!strcmp(option, "--precision")) { if (nargc < 1) argnerr(option,1); precision = pargv[0]; nargsused = 1; } else if (!strcmp(option, "--seed")) { if (nargc < 1) argnerr(option,1); sscanf(pargv[0],"%ld",&seed); nargsused = 1; } else if (!strcmp(option, "--seedfile")) { if (nargc < 1) argnerr(option,1); seedfile = pargv[0]; nargsused = 1; } else if (!strcmp(option, "--pdf")) { if (nargc < 1) argnerr(option,1); pdfname = pargv[0]; nargsused = 1; } else if (!strcmp(option, "--bb")) { if (nargc < 6) argnerr(option,6); sscanf(pargv[0],"%d",&boundingbox.x); sscanf(pargv[1],"%d",&boundingbox.y); sscanf(pargv[2],"%d",&boundingbox.z); sscanf(pargv[3],"%d",&boundingbox.dx); sscanf(pargv[4],"%d",&boundingbox.dy); sscanf(pargv[5],"%d",&boundingbox.dz); pdfname = "boundingbox"; nargsused = 6; } else if (!strcasecmp(option, "--checker")) pdfname = "checker"; else if (!strcmp(option, "--dof-num")) { if (nargc < 1) argnerr(option,1); sscanf(pargv[0],"%d",&numdof); nargsused = 1; } else if (!strcmp(option, "--val-a")) { if (nargc < 1) argnerr(option,1); sscanf(pargv[0],"%lf",&ValueA); nargsused = 1; } else if (!strcmp(option, "--val-b")) { if (nargc < 1) argnerr(option,1); sscanf(pargv[0],"%lf",&ValueB); nargsused = 1; } else if (!strcmp(option, "--radius")) { if (nargc < 1) argnerr(option,1); sscanf(pargv[0],"%lf",&voxradius); nargsused = 1; } else if (!strcmp(option, "--dof-den") || !strcmp(option, "--dof")) { if (nargc < 1) argnerr(option,1); sscanf(pargv[0],"%d",&dendof); nargsused = 1; } else if (!strcmp(option, "--gmean")) { if (nargc < 1) argnerr(option,1); sscanf(pargv[0],"%lf",&gausmean); nargsused = 1; } else if (!strcmp(option, "--gstd")) { if (nargc < 1) argnerr(option,1); sscanf(pargv[0],"%lf",&gausstd); nargsused = 1; } else if (!strcmp(option, "--delta-crsf")) { if (nargc < 4) argnerr(option,4); sscanf(pargv[0],"%d",&delta_crsf[0]); sscanf(pargv[1],"%d",&delta_crsf[1]); sscanf(pargv[2],"%d",&delta_crsf[2]); sscanf(pargv[3],"%d",&delta_crsf[3]); delta_crsf_speced = 1; nargsused = 4; } else if (!strcmp(option, "--delta-val")) { if (nargc < 1) argnerr(option,1); sscanf(pargv[0],"%lf",&delta_value); nargsused = 1; } else if (!strcmp(option, "--delta-val-off")) { if (nargc < 1) argnerr(option,1); sscanf(pargv[0],"%lf",&delta_off_value); nargsused = 1; } else if (!strcmp(option, "--spike")) { if (nargc < 1) argnerr(option,1); sscanf(pargv[0],"%d",&SpikeTP); nargsused = 1; } else { fprintf(stderr,"ERROR: Option %s unknown\n",option); if (singledash(option)) fprintf(stderr," Did you really mean -%s ?\n",option); exit(-1); } nargc -= nargsused; pargv += nargsused; } return(0); }
/* ------------------------------------------------------------------ */ static int parse_commandline(int argc, char **argv) { int nargc , nargsused; char **pargv, *option ; if (argc < 1) usage_exit(); nargc = argc; pargv = argv; while (nargc > 0) { option = pargv[0]; if (debug) printf("%d %s\n",nargc,option); nargc -= 1; pargv += 1; nargsused = 0; if (!strcasecmp(option, "--help")) print_help() ; else if (!strcasecmp(option, "--version")) print_version() ; else if (!strcasecmp(option, "--debug")) debug = 1; else if (!strcasecmp(option, "--oldtxtstyle")) oldtxtstyle = 1; else if (!strcasecmp(option, "--plaintxtstyle")) plaintxtstyle = 1; else if (!strcasecmp(option, "--mskinvert")) mskinvert = 1; else if (!strcmp(option, "--fixxfm")) fixxfm = 1; else if (!strcmp(option, "--nofixxfm")) fixxfm = 0; /* -------- ROI output file ------ */ else if (!strcmp(option, "--roiavgtxt")) { if (nargc < 1) argnerr(option,1); roitxtfile = pargv[0]; nargsused = 1; } else if (!strcmp(option, "--roiavg")) { if (nargc < 1) argnerr(option,1); roifile = pargv[0]; nargsused = 1; } /* -------- source volume inputs ------ */ else if (!strcmp(option, "--srcvol")) { if (nargc < 1) argnerr(option,1); srcvolid = IDnameFromStem(pargv[0]); if(srcvolid == NULL) srcvolid = pargv[0]; nargsused = 1; } else if (!strcmp(option, "--srcfmt")) { if (nargc < 1) argnerr(option,1); srcfmt = pargv[0]; nargsused = 1; } else if (!strcmp(option, "--srcreg")) { if (nargc < 1) argnerr(option,1); srcregfile = pargv[0]; nargsused = 1; } else if (!strcmp(option, "--srcoldreg")) { srcoldreg = 1; } else if (!strcmp(option, "--srcwarp")) { if (nargc < 1) argnerr(option,1); srcwarp = pargv[0]; nargsused = 1; } /* -------- label inputs ------ */ else if (!strcmp(option, "--labelfile") || !strcmp(option, "--label")) { if (nargc < 1) argnerr(option,1); labelfile = pargv[0]; nargsused = 1; } else if (!strcmp(option, "--labelreg")) { if (nargc < 1) argnerr(option,1); src2lblregfile = pargv[0]; nargsused = 1; } else if (!strcmp(option, "--labeltal")) { labeltal = 1; fixxfm = 1; nargsused = 0; } else if (!strcmp(option, "--talxfm")) { if (nargc < 1) argnerr(option,1); talxfm = pargv[0]; labeltal = 1; fixxfm = 1; nargsused = 1; } else if (!strcmp(option, "--labelfillthresh")) { if (nargc < 1) argnerr(option,1); sscanf(pargv[0],"%f",&labelfillthresh); nargsused = 1; } /* -------- mask volume inputs ------ */ else if (!strcmp(option, "--mskvol")) { if (nargc < 1) argnerr(option,1); mskvolid = IDnameFromStem(pargv[0]); if(mskvolid == NULL) mskvolid = pargv[0]; nargsused = 1; } else if (!strcmp(option, "--mskfmt")) { if (nargc < 1) argnerr(option,1); mskfmt = pargv[0]; nargsused = 1; } else if (!strcmp(option, "--msktail")) { if (nargc < 1) argnerr(option,1); msktail = pargv[0]; nargsused = 1; if (strncasecmp(msktail,"abs",3) && strncasecmp(msktail,"pos",3) && strncasecmp(msktail,"neg",3)) { fprintf(stderr,"ERROR: msk tail = %s, must be abs, pos, or neg\n", msktail); exit(1); } } else if (!strcmp(option, "--mskthresh")) { if (nargc < 1) argnerr(option,1); sscanf(pargv[0],"%f",&mskthresh); nargsused = 1; } else if (!strcmp(option, "--mskframe")) { if (nargc < 1) argnerr(option,1); sscanf(pargv[0],"%d",&mskframe); nargsused = 1; } else if (!strcmp(option, "--finalmskvol")) { if (nargc < 1) argnerr(option,1); finalmskvolid = pargv[0]; nargsused = 1; } else if (!strcmp(option, "--srcmskvol")) { if (nargc < 1) argnerr(option,1); srcmskvolid = pargv[0]; nargsused = 1; } else if (!strcmp(option, "--finalmskcrs")) { if (nargc < 1) argnerr(option,1); finalmskcrs = pargv[0]; nargsused = 1; } else if (!strcmp(option, "--list")) { if (nargc < 1) argnerr(option,1); ListFile = pargv[0]; nargsused = 1; } else { fprintf(stderr,"ERROR: Option %s unknown\n",option); if (singledash(option)) fprintf(stderr," Did you really mean -%s ?\n",option); //printf("Match %d\n",strcmp(option, "--roiavgtxt")); exit(-1); } nargc -= nargsused; pargv += nargsused; } return(0); }
/* --------------------------------------------- */ static int parse_commandline(int argc, char **argv) { int nargc , nargsused, rt; char **pargv, *option, listfile[2000] ; FILE *fp0; if (argc < 1) { usage_exit(); } nargc = argc; pargv = argv; while (nargc > 0) { option = pargv[0]; if (debug) { printf("%d %s\n",nargc,option); } nargc -= 1; pargv += 1; nargsused = 0; if (!strcasecmp(option, "--help")) { print_help() ; } else if (!strcasecmp(option, "--version")) { print_version() ; } else if (!strcasecmp(option, "--debug")) { debug = 1; } else if (!strcasecmp(option, "--check")) { DoCheck = 1; } else if (!strcasecmp(option, "--no-check")) { DoCheck = 0; } else if (!strcasecmp(option, "--mean")) { DoMean = 1; } else if (!strcasecmp(option, "--median")) { DoMedian = 1; } else if (!strcasecmp(option, "--mean-div-n")) { DoMeanDivN = 1; } else if (!strcasecmp(option, "--mean2")) { DoMeanDivN = 1; } else if (!strcasecmp(option, "--sum")) { DoSum = 1; } else if (!strcasecmp(option, "--std")) { DoStd = 1; } else if (!strcasecmp(option, "--var")) { DoVar = 1; } else if (!strcasecmp(option, "--abs")) { DoAbs = 1; } else if (!strcasecmp(option, "--pos")) { DoPos = 1; } else if (!strcasecmp(option, "--neg")) { DoNeg = 1; } else if (!strcasecmp(option, "--max")) { DoMax = 1; } else if (!strcasecmp(option, "--max-index")) { DoMaxIndex = 1; } else if (!strcasecmp(option, "--min")) { DoMin = 1; } else if (!strcasecmp(option, "--conjunct")) { DoConjunction = 1; } else if (!strcasecmp(option, "--vote")) { DoVote = 1; } else if (!strcasecmp(option, "--sort")) { DoSort = 1; } else if (!strcasecmp(option, "--norm-mean")) { DoNormMean = 1; } else if (!strcasecmp(option, "--norm1")) { DoNorm1 = 1; } else if (!strcasecmp(option, "--prune")) { DoPrune = 1; } else if (!strcasecmp(option, "--max-bonfcor")) { DoMax = 1; DoBonfCor = 1; } else if (!strcasecmp(option, "--asl")) { DoASL = 1; } else if (!strcasecmp(option, "--paired-avg")) { DoPaired = 1; DoPairedAvg = 1; } else if (!strcasecmp(option, "--paired-sum")) { DoPaired = 1; DoPairedSum = 1; } else if (!strcasecmp(option, "--paired-diff")) { DoPaired = 1; DoPairedDiff = 1; } else if (!strcasecmp(option, "--paired-diff-norm")) { DoPairedDiff = 1; DoPairedDiffNorm = 1; DoPaired = 1; } else if (!strcasecmp(option, "--paired-diff-norm1")) { DoPairedDiff = 1; DoPairedDiffNorm1 = 1; DoPaired = 1; } else if (!strcasecmp(option, "--paired-diff-norm2")) { DoPairedDiff = 1; DoPairedDiffNorm2 = 1; DoPaired = 1; } else if (!strcasecmp(option, "--combine")) { DoCombine = 1; } else if (!strcasecmp(option, "--rms")) { DoRMS = 1; } else if (!strcasecmp(option, "--keep-datatype")) { DoKeepDatatype = 1; } else if (!strcasecmp(option, "--pca")) { DoPCA = 1; } else if (!strcasecmp(option, "--chunk")) { setenv("FS_USE_MRI_CHUNK","1",1); } else if (!strcasecmp(option, "--scm")) { DoSCM = 1; } else if ( !strcmp(option, "--pca-mask") ) { if(nargc < 1) { argnerr(option,1); } PCAMaskFile = pargv[0]; nargsused = 1; } else if ( !strcmp(option, "--i") ) { if (nargc < 1) { argnerr(option,1); } inlist[ninputs] = pargv[0]; ninputs ++; nargsused = 1; } else if ( !strcmp(option, "--mtx") ) { if (nargc < 1) { argnerr(option,1); } matfile = pargv[0]; M = MatrixReadTxt(matfile, NULL); if(M==NULL) { printf("ERROR: reading %s\n",matfile); exit(1); } nargsused = 1; } else if ( !strcmp(option, "--gmean") ) { if (nargc < 1) { argnerr(option,1); } sscanf(pargv[0],"%d",&ngroups); nargsused = 1; } else if ( !strcmp(option, "--rep") ) { if (nargc < 1) { argnerr(option,1); } sscanf(pargv[0],"%d",&NReplications); nargsused = 1; } else if ( !strcmp(option, "--o") ) { if (nargc < 1) { argnerr(option,1); } out = pargv[0]; nargsused = 1; } else if ( !strcmp(option, "--mask") ) { if (nargc < 1) { argnerr(option,1); } maskfile = pargv[0]; nargsused = 1; } else if ( !strcmp(option, "--mul") ) { if (nargc < 1) { argnerr(option,1); } if(! isdigit(pargv[0][0])) { printf("ERROR: value passed to the --mul flag must be a number\n"); printf(" If you want to multiply two images, use fscalc\n"); exit(1); } sscanf(pargv[0],"%lf",&MultiplyVal); DoMultiply = 1; nargsused = 1; } else if ( !strcmp(option, "--add") ) { if (nargc < 1) { argnerr(option,1); } if(! isdigit(pargv[0][0])) { printf("ERROR: value passed to the --add flag must be a number\n"); printf(" If you want to add two images, use --sum or fscalc\n"); exit(1); } sscanf(pargv[0],"%lf",&AddVal); DoAdd = 1; nargsused = 1; } else if (!strcasecmp(option, "--tar1")) { if(nargc < 1) { argnerr(option,1); } sscanf(pargv[0],"%d",&TAR1DOFAdjust); DoTAR1 = 1; nargsused = 1; } else if (!strcasecmp(option, "--f")) { if(nargc < 1) { argnerr(option,1); } sscanf(pargv[0],"%s",listfile); fp0 = fopen(listfile,"r"); if(fp0==NULL) { printf("ERROR: opening %s\n",listfile); exit(1); } while(1) { rt = fscanf(fp0,"%s",flist[nthf]); if(rt == EOF) { fclose(fp0); break; } inlist[ninputs] = flist[nthf]; nthf++; ninputs ++; } nargsused = 1; } else { inlist[ninputs] = option; ninputs ++; if(ninputs > NInMAX) { printf("ERROR: ninputs > %d\n",NInMAX); exit(1); } //fprintf(stderr,"ERROR: Option %s unknown\n",option); //if(singledash(option)) //fprintf(stderr," Did you really mean -%s ?\n",option); //exit(-1); } nargc -= nargsused; pargv += nargsused; } return(0); }
/* --------------------------------------------- */ static int parse_commandline(int argc, char **argv) { int nargc , nargsused; char **pargv, *option ; if (argc < 1) usage_exit(); nargc = argc; pargv = argv; while (nargc > 0) { option = pargv[0]; if (debug) printf("%d %s\n",nargc,option); nargc -= 1; pargv += 1; nargsused = 0; if (!strcasecmp(option, "--help")) print_help() ; else if (!strcasecmp(option, "--version")) print_version() ; else if (!strcasecmp(option, "--debug")) debug = 1; else if (!strcasecmp(option, "--verbose")) verbose = 1; else if (!strcasecmp(option, "--fileinfo")) dumpfileinfo = 1; /* -------- source volume inputs ------ */ else if (!strcmp(option, "--i")) { if (nargc < 1) argnerr(option,1); imafile = pargv[0]; nargsused = 1; } else if (!strcmp(option, "--attr")) { if (nargc < 1) argnerr(option,1); attrname = pargv[0]; getattr = 1; nargsused = 1; } else if (!strcmp(option, "--ob")) { if (nargc < 1) argnerr(option,1); bstem = pargv[0]; nargsused = 1; } else if (!strcmp(option, "--dictionary")) { DumpImaDictionary(stdout); exit(0); nargsused = 1; } else if (!strcmp(option, "--key")) { if (nargc < 1) argnerr(option,1); key = pargv[0]; nargsused = 1; } else if (!strcmp(option, "--keyno")) { if (nargc < 1) argnerr(option,1); sscanf(pargv[0],"%d",&keyno); nargsused = 1; } else if (!strcmp(option, "--o")) { if (nargc < 2) argnerr(option,2); sscanf(pargv[0],"%d",&offset); typestring = pargv[1]; nargsused = 2; if (strcmp(typestring,"string") == 0) { if (nargc < 3) { printf("ERROR: type string needs length argument\n"); exit(1); } sscanf(pargv[2],"%d",&stringlen); if (stringlen < 1) { printf("ERROR: string length = %d, must be >= 1\n", stringlen); exit(1); } nargsused = 3; } } else { fprintf(stderr,"ERROR: Option %s unknown\n",option); if (singledash(option)) fprintf(stderr," Did you really mean -%s ?\n",option); exit(-1); } nargc -= nargsused; pargv += nargsused; } return(0); }
/* --------------------------------------------- */ static int parse_commandline(int argc, char **argv) { int nargc , nargsused; char **pargv, *option ; FILE *fptmp; int nargs; /* rkt: check for and handle version tag */ nargs = handle_version_option (argc, argv, "$Id: mri_parse_sdcmdir.c,v 1.21 2011/03/02 00:04:23 nicks Exp $", "$Name: $"); if (nargs && argc - nargs == 1) exit (0); argc -= nargs; if (argc < 1) usage_exit(); nargc = argc; pargv = argv; while (nargc > 0) { option = pargv[0]; if (debug) printf("%d %s\n",nargc,option); nargc -= 1; pargv += 1; nargsused = 0; if (!strcasecmp(option, "--help")) print_help() ; else if (!strcasecmp(option, "--version")) print_version() ; else if (!strcasecmp(option, "--debug")) debug = 1; else if (!strcasecmp(option, "--verbose")) verbose = 1; else if (!strcmp(option, "--d")) { if (nargc < 1) argnerr(option,1); sdicomdir = pargv[0]; nargsused = 1; } else if (!strcmp(option, "--o")) { if (nargc < 1) argnerr(option,1); outfile = pargv[0]; nargsused = 1; } else if (!strcmp(option, "--summarize") || !strcmp(option, "--sum")) { summarize = 1; } else if (!strcmp(option, "--status")) { if (nargc < 1) argnerr(option,1); SDCMStatusFile = (char *) calloc(strlen(pargv[0])+1,sizeof(char)); memmove(SDCMStatusFile,pargv[0],strlen(pargv[0])); fptmp = fopen(SDCMStatusFile,"w"); if (fptmp == NULL) { fprintf(stderr,"ERROR: could not open %s for writing\n", SDCMStatusFile); exit(1); } fprintf(fptmp,"0\n"); fclose(fptmp); nargsused = 1; } else if (!strcmp(option, "--sortbyrun")) { sortbyrun = 1; } else { fprintf(stderr,"ERROR: Option %s unknown\n",option); if (singledash(option)) fprintf(stderr," Did you really mean -%s ?\n",option); exit(-1); } nargc -= nargsused; pargv += nargsused; } return(0); }
/* ------------------------------------------------------------------ */ static int parse_commandline(int argc, char **argv) { int nargc , nargsused; char **pargv, *option ; int nargs; if (argc < 1) usage_exit(); /* rkt: check for and handle version tag */ nargs = handle_version_option (argc, argv, "$Id: mkxsubjreg.c,v 1.5 2011/03/02 00:04:13 nicks Exp $", "$Name: stable5 $"); if (nargs && argc - nargs == 1) exit (0); argc -= nargs; nargc = argc; pargv = argv; while (nargc > 0) { option = pargv[0]; if (debug) printf("%d %s\n",nargc,option); nargc -= 1; pargv += 1; nargsused = 0; if (!strcasecmp(option, "--help")) print_help() ; else if (!strcasecmp(option, "--version")) print_version() ; else if (!strcasecmp(option, "--debug")) debug = 1; else if (!strcmp(option, "--srcreg")) { if (nargc < 1) argnerr(option,1); srcregpath = pargv[0]; nargsused = 1; } else if (!strcmp(option, "--targreg")) { if (nargc < 1) argnerr(option,1); targregpath = pargv[0]; nargsused = 1; } else if (!strcmp(option, "--targsubj")) { if (nargc < 1) argnerr(option,1); targsubj = pargv[0]; nargsused = 1; } else if (!strcmp(option, "--xfm")) { if (nargc < 1) argnerr(option,1); xfmrname = pargv[0]; nargsused = 1; } else if (!strcmp(option, "--fvol")) { if (nargc < 1) argnerr(option,1); fvolid = pargv[0]; nargsused = 1; } else if (!strcmp(option, "--sd")) { if (nargc < 1) argnerr(option,1); subjects_dir = pargv[0]; nargsused = 1; } else { fprintf(stderr,"ERROR: Option %s unknown\n",option); if (singledash(option)) fprintf(stderr," Did you really mean -%s ?\n",option); exit(-1); } nargc -= nargsused; pargv += nargsused; } return(0); }