Changeset 13277 for issm/trunk-jpl/src/c/solutions/ProcessArguments.cpp
- Timestamp:
- 09/06/12 14:55:19 (13 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
issm/trunk-jpl/src/c/solutions/ProcessArguments.cpp
r13056 r13277 9 9 #include "../include/include.h" 10 10 11 void ProcessArguments(int* solution_type,char** pbinfilename,char** poutbinfilename,char** ppetscfilename,char** plockfilename, int argc,char **argv){11 void ProcessArguments(int* solution_type,char** pbinfilename,char** poutbinfilename,char** ppetscfilename,char** plockfilename,char** prootpath, int argc,char **argv){ 12 12 13 13 char *modelname = NULL; … … 16 16 char *petscfilename = NULL; 17 17 char *lockfilename = NULL; 18 char *rootpath = NULL; 19 char *rootpatharg = NULL; 18 20 19 21 if(argc<2)_error_("Usage error: no solution requested"); 20 22 *solution_type=StringToEnumx(argv[1]); 21 23 if(argc<3)_error_("Usage error: missing model name"); 24 25 rootpatharg=argv[2]; 26 if(strcmp(strstr(rootpatharg,"/"),"/")!=0){ 27 rootpath = xNew<char>(strlen(rootpatharg)+2); sprintf(rootpath,"%s/",rootpatharg); 28 } 29 else{ 30 rootpath = xNew<char>(strlen(rootpatharg)+1); sprintf(rootpath,"%s",rootpatharg); 31 } 32 22 33 modelname=argv[3]; 23 binfilename = xNew<char>(strlen(modelname)+strlen(".bin") +1); sprintf(binfilename, "%s%s",modelname,".bin"); 24 outbinfilename = xNew<char>(strlen(modelname)+strlen(".outbin")+1); sprintf(outbinfilename,"%s%s",modelname,".outbin"); 25 petscfilename = xNew<char>(strlen(modelname)+strlen(".petsc") +1); sprintf(petscfilename, "%s%s",modelname,".petsc"); 26 lockfilename = xNew<char>(strlen(modelname)+strlen(".lock") +1); sprintf(lockfilename, "%s%s",modelname,".lock"); 34 if(strstr(modelname,rootpath)==NULL){ 35 binfilename = xNew<char>(strlen(rootpath)+strlen(modelname)+strlen(".bin") +1); sprintf(binfilename, "%s%s%s",rootpath,modelname,".bin"); 36 outbinfilename = xNew<char>(strlen(rootpath)+strlen(modelname)+strlen(".outbin")+1); sprintf(outbinfilename,"%s%s%s",rootpath,modelname,".outbin"); 37 petscfilename = xNew<char>(strlen(rootpath)+strlen(modelname)+strlen(".petsc") +1); sprintf(petscfilename, "%s%s%s",rootpath,modelname,".petsc"); 38 lockfilename = xNew<char>(strlen(rootpath)+strlen(modelname)+strlen(".lock") +1); sprintf(lockfilename, "%s%s%s",rootpath,modelname,".lock"); 39 } 40 else{ 41 binfilename = xNew<char>(strlen(modelname)+strlen(".bin") +1); sprintf(binfilename, "%s%s",modelname,".bin"); 42 outbinfilename = xNew<char>(strlen(modelname)+strlen(".outbin")+1); sprintf(outbinfilename,"%s%s",modelname,".outbin"); 43 petscfilename = xNew<char>(strlen(modelname)+strlen(".petsc") +1); sprintf(petscfilename, "%s%s",modelname,".petsc"); 44 lockfilename = xNew<char>(strlen(modelname)+strlen(".lock") +1); sprintf(lockfilename, "%s%s",modelname,".lock"); 45 } 27 46 28 47 /*Clean up and assign output pointer*/ … … 31 50 *ppetscfilename=petscfilename; 32 51 *plockfilename=lockfilename; 52 *prootpath=rootpath; 53 33 54 }
Note:
See TracChangeset
for help on using the changeset viewer.