frontend/outitf.c, #3/4, abstraction, `&run->data[i]' --> `d'

This commit is contained in:
Krzysztof Blaszkowski 2015-12-29 14:48:30 +01:00 committed by rlar
parent 7720ae936f
commit e952014016
1 changed files with 20 additions and 18 deletions

View File

@ -473,41 +473,43 @@ OUTpD_memory(runDesc *run, IFvalue *refValue, IFvalue *valuePtr)
for (i = 0; i < n; i++) { for (i = 0; i < n; i++) {
dataDesc *d;
#ifdef TCL_MODULE #ifdef TCL_MODULE
/*Locks the blt vector to stop access*/ /*Locks the blt vector to stop access*/
blt_lockvec(i); blt_lockvec(i);
#endif #endif
if (run->data[i].outIndex == -1) { d = &run->data[i];
if (run->data[i].type == IF_REAL)
plotAddRealValue(&run->data[i], refValue->rValue); if (d->outIndex == -1) {
else if (run->data[i].type == IF_COMPLEX) if (d->type == IF_REAL)
plotAddComplexValue(&run->data[i], refValue->cValue); plotAddRealValue(d, refValue->rValue);
} else if (run->data[i].regular) { else if (d->type == IF_COMPLEX)
if (run->data[i].type == IF_REAL) plotAddComplexValue(d, refValue->cValue);
plotAddRealValue(&run->data[i], } else if (d->regular) {
valuePtr->v.vec.rVec[run->data[i].outIndex]); if (d->type == IF_REAL)
else if (run->data[i].type == IF_COMPLEX) plotAddRealValue(d, valuePtr->v.vec.rVec[d->outIndex]);
plotAddComplexValue(&run->data[i], else if (d->type == IF_COMPLEX)
valuePtr->v.vec.cVec[run->data[i].outIndex]); plotAddComplexValue(d, valuePtr->v.vec.cVec[d->outIndex]);
} else { } else {
IFvalue val; IFvalue val;
/* should pre-check instance */ /* should pre-check instance */
if (!getSpecial(&run->data[i], run, &val)) if (!getSpecial(d, run, &val))
continue; continue;
if (run->data[i].type == IF_REAL) if (d->type == IF_REAL)
plotAddRealValue(&run->data[i], val.rValue); plotAddRealValue(d, val.rValue);
else if (run->data[i].type == IF_COMPLEX) else if (d->type == IF_COMPLEX)
plotAddComplexValue(&run->data[i], val.cValue); plotAddComplexValue(d, val.cValue);
else else
fprintf(stderr, "OUTpData: unsupported data type\n"); fprintf(stderr, "OUTpData: unsupported data type\n");
} }
#ifdef TCL_MODULE #ifdef TCL_MODULE
/*relinks and unlocks vector*/ /*relinks and unlocks vector*/
blt_relink(i, (run->data[i]).vec); blt_relink(i, d->vec);
#endif #endif
} }