IPP Software Navigation Tools IPP Links Communication Pan-STARRS Links

Ignore:
Timestamp:
Jan 29, 2007, 2:11:31 PM (19 years ago)
Author:
gusciora
Message:

Improved skip macro placement for the PolyEval files.

Fist version of tap_psMatrixVectorArithmetic01.c

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/psLib/test/math/tap_psPolynomialEval3D.c

    r10848 r11397  
    44*  ORD and CHEB type polynomials.
    55*
    6 *  @version  $Revision: 1.2 $  $Name: not supported by cvs2svn $
    7 *  @date  $Date: 2006-12-29 04:38:42 $
     6*  @version  $Revision: 1.3 $  $Name: not supported by cvs2svn $
     7*  @date  $Date: 2007-01-30 00:11:31 $
    88*
    99* Copyright 2004-2005 Maui High Performance Computing Center, Univ. of Hawaii
     
    207207        psMemId id = psMemGetId();
    208208        psPolynomial3D* polyOrd = psPolynomial3DAlloc(99, TERMS-1, TERMS-1, TERMS-1);
    209         ok(polyOrd == NULL, "Ordinary polynomial allocation successful");
     209        ok(polyOrd != NULL, "Ordinary polynomial allocation successful");
    210210        skip_start(polyOrd == NULL, 1, "Skipping tests because psPolynomial3DAlloc() failed");
    211 
    212211        // Attempt to evaluation invalid polynomial type
    213212        psF64 result = psPolynomial3DEval(polyOrd,0.0, 0.0, 0.0);
     
    222221    {
    223222        psMemId id = psMemGetId();
    224         psPolynomial3D* polyOrd = psPolynomial3DAlloc(PS_POLYNOMIAL_ORD, TERMS-1, TERMS-1, TERMS-1);
    225         ok(polyOrd != NULL, "Ordinary polynomial allocation successful");
    226         skip_start(polyOrd == NULL, 8, "Skipping tests because psPolynomial3DAlloc() failed");
    227 
    228         // Set polynomial members
    229         for(psS32 i = 0; i < TERMS; i++)
    230         {
    231             for(psS32 j = 0; j < TERMS; j++) {
    232                 for(psS32 k = 0; k < TERMS; k++) {
    233                     polyOrd->coeff[i][j][k] = Dpoly3DCoeff[i][j][k];
    234                     polyOrd->mask[i][j][k]  = poly3DMask[i][j][k];
    235                 }
    236             }
    237         }
    238 
    239223        // Create input vectors
    240224        psVector* inputOrdX  = psVectorAlloc(TESTPOINTS, PS_TYPE_F64);
     
    251235        }
    252236
     237        psPolynomial3D* polyOrd = psPolynomial3DAlloc(PS_POLYNOMIAL_ORD, TERMS-1, TERMS-1, TERMS-1);
     238        ok(polyOrd != NULL, "Ordinary polynomial allocation successful");
     239        skip_start(polyOrd == NULL, 10, "Skipping tests because psPolynomial3DAlloc() failed");
     240        // Set polynomial members
     241        for(psS32 i = 0; i < TERMS; i++)
     242        {
     243            for(psS32 j = 0; j < TERMS; j++) {
     244                for(psS32 k = 0; k < TERMS; k++) {
     245                    polyOrd->coeff[i][j][k] = Dpoly3DCoeff[i][j][k];
     246                    polyOrd->mask[i][j][k]  = poly3DMask[i][j][k];
     247                }
     248            }
     249        }
     250
    253251        // Evaluate the vectors
    254252        psVector* outputOrd = psPolynomial3DEvalVector(polyOrd,inputOrdX,inputOrdY,inputOrdZ);
     
    293291        inputOrdZ->type.type = PS_TYPE_U8;
    294292        ok(psPolynomial3DEvalVector(polyOrd,inputOrdX,inputOrdY,inputOrdZ) == NULL, "psPolynomial3DEvalVector() produced NULL when called with non F64 input vector");
    295 
     293        psFree(outputOrd);
     294        skip_end();
    296295        psFree(inputOrdX);
    297296        psFree(inputOrdY);
    298297        psFree(inputOrdZ);
    299         psFree(outputOrd);
    300298        psFree(polyOrd);
    301         skip_end();
    302299        ok(!psMemCheckLeaks (id, NULL, NULL, false), "no memory leaks");
    303300    }
     
    309306    {
    310307        psMemId id = psMemGetId();
    311         psPolynomial3D* polyCheb = psPolynomial3DAlloc(PS_POLYNOMIAL_CHEB, TERMS-1, TERMS-1, TERMS-1);
    312         ok(polyCheb != NULL, "Ordinary polynomial allocation successful");
    313         skip_start(polyCheb == NULL, 8, "Skipping tests because psPolynomial3DAlloc() failed");
    314 
    315         // Set polynomial members
    316         for(psS32 i = 0; i < TERMS; i++)
    317         {
    318             for(psS32 j = 0; j < TERMS; j++) {
    319                 for(psS32 k = 0; k < TERMS; k++) {
    320                     polyCheb->coeff[i][j][k] = 1.0;
    321                     polyCheb->mask[i][j][k]  = poly3DMask[i][j][k];
    322                 }
    323             }
    324         }
    325 
    326308        // Create input vectors
    327309        psVector* inputChebX = psVectorAlloc(TESTPOINTS, PS_TYPE_F64);
     
    337319            inputChebZ->n++;
    338320        }
     321        psPolynomial3D* polyCheb = psPolynomial3DAlloc(PS_POLYNOMIAL_CHEB, TERMS-1, TERMS-1, TERMS-1);
     322        ok(polyCheb != NULL, "Ordinary polynomial allocation successful");
     323        skip_start(polyCheb == NULL, 10, "Skipping tests because psPolynomial3DAlloc() failed");
     324        // Set polynomial members
     325        for(psS32 i = 0; i < TERMS; i++)
     326        {
     327            for(psS32 j = 0; j < TERMS; j++) {
     328                for(psS32 k = 0; k < TERMS; k++) {
     329                    polyCheb->coeff[i][j][k] = 1.0;
     330                    polyCheb->mask[i][j][k]  = poly3DMask[i][j][k];
     331                }
     332            }
     333        }
    339334
    340335        // Evaluate the vectors
     
    380375        inputChebZ->type.type = PS_TYPE_U8;
    381376        ok(psPolynomial3DEvalVector(polyCheb,inputChebX,inputChebY,inputChebZ) == NULL, "psPolynomial3DEvalVector() produced NULL when called with non F64 input vector");
    382 
     377        psFree(outputCheb);
     378        skip_end();
    383379        psFree(inputChebX);
    384380        psFree(inputChebY);
    385381        psFree(inputChebZ);
    386         psFree(outputCheb);
    387382        psFree(polyCheb);
    388         skip_end();
    389383        ok(!psMemCheckLeaks (id, NULL, NULL, false), "no memory leaks");
    390384    }
Note: See TracChangeset for help on using the changeset viewer.