From 5b469bd4a94f2cba17ca871a39548eb671dd1da6 Mon Sep 17 00:00:00 2001 From: tradke Date: Tue, 26 Oct 1999 23:40:17 +0000 Subject: Tidying up several things: - use ParseVarsForOutput() instead of InitIONum() for parsing the out_vars parameter - decide which output dir shall be used by using CCTK_ParameterInfo() rather than comparing it with its old "outdir" default value - outdirs are always created now (not only if out_vars was non-empty) because IO methods might be invoked via CCTK_OutputVarAs() also - some variables renamed for better readability git-svn-id: http://svn.cactuscode.org/arrangements/CactusBase/IOBasic/trunk@14 b589c3ab-70e8-4b4d-a09f-cba2dd200880 --- src/OutputInfo.c | 34 ++++++++++++---------------------- 1 file changed, 12 insertions(+), 22 deletions(-) (limited to 'src/OutputInfo.c') diff --git a/src/OutputInfo.c b/src/OutputInfo.c index 5bbe723..f55388f 100644 --- a/src/OutputInfo.c +++ b/src/OutputInfo.c @@ -29,12 +29,12 @@ int IOBasic_OutputInfoGH (cGH *GH) char *name=NULL; iobasicGH *myGH; + /* Get the GH extensions for IOBasic */ myGH = (iobasicGH *) GH->extensions [CCTK_GHExtensionHandle ("IOBasic")]; - /* Return if no output is required (should use do_1dio parameter) */ - if (myGH->infoevery < 1 || - GH->cctk_iteration % myGH->infoevery != 0) + /* Return if no output is required */ + if (myGH->outInfo_every < 1 || GH->cctk_iteration % myGH->outInfo_every != 0) return 0; /* Print a header the first time through */ @@ -49,7 +49,7 @@ int IOBasic_OutputInfoGH (cGH *GH) for (i = 0; i < CCTK_NumVars (); i++) { char ll[80]; - if(myGH->infonum[i] != 0) + if(myGH->do_outInfo [i]) { sprintf (ll," "); ll[25-strlen(CCTK_VarName(i))] = '\0'; @@ -73,10 +73,10 @@ int IOBasic_OutputInfoGH (cGH *GH) grouptype = CCTK_GroupTypeFromVarI (i); /* Check this Variable should be output */ - if (myGH->infonum [i] != 0) { + if (myGH->do_outInfo [i]) { /* Check variable not already output this iteration */ - if (myGH->infolast [i] == GH->cctk_iteration) { + if (myGH->outInfo_last [i] == GH->cctk_iteration) { printf("%12.8f |%12.8f |",myGH->infovals[i][0],myGH->infovals[i][1]); @@ -101,8 +101,7 @@ int IOBasic_OutputInfoGH (cGH *GH) printf("\nIn IO OutputInfoGH\n----------------\n"); printf(" Index = %d\n",i); printf(" Variable = -%s-\n",name); - printf(" Last output iteration was = %d\n",myGH->infolast[i]); - printf(" Output iteration number = %d\n",myGH->infonum[i]); + printf(" Last output iteration was = %d\n",myGH->outInfo_last[i]); #endif /* Make the IO call */ @@ -111,11 +110,8 @@ int IOBasic_OutputInfoGH (cGH *GH) printf("%12.8f |%12.8f |",myGH->infovals[i][0],myGH->infovals[i][1]); - /* Register another info output for this variable */ - myGH->infonum [i]++; - /* Register GF as having info output this iteration */ - myGH->infolast [i] = GH->cctk_iteration; + myGH->outInfo_last [i] = GH->cctk_iteration; } } } @@ -162,7 +158,6 @@ int IOBasic_OutputInfoGH (cGH *GH) int IOBasic_TimeForInfo (cGH *GH, int var) { int return_type; - int grouptype; iobasicGH *myGH; /* Default is do not do output */ @@ -171,14 +166,12 @@ int IOBasic_TimeForInfo (cGH *GH, int var) /* Get the GH extensions for IOBasic */ myGH = (iobasicGH *) GH->extensions [CCTK_GHExtensionHandle ("IOBasic")]; - grouptype = CCTK_GroupTypeFromVarI (var); - /* Check this GF should be output */ - if (myGH->infonum [var] != 0 - && (GH->cctk_iteration % myGH->infoevery == 0)) { + if (myGH->do_outInfo [var] && + (GH->cctk_iteration % myGH->outInfo_every == 0)) { /* Check GF not already output this iteration */ - if (myGH->infolast [var] == GH->cctk_iteration) + if (myGH->outInfo_last [var] == GH->cctk_iteration) CCTK_WARN (2, "Already done info output in IO"); else return_type = 1; @@ -208,11 +201,8 @@ int IOBasic_TriggerOutputInfo (cGH *GH, int variable) myGH->infovals[variable][0]=IOBasic_WriteInfo (GH, variable, "minimum",var); myGH->infovals[variable][1]=IOBasic_WriteInfo (GH, variable, "maximum",var); - /* Register another Info output for this GF */ - myGH->infonum [variable]++; - /* Register GF as having Info output this iteration */ - myGH->infolast [variable] = GH->cctk_iteration; + myGH->outInfo_last [variable] = GH->cctk_iteration; return 0; } -- cgit v1.2.3