IPP Software Navigation Tools IPP Links Communication Pan-STARRS Links

Ignore:
Timestamp:
Nov 18, 2011, 4:30:35 PM (14 years ago)
Author:
eugene
Message:

allocate job args array a bit more efficiently

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/psLib/src/imageops/psImageConvolve.c

    r30595 r32714  
    859859
    860860            psThreadJob *job = psThreadJobAlloc("PSLIB_IMAGE_SMOOTHMASK_PIXELS");
    861             psArrayAdd(job->args, 1, out);
    862             psArrayAdd(job->args, 1, (psImage*)image);
    863             psArrayAdd(job->args, 1, (psImage*)mask);
     861            psArrayAdd(job->args, 0, out);
     862            psArrayAdd(job->args, 0, (psImage*)image);
     863            psArrayAdd(job->args, 0, (psImage*)mask);
    864864            PS_ARRAY_ADD_SCALAR(job->args, maskVal, PS_TYPE_IMAGE_MASK);
    865             psArrayAdd(job->args, 1, (psVector*)x);
    866             psArrayAdd(job->args, 1, (psVector*)y);
    867             psArrayAdd(job->args, 1, gaussNorm);
     865            psArrayAdd(job->args, 0, (psVector*)x);
     866            psArrayAdd(job->args, 0, (psVector*)y);
     867            psArrayAdd(job->args, 0, gaussNorm);
    868868            PS_ARRAY_ADD_SCALAR(job->args, minGauss, PS_TYPE_F32);
    869869            PS_ARRAY_ADD_SCALAR(job->args, size, PS_TYPE_S32);
     
    12031203                  // allocate a job, construct the arguments for this job
    12041204                  psThreadJob *job = psThreadJobAlloc("PSLIB_IMAGE_SMOOTHMASK_SCANROWS");
    1205                   psArrayAdd(job->args, 1, calculation);
    1206                   psArrayAdd(job->args, 1, calcMask);
    1207                   psArrayAdd(job->args, 1, (psImage *) image); // cast away const
    1208                   psArrayAdd(job->args, 1, (psImage *) mask); // cast away const
     1205                  psArrayAdd(job->args, 0, calculation);
     1206                  psArrayAdd(job->args, 0, calcMask);
     1207                  psArrayAdd(job->args, 0, (psImage *) image); // cast away const
     1208                  psArrayAdd(job->args, 0, (psImage *) mask); // cast away const
    12091209                  PS_ARRAY_ADD_SCALAR(job->args, maskVal,  PS_TYPE_IMAGE_MASK);
    1210                   psArrayAdd(job->args, 1, gaussNorm);
     1210                  psArrayAdd(job->args, 0, gaussNorm);
    12111211                  PS_ARRAY_ADD_SCALAR(job->args, minGauss, PS_TYPE_F32);
    12121212                  PS_ARRAY_ADD_SCALAR(job->args, size,     PS_TYPE_S32);
     
    12501250                  // allocate a job, construct the arguments for this job
    12511251                  psThreadJob *job = psThreadJobAlloc("PSLIB_IMAGE_SMOOTHMASK_SCANCOLS");
    1252                   psArrayAdd(job->args, 1, output);
    1253                   psArrayAdd(job->args, 1, calculation);
    1254                   psArrayAdd(job->args, 1, calcMask);
     1252                  psArrayAdd(job->args, 0, output);
     1253                  psArrayAdd(job->args, 0, calculation);
     1254                  psArrayAdd(job->args, 0, calcMask);
    12551255                  PS_ARRAY_ADD_SCALAR(job->args, maskVal,  PS_TYPE_IMAGE_MASK);
    1256                   psArrayAdd(job->args, 1, gaussNorm);
     1256                  psArrayAdd(job->args, 0, gaussNorm);
    12571257                  PS_ARRAY_ADD_SCALAR(job->args, minGauss, PS_TYPE_F32);
    12581258                  PS_ARRAY_ADD_SCALAR(job->args, size,     PS_TYPE_S32);
     
    15721572
    15731573            psThreadJob *job = psThreadJobAlloc("PSLIB_IMAGE_CONVOLVE_MASK");
    1574             psArrayAdd(job->args, 1, conv);
    1575             psArrayAdd(job->args, 1, (psImage*)mask); // Casting away const to put on arguments
     1574            psArrayAdd(job->args, 0, conv);
     1575            psArrayAdd(job->args, 0, (psImage*)mask); // Casting away const to put on arguments
    15761576            PS_ARRAY_ADD_SCALAR(job->args, start, PS_TYPE_S32);
    15771577            PS_ARRAY_ADD_SCALAR(job->args, stop, PS_TYPE_S32);
     
    16071607
    16081608            psThreadJob *job = psThreadJobAlloc("PSLIB_IMAGE_CONVOLVE_MASK");
    1609             psArrayAdd(job->args, 1, out);
    1610             psArrayAdd(job->args, 1, conv);
     1609            psArrayAdd(job->args, 0, out);
     1610            psArrayAdd(job->args, 0, conv);
    16111611            PS_ARRAY_ADD_SCALAR(job->args, start, PS_TYPE_S32);
    16121612            PS_ARRAY_ADD_SCALAR(job->args, stop, PS_TYPE_S32);
Note: See TracChangeset for help on using the changeset viewer.