Changeset 4029
- Timestamp:
- May 25, 2005, 10:26:55 AM (21 years ago)
- Location:
- trunk/psLib/src
- Files:
-
- 27 edited
-
astro/psCoord.c (modified) (18 diffs)
-
astro/psTime.c (modified) (27 diffs)
-
astronomy/psAstrometry.c (modified) (27 diffs)
-
astronomy/psCoord.c (modified) (18 diffs)
-
astronomy/psTime.c (modified) (27 diffs)
-
collections/psMetadata.c (modified) (10 diffs)
-
collections/psMetadataIO.c (modified) (13 diffs)
-
dataManip/psBinaryOp.c (modified) (2 diffs)
-
dataManip/psConstants.h (modified) (34 diffs)
-
dataManip/psFunctions.c (modified) (43 diffs)
-
dataManip/psMatrix.c (modified) (12 diffs)
-
dataManip/psMinimize.c (modified) (22 diffs)
-
dataManip/psStats.c (modified) (12 diffs)
-
dataManip/psUnaryOp.c (modified) (2 diffs)
-
image/psImageStats.c (modified) (13 diffs)
-
imageops/psImageStats.c (modified) (13 diffs)
-
math/psBinaryOp.c (modified) (2 diffs)
-
math/psConstants.h (modified) (34 diffs)
-
math/psMatrix.c (modified) (12 diffs)
-
math/psMinimize.c (modified) (22 diffs)
-
math/psPolynomial.c (modified) (43 diffs)
-
math/psSpline.c (modified) (43 diffs)
-
math/psStats.c (modified) (12 diffs)
-
math/psUnaryOp.c (modified) (2 diffs)
-
types/psMetadata.c (modified) (10 diffs)
-
types/psMetadataConfig.c (modified) (13 diffs)
-
xml/psXML.c (modified) (13 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/psLib/src/astro/psCoord.c
r3991 r4029 10 10 * @author GLG, MHPCC 11 11 * 12 * @version $Revision: 1. 69$ $Name: not supported by cvs2svn $13 * @date $Date: 2005-05-2 0 00:15:50$12 * @version $Revision: 1.70 $ $Name: not supported by cvs2svn $ 13 * @date $Date: 2005-05-25 20:26:55 $ 14 14 * 15 15 * Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii … … 94 94 psPlaneTransform *p_psPlaneTransformLinearInvert(psPlaneTransform *transform) 95 95 { 96 PS_ PTR_CHECK_NULL(transform, 0);97 PS_ PTR_CHECK_NULL(transform->x, 0);98 PS_ PTR_CHECK_NULL(transform->y, 0);96 PS_ASSERT_PTR_NON_NULL(transform, 0); 97 PS_ASSERT_PTR_NON_NULL(transform->x, 0); 98 PS_ASSERT_PTR_NON_NULL(transform->y, 0); 99 99 100 100 psF64 A = 0.0; … … 160 160 psS32 p_psIsProjectionLinear(psPlaneTransform *transform) 161 161 { 162 PS_ PTR_CHECK_NULL(transform, 0);163 PS_ PTR_CHECK_NULL(transform->x, 0);164 PS_ PTR_CHECK_NULL(transform->y, 0);162 PS_ASSERT_PTR_NON_NULL(transform, 0); 163 PS_ASSERT_PTR_NON_NULL(transform->x, 0); 164 PS_ASSERT_PTR_NON_NULL(transform->y, 0); 165 165 166 166 for (psS32 i=0;i<(transform->x->nX);i++) { … … 223 223 psPlaneTransform* psPlaneTransformAlloc(psS32 n1, psS32 n2) 224 224 { 225 PS_ INT_CHECK_NON_NEGATIVE(n1, NULL);226 PS_ INT_CHECK_NON_NEGATIVE(n2, NULL);225 PS_ASSERT_INT_NONNEGATIVE(n1, NULL); 226 PS_ASSERT_INT_NONNEGATIVE(n2, NULL); 227 227 228 228 psPlaneTransform *pt = psAlloc(sizeof(psPlaneTransform)); … … 238 238 const psPlane* coords) 239 239 { 240 PS_ PTR_CHECK_NULL(transform, NULL);241 PS_ PTR_CHECK_NULL(transform->x, NULL);242 PS_ PTR_CHECK_NULL(transform->y, NULL);243 PS_ PTR_CHECK_NULL(coords, NULL);240 PS_ASSERT_PTR_NON_NULL(transform, NULL); 241 PS_ASSERT_PTR_NON_NULL(transform->x, NULL); 242 PS_ASSERT_PTR_NON_NULL(transform->y, NULL); 243 PS_ASSERT_PTR_NON_NULL(coords, NULL); 244 244 245 245 if (out == NULL) { … … 267 267 psPlaneDistort* psPlaneDistortAlloc(psS32 n1, psS32 n2, psS32 n3, psS32 n4) 268 268 { 269 PS_ INT_CHECK_NON_NEGATIVE(n1, NULL);270 PS_ INT_CHECK_NON_NEGATIVE(n2, NULL);271 PS_ INT_CHECK_NON_NEGATIVE(n3, NULL);272 PS_ INT_CHECK_NON_NEGATIVE(n4, NULL);269 PS_ASSERT_INT_NONNEGATIVE(n1, NULL); 270 PS_ASSERT_INT_NONNEGATIVE(n2, NULL); 271 PS_ASSERT_INT_NONNEGATIVE(n3, NULL); 272 PS_ASSERT_INT_NONNEGATIVE(n4, NULL); 273 273 274 274 psPlaneDistort *pt = psAlloc(sizeof(psPlaneDistort)); … … 290 290 float magnitude) 291 291 { 292 PS_ PTR_CHECK_NULL(transform, NULL);293 PS_ PTR_CHECK_NULL(transform->x, NULL);294 PS_ PTR_CHECK_NULL(transform->y, NULL);295 PS_ PTR_CHECK_NULL(coords, NULL);292 PS_ASSERT_PTR_NON_NULL(transform, NULL); 293 PS_ASSERT_PTR_NON_NULL(transform->x, NULL); 294 PS_ASSERT_PTR_NON_NULL(transform->y, NULL); 295 PS_ASSERT_PTR_NON_NULL(coords, NULL); 296 296 297 297 if (out == NULL) { … … 364 364 const psSphere* coord) 365 365 { 366 PS_ PTR_CHECK_NULL(transform, NULL);367 PS_ PTR_CHECK_NULL(coord, NULL);366 PS_ASSERT_PTR_NON_NULL(transform, NULL); 367 PS_ASSERT_PTR_NON_NULL(coord, NULL); 368 368 369 369 if (out == NULL) { … … 394 394 395 395 // Check for null parameter 396 PS_ PTR_CHECK_NULL(time, NULL);396 PS_ASSERT_PTR_NON_NULL(time, NULL); 397 397 398 398 // Convert psTime to MJD … … 427 427 428 428 // Check for null parameter 429 PS_ PTR_CHECK_NULL(time, NULL);429 PS_ASSERT_PTR_NON_NULL(time, NULL); 430 430 431 431 // Convert psTime to MJD … … 498 498 const psProjection* projection) 499 499 { 500 PS_ PTR_CHECK_NULL(coord, NULL);501 PS_ PTR_CHECK_NULL(projection, NULL);500 PS_ASSERT_PTR_NON_NULL(coord, NULL); 501 PS_ASSERT_PTR_NON_NULL(projection, NULL); 502 502 503 503 psF64 theta = 0.0; … … 550 550 const psProjection* projection) 551 551 { 552 PS_ PTR_CHECK_NULL(coord, NULL);553 PS_ PTR_CHECK_NULL(projection, NULL);552 PS_ASSERT_PTR_NON_NULL(coord, NULL); 553 PS_ASSERT_PTR_NON_NULL(projection, NULL); 554 554 555 555 psF64 theta = 0.0; … … 622 622 psSphereOffsetUnit unit) 623 623 { 624 PS_ PTR_CHECK_NULL(position1, NULL);625 PS_ PTR_CHECK_NULL(position2, NULL);624 PS_ASSERT_PTR_NON_NULL(position1, NULL); 625 PS_ASSERT_PTR_NON_NULL(position2, NULL); 626 626 627 627 // Check positions near 90 degree and issue warnings if necessary … … 721 721 psSphereOffsetUnit unit) 722 722 { 723 PS_ PTR_CHECK_NULL(position, NULL);724 PS_ PTR_CHECK_NULL(offset, NULL);723 PS_ASSERT_PTR_NON_NULL(position, NULL); 724 PS_ASSERT_PTR_NON_NULL(offset, NULL); 725 725 726 726 psSphere* tmp; … … 811 811 { 812 812 // Check input for NULL pointers 813 PS_ PTR_CHECK_NULL(coords, NULL);814 PS_ PTR_CHECK_NULL(fromTime, NULL);815 PS_ PTR_CHECK_NULL(toTime, NULL);813 PS_ASSERT_PTR_NON_NULL(coords, NULL); 814 PS_ASSERT_PTR_NON_NULL(fromTime, NULL); 815 PS_ASSERT_PTR_NON_NULL(toTime, NULL); 816 816 817 817 // Calculate Julian centuries … … 904 904 // XXX: This does not yet use region and nSamples: need to modify -rdd 905 905 906 PS_ PTR_CHECK_NULL(trans1, NULL);907 PS_ PTR_CHECK_NULL(trans2, NULL);906 PS_ASSERT_PTR_NON_NULL(trans1, NULL); 907 PS_ASSERT_PTR_NON_NULL(trans2, NULL); 908 908 //TRACE: printf("psPlaneTransformCombine(%d, %d, %d, %d: %d, %d, %d, %d)\n", trans1->x->nX, trans1->x->nY, trans1->y->nX, trans1->y->nY, trans2->x->nX, trans2->x->nY, trans2->y->nX, trans2->y->nY); 909 909 // … … 1047 1047 float sigmaClip) 1048 1048 { 1049 PS_ PTR_CHECK_NULL(trans, NULL);1050 PS_ PTR_CHECK_NULL(source, NULL);1051 PS_ PTR_CHECK_NULL(dest, NULL);1049 PS_ASSERT_PTR_NON_NULL(trans, NULL); 1050 PS_ASSERT_PTR_NON_NULL(source, NULL); 1051 PS_ASSERT_PTR_NON_NULL(dest, NULL); 1052 1052 1053 1053 psS32 numCoords = PS_MIN(source->n, dest->n); … … 1159 1159 int nSamples) 1160 1160 { 1161 PS_ PTR_CHECK_NULL(in, NULL);1161 PS_ASSERT_PTR_NON_NULL(in, NULL); 1162 1162 // 1163 1163 // If the transform is linear, then invert it exactly and return. -
trunk/psLib/src/astro/psTime.c
r3884 r4029 10 10 * @author Ross Harman, MHPCC 11 11 * 12 * @version $Revision: 1.6 0$ $Name: not supported by cvs2svn $13 * @date $Date: 2005-05- 11 22:02:15 $12 * @version $Revision: 1.61 $ $Name: not supported by cvs2svn $ 13 * @date $Date: 2005-05-25 20:26:55 $ 14 14 * 15 15 * Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii … … 178 178 } 179 179 table = (psLookupTable*)tableMetadataItem->data.V; 180 PS_ PTR_CHECK_NULL(table,0.0);180 PS_ASSERT_PTR_NON_NULL(table,0.0); 181 181 182 182 // Attempt to interpolate table … … 403 403 404 404 // Error checks 405 PS_ PTR_CHECK_NULL(time,NULL);406 PS_ INT_CHECK_RANGE(time->nsec,0,1e9-1,NULL);405 PS_ASSERT_PTR_NON_NULL(time,NULL); 406 PS_ASSERT_INT_WITHIN_RANGE(time->nsec,0,1e9-1,NULL); 407 407 408 408 if (time->type == type) { // time already right type. That was easy! … … 448 448 449 449 // Error checks 450 PS_ PTR_CHECK_NULL(time,NAN);451 PS_ INT_CHECK_RANGE(time->nsec,0,1e9-1,NAN);450 PS_ASSERT_PTR_NON_NULL(time,NAN); 451 PS_ASSERT_INT_WITHIN_RANGE(time->nsec,0,1e9-1,NAN); 452 452 453 453 // Calculate TAI or UTC time based on type of time user passes … … 519 519 520 520 // Error checks 521 PS_ PTR_CHECK_NULL(time,NAN);522 PS_ INT_CHECK_RANGE(time->nsec,0,1e9-1,NAN);521 PS_ASSERT_PTR_NON_NULL(time,NAN); 522 PS_ASSERT_INT_WITHIN_RANGE(time->nsec,0,1e9-1,NAN); 523 523 524 524 if(time->type != PS_TIME_TAI) { … … 560 560 } 561 561 dut = (psVector*)tableMetadataItem->data.V; 562 PS_ PTR_CHECK_NULL(dut,0.0);562 PS_ASSERT_PTR_NON_NULL(dut,0.0); 563 563 564 564 t = 2000.0 + (mjd - 51544.03)/365.2422; … … 592 592 593 593 // Error checks 594 PS_ PTR_CHECK_NULL(time,NULL);595 PS_ INT_CHECK_RANGE(time->nsec,0,1e9-1,NULL);594 PS_ASSERT_PTR_NON_NULL(time,NULL); 595 PS_ASSERT_INT_WITHIN_RANGE(time->nsec,0,1e9-1,NULL); 596 596 597 597 if(time->type != PS_TIME_TAI) … … 658 658 } 659 659 xp = (psVector*)tableMetadataItem->data.V; 660 PS_ PTR_CHECK_NULL(xp,NULL);660 PS_ASSERT_PTR_NON_NULL(xp,NULL); 661 661 662 662 // Get yp … … 667 667 } 668 668 yp = (psVector*)tableMetadataItem->data.V; 669 PS_ PTR_CHECK_NULL(yp,NULL);669 PS_ASSERT_PTR_NON_NULL(yp,NULL); 670 670 671 671 // Calculate "a" and "c" constants … … 715 715 716 716 // Error checks 717 PS_ PTR_CHECK_NULL(time,NAN);718 PS_ INT_CHECK_RANGE(time->nsec,0,1e9-1,NAN);717 PS_ASSERT_PTR_NON_NULL(time,NAN); 718 PS_ASSERT_INT_WITHIN_RANGE(time->nsec,0,1e9-1,NAN); 719 719 720 720 // Check time metadata … … 733 733 } 734 734 table = (psLookupTable*)tableMetadataItem->data.V; 735 PS_ PTR_CHECK_NULL(table,0);735 PS_ASSERT_PTR_NON_NULL(table,0); 736 736 737 737 // Determine Julian and modified Julian dates used in table lookup and time delta calculation … … 767 767 768 768 // Error checks 769 PS_ PTR_CHECK_NULL(time1,0);770 PS_ PTR_CHECK_NULL(time2,0);771 PS_ INT_CHECK_RANGE(time1->nsec,0,1e9-1,0);772 PS_ INT_CHECK_RANGE(time2->nsec,0,1e9-1,0);769 PS_ASSERT_PTR_NON_NULL(time1,0); 770 PS_ASSERT_PTR_NON_NULL(time2,0); 771 PS_ASSERT_INT_WITHIN_RANGE(time1->nsec,0,1e9-1,0); 772 PS_ASSERT_INT_WITHIN_RANGE(time2->nsec,0,1e9-1,0); 773 773 diff = abs((psS64)psTimeGetTAIDelta((psTime*)time1)-(psS64)psTimeGetTAIDelta((psTime*)time2)); 774 774 … … 781 781 782 782 // Error checks 783 PS_ PTR_CHECK_NULL(time,NAN);784 PS_ INT_CHECK_RANGE(time->nsec,0,1e9-1,NAN);783 PS_ASSERT_PTR_NON_NULL(time,NAN); 784 PS_ASSERT_INT_WITHIN_RANGE(time->nsec,0,1e9-1,NAN); 785 785 786 786 // Julian date conversion … … 800 800 801 801 // Error checks 802 PS_ PTR_CHECK_NULL(time,NAN);803 PS_ INT_CHECK_RANGE(time->nsec,0,1e9-1,NAN);802 PS_ASSERT_PTR_NON_NULL(time,NAN); 803 PS_ASSERT_INT_WITHIN_RANGE(time->nsec,0,1e9-1,NAN); 804 804 805 805 // Modified Julian date conversion … … 823 823 824 824 // Error checks 825 PS_ PTR_CHECK_NULL(time,NULL);826 PS_ INT_CHECK_RANGE(time->nsec,0,1e9-1,NULL);825 PS_ASSERT_PTR_NON_NULL(time,NULL); 826 PS_ASSERT_INT_WITHIN_RANGE(time->nsec,0,1e9-1,NULL); 827 827 828 828 tempString = psAlloc(MAX_TIME_STRING_LENGTH); … … 856 856 857 857 // Error checks 858 PS_ PTR_CHECK_NULL(time,timevalTime);859 PS_ INT_CHECK_RANGE(time->nsec,0,1e9-1,timevalTime);858 PS_ASSERT_PTR_NON_NULL(time,timevalTime); 859 PS_ASSERT_INT_WITHIN_RANGE(time->nsec,0,1e9-1,timevalTime); 860 860 861 861 timevalTime.tv_sec = time->sec; … … 879 879 880 880 // Error checks 881 PS_ PTR_CHECK_NULL(time,NULL);882 PS_ INT_CHECK_RANGE(time->nsec,0,1e9-1,NULL);881 PS_ASSERT_PTR_NON_NULL(time,NULL); 882 PS_ASSERT_INT_WITHIN_RANGE(time->nsec,0,1e9-1,NULL); 883 883 884 884 seconds = time->sec%60; … … 949 949 950 950 // Error check 951 PS_ INT_CHECK_RANGE(outTime->nsec,0,1e9-1,outTime);951 PS_ASSERT_INT_WITHIN_RANGE(outTime->nsec,0,1e9-1,outTime); 952 952 953 953 return outTime; … … 975 975 976 976 // Error check 977 PS_ INT_CHECK_RANGE(outTime->nsec,0,1e9-1,outTime);977 PS_ASSERT_INT_WITHIN_RANGE(outTime->nsec,0,1e9-1,outTime); 978 978 979 979 return outTime; … … 993 993 } 994 994 995 PS_ INT_CHECK_NON_NEGATIVE(tmTime.tm_year, outTime);996 PS_ INT_CHECK_RANGE(tmTime.tm_mon,1,12,outTime);997 PS_ INT_CHECK_RANGE(tmTime.tm_mday,1,31,outTime);998 PS_ INT_CHECK_RANGE(tmTime.tm_hour,0,23,outTime);999 PS_ INT_CHECK_RANGE(tmTime.tm_min,0,59,outTime);1000 PS_ INT_CHECK_RANGE(tmTime.tm_sec,0,59,outTime);1001 PS_ INT_CHECK_RANGE(millisecond,0,999,outTime);995 PS_ASSERT_INT_NONNEGATIVE(tmTime.tm_year, outTime); 996 PS_ASSERT_INT_WITHIN_RANGE(tmTime.tm_mon,1,12,outTime); 997 PS_ASSERT_INT_WITHIN_RANGE(tmTime.tm_mday,1,31,outTime); 998 PS_ASSERT_INT_WITHIN_RANGE(tmTime.tm_hour,0,23,outTime); 999 PS_ASSERT_INT_WITHIN_RANGE(tmTime.tm_min,0,59,outTime); 1000 PS_ASSERT_INT_WITHIN_RANGE(tmTime.tm_sec,0,59,outTime); 1001 PS_ASSERT_INT_WITHIN_RANGE(millisecond,0,999,outTime); 1002 1002 1003 1003 tmTime.tm_year -= 1900; … … 1018 1018 1019 1019 // Error check 1020 PS_ PTR_CHECK_NULL(time,NULL);1020 PS_ASSERT_PTR_NON_NULL(time,NULL); 1021 1021 1022 1022 // Allocate psTime struct … … 1028 1028 1029 1029 // Error check 1030 PS_ INT_CHECK_RANGE(outTime->nsec,0,1e9-1,outTime);1030 PS_ASSERT_INT_WITHIN_RANGE(outTime->nsec,0,1e9-1,outTime); 1031 1031 1032 1032 return outTime; … … 1046 1046 1047 1047 // Error check 1048 PS_ PTR_CHECK_NULL(time,NULL);1048 PS_ASSERT_PTR_NON_NULL(time,NULL); 1049 1049 1050 1050 // Allocate psTime struct … … 1087 1087 1088 1088 // Error check 1089 PS_ INT_CHECK_RANGE(outTime->nsec,0,1e9-1,outTime);1089 PS_ASSERT_INT_WITHIN_RANGE(outTime->nsec,0,1e9-1,outTime); 1090 1090 1091 1091 return outTime; … … 1100 1100 1101 1101 // Error checks 1102 PS_ PTR_CHECK_NULL(time,NULL);1103 PS_ INT_CHECK_RANGE(time->nsec,0,1e9-1,NULL);1102 PS_ASSERT_PTR_NON_NULL(time,NULL); 1103 PS_ASSERT_INT_WITHIN_RANGE(time->nsec,0,1e9-1,NULL); 1104 1104 1105 1105 // Convert time to TAI if necessary, but without changing input arguments … … 1120 1120 1121 1121 // Error check 1122 PS_ INT_CHECK_RANGE(outTime->nsec,0,1e9-1,outTime);1122 PS_ASSERT_INT_WITHIN_RANGE(outTime->nsec,0,1e9-1,outTime); 1123 1123 1124 1124 // Convert result to same time type as input … … 1142 1142 1143 1143 // Error checks 1144 PS_ PTR_CHECK_NULL(time1,0.0);1145 PS_ INT_CHECK_RANGE(time1->nsec,0,1e9-1,0.0);1146 PS_ PTR_CHECK_NULL(time2,0.0);1147 PS_ INT_CHECK_RANGE(time2->nsec,0,1e9-1,0.0);1144 PS_ASSERT_PTR_NON_NULL(time1,0.0); 1145 PS_ASSERT_INT_WITHIN_RANGE(time1->nsec,0,1e9-1,0.0); 1146 PS_ASSERT_PTR_NON_NULL(time2,0.0); 1147 PS_ASSERT_INT_WITHIN_RANGE(time2->nsec,0,1e9-1,0.0); 1148 1148 1149 1149 // Convert time to TAI if necessary, but without changing input arguments -
trunk/psLib/src/astronomy/psAstrometry.c
r3708 r4029 8 8 * @author GLG, MHPCC 9 9 * 10 * @version $Revision: 1.6 5$ $Name: not supported by cvs2svn $11 * @date $Date: 2005-0 4-19 00:17:05 $10 * @version $Revision: 1.66 $ $Name: not supported by cvs2svn $ 11 * @date $Date: 2005-05-25 20:26:55 $ 12 12 * 13 13 * Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii … … 41 41 psImage* tmpImage) 42 42 { 43 PS_ IMAGE_CHECK_NULL(tmpImage, 0);43 PS_ASSERT_IMAGE_NON_NULL(tmpImage, 0); 44 44 45 45 if ((x < 0.0) || (x > (double)tmpImage->numCols) || … … 154 154 psS32 j; 155 155 156 PS_ IMAGE_CHECK_NULL(x, NULL);157 PS_ IMAGE_CHECK_NULL(y, NULL);158 PS_ IMAGE_CHECK_TYPE(x, PS_TYPE_F64, NULL);159 PS_ IMAGE_CHECK_TYPE(y, PS_TYPE_F64, NULL);156 PS_ASSERT_IMAGE_NON_NULL(x, NULL); 157 PS_ASSERT_IMAGE_NON_NULL(y, NULL); 158 PS_ASSERT_IMAGE_TYPE(x, PS_TYPE_F64, NULL); 159 PS_ASSERT_IMAGE_TYPE(y, PS_TYPE_F64, NULL); 160 160 161 161 tmp = (psFixedPattern *) psAlloc(sizeof(psFixedPattern)); … … 211 211 const psObservatory* observatory) 212 212 { 213 PS_ PTR_CHECK_NULL(observatory, NULL);213 PS_ASSERT_PTR_NON_NULL(observatory, NULL); 214 214 215 215 psExposure* exp = psAlloc(sizeof(psExposure)); … … 271 271 const psExposure* exp) 272 272 { 273 PS_ INT_CHECK_NON_NEGATIVE(nChips, NULL);273 PS_ASSERT_INT_NONNEGATIVE(nChips, NULL); 274 274 275 275 psFPA* newFPA = psAlloc(sizeof(psFPA)); … … 315 315 psFPA *parentFPA) 316 316 { 317 PS_ INT_CHECK_NON_NEGATIVE(nCells, NULL);317 PS_ASSERT_INT_NONNEGATIVE(nCells, NULL); 318 318 319 319 psChip* chip = psAlloc(sizeof(psChip)); … … 350 350 psChip* parentChip) 351 351 { 352 PS_ INT_CHECK_NON_NEGATIVE(nReadouts, NULL);352 PS_ASSERT_INT_NONNEGATIVE(nReadouts, NULL); 353 353 354 354 psCell* cell = psAlloc(sizeof(psCell)); … … 406 406 psGrommit* psGrommitAlloc(const psExposure* exp) 407 407 { 408 PS_ PTR_CHECK_NULL(exp, NULL);408 PS_ASSERT_PTR_NON_NULL(exp, NULL); 409 409 410 410 double date = psTimeToMJD(exp->time); … … 436 436 const psFPA* FPA) 437 437 { 438 PS_ PTR_CHECK_NULL(fpaCoord, NULL);439 PS_ PTR_CHECK_NULL(FPA, NULL);438 PS_ASSERT_PTR_NON_NULL(fpaCoord, NULL); 439 PS_ASSERT_PTR_NON_NULL(FPA, NULL); 440 440 441 441 psChip* tmpChip = NULL; … … 461 461 const psFPA* FPA) 462 462 { 463 PS_ PTR_CHECK_NULL(fpaCoord, NULL);464 PS_ PTR_CHECK_NULL(FPA, NULL);465 PS_ PTR_CHECK_NULL(FPA->chips, NULL);463 PS_ASSERT_PTR_NON_NULL(fpaCoord, NULL); 464 PS_ASSERT_PTR_NON_NULL(FPA, NULL); 465 PS_ASSERT_PTR_NON_NULL(FPA->chips, NULL); 466 466 467 467 psArray* chips = FPA->chips; … … 476 476 for (psS32 i = 0; i < nChips; i++) { 477 477 psChip* tmpChip = chips->data[i]; 478 PS_ PTR_CHECK_NULL(tmpChip, NULL);479 PS_ PTR_CHECK_NULL(tmpChip->fromFPA, NULL);478 PS_ASSERT_PTR_NON_NULL(tmpChip, NULL); 479 PS_ASSERT_PTR_NON_NULL(tmpChip->fromFPA, NULL); 480 480 481 481 psPlaneTransformApply(&chipCoord, tmpChip->fromFPA, fpaCoord); … … 494 494 const psChip* chip) 495 495 { 496 PS_ PTR_CHECK_NULL(chipCoord, NULL);497 PS_ PTR_CHECK_NULL(chip, NULL);496 PS_ASSERT_PTR_NON_NULL(chipCoord, NULL); 497 PS_ASSERT_PTR_NON_NULL(chip, NULL); 498 498 499 499 psPlane cellCoord; … … 511 511 for (psS32 i = 0; i < cells->n; i++) { 512 512 psCell* tmpCell = (psCell* ) cells->data[i]; 513 PS_ PTR_CHECK_NULL(tmpCell, NULL);514 PS_ PTR_CHECK_NULL(tmpCell->fromChip, NULL);513 PS_ASSERT_PTR_NON_NULL(tmpCell, NULL); 514 PS_ASSERT_PTR_NON_NULL(tmpCell->fromChip, NULL); 515 515 psArray* readouts = tmpCell->readouts; 516 516 … … 518 518 for (psS32 j = 0; j < readouts->n; j++) { 519 519 psReadout* tmpReadout = readouts->data[j]; 520 PS_ READOUT_CHECK_NULL(tmpReadout, NULL);520 PS_ASSERT_READOUT_NON_NULL(tmpReadout, NULL); 521 521 522 522 psPlaneTransformApply(&cellCoord, … … 540 540 const psCell* cell) 541 541 { 542 PS_ PTR_CHECK_NULL(inCoord, NULL);543 PS_ PTR_CHECK_NULL(cell, NULL);542 PS_ASSERT_PTR_NON_NULL(inCoord, NULL); 543 PS_ASSERT_PTR_NON_NULL(cell, NULL); 544 544 545 545 return (psPlaneTransformApply(outCoord, cell->toChip, inCoord)); … … 550 550 const psChip* chip) 551 551 { 552 PS_ PTR_CHECK_NULL(inCoord, NULL);553 PS_ PTR_CHECK_NULL(chip, NULL);552 PS_ASSERT_PTR_NON_NULL(inCoord, NULL); 553 PS_ASSERT_PTR_NON_NULL(chip, NULL); 554 554 555 555 return (psPlaneTransformApply(outCoord, chip->toFPA, inCoord)); … … 562 562 const psFPA* fpa) 563 563 { 564 PS_ PTR_CHECK_NULL(inCoord, NULL);565 PS_ PTR_CHECK_NULL(fpa, NULL);564 PS_ASSERT_PTR_NON_NULL(inCoord, NULL); 565 PS_ASSERT_PTR_NON_NULL(fpa, NULL); 566 566 567 567 return(psPlaneDistortApply(outCoord, fpa->toTangentPlane, inCoord, … … 576 576 const psGrommit* grommit) 577 577 { 578 PS_ PTR_CHECK_NULL(tpCoord, NULL);579 PS_ PTR_CHECK_NULL(grommit, NULL);578 PS_ASSERT_PTR_NON_NULL(tpCoord, NULL); 579 PS_ASSERT_PTR_NON_NULL(grommit, NULL); 580 580 581 581 double AOB = 0.0; … … 596 596 const psCell* cell) 597 597 { 598 PS_ PTR_CHECK_NULL(cellCoord, NULL);599 PS_ PTR_CHECK_NULL(cell, NULL);598 PS_ASSERT_PTR_NON_NULL(cellCoord, NULL); 599 PS_ASSERT_PTR_NON_NULL(cell, NULL); 600 600 601 601 return (psPlaneTransformApply(fpaCoord, cell->toFPA, cellCoord)); … … 608 608 const psCell* cell) 609 609 { 610 PS_ PTR_CHECK_NULL(cellCoord, NULL);611 PS_ PTR_CHECK_NULL(cell, NULL);612 PS_ PTR_CHECK_NULL(cell->toFPA, NULL);613 PS_ PTR_CHECK_NULL(cell->parent, NULL);614 PS_ PTR_CHECK_NULL(cell->parent->parent, NULL);615 PS_ PTR_CHECK_NULL(cell->parent->parent->toTangentPlane, NULL);616 PS_ PTR_CHECK_NULL(cell->parent->parent->exposure, NULL);610 PS_ASSERT_PTR_NON_NULL(cellCoord, NULL); 611 PS_ASSERT_PTR_NON_NULL(cell, NULL); 612 PS_ASSERT_PTR_NON_NULL(cell->toFPA, NULL); 613 PS_ASSERT_PTR_NON_NULL(cell->parent, NULL); 614 PS_ASSERT_PTR_NON_NULL(cell->parent->parent, NULL); 615 PS_ASSERT_PTR_NON_NULL(cell->parent->parent->toTangentPlane, NULL); 616 PS_ASSERT_PTR_NON_NULL(cell->parent->parent->exposure, NULL); 617 617 618 618 psPlane* fpaCoord = NULL; … … 645 645 const psCell* cell) 646 646 { 647 PS_ PTR_CHECK_NULL(cellCoord, NULL);648 PS_ PTR_CHECK_NULL(cell, NULL);649 PS_ PTR_CHECK_NULL(cell->toSky, NULL);650 PS_ PTR_CHECK_NULL(cell->parent, NULL);651 PS_ PTR_CHECK_NULL(cell->parent->parent, NULL);652 PS_ PTR_CHECK_NULL(cell->parent->parent->projection, NULL);647 PS_ASSERT_PTR_NON_NULL(cellCoord, NULL); 648 PS_ASSERT_PTR_NON_NULL(cell, NULL); 649 PS_ASSERT_PTR_NON_NULL(cell->toSky, NULL); 650 PS_ASSERT_PTR_NON_NULL(cell->parent, NULL); 651 PS_ASSERT_PTR_NON_NULL(cell->parent->parent, NULL); 652 PS_ASSERT_PTR_NON_NULL(cell->parent->parent->projection, NULL); 653 653 if (cell->toSky) { 654 654 // XXX: Should we use toTP or toSky? … … 690 690 const psGrommit* grommit) 691 691 { 692 PS_ PTR_CHECK_NULL(in, NULL);693 PS_ PTR_CHECK_NULL(grommit, NULL);692 PS_ASSERT_PTR_NON_NULL(in, NULL); 693 PS_ASSERT_PTR_NON_NULL(grommit, NULL); 694 694 695 695 char* type = "RA"; … … 711 711 const psFPA* fpa) 712 712 { 713 PS_ PTR_CHECK_NULL(tpCoord, NULL);714 PS_ PTR_CHECK_NULL(fpa, NULL);715 PS_ PTR_CHECK_NULL(fpa->fromTangentPlane, NULL);713 PS_ASSERT_PTR_NON_NULL(tpCoord, NULL); 714 PS_ASSERT_PTR_NON_NULL(fpa, NULL); 715 PS_ASSERT_PTR_NON_NULL(fpa->fromTangentPlane, NULL); 716 716 717 717 return (psPlaneDistortApply(fpaCoord, fpa->fromTangentPlane, … … 723 723 const psChip* chip) 724 724 { 725 PS_ PTR_CHECK_NULL(fpaCoord, NULL);726 PS_ PTR_CHECK_NULL(chip, NULL);727 PS_ PTR_CHECK_NULL(chip->fromFPA, NULL);725 PS_ASSERT_PTR_NON_NULL(fpaCoord, NULL); 726 PS_ASSERT_PTR_NON_NULL(chip, NULL); 727 PS_ASSERT_PTR_NON_NULL(chip->fromFPA, NULL); 728 728 729 729 chipCoord = psPlaneTransformApply(chipCoord, chip->fromFPA, fpaCoord); … … 735 735 const psCell* cell) 736 736 { 737 PS_ PTR_CHECK_NULL(chipCoord, NULL);738 PS_ PTR_CHECK_NULL(cell, NULL);739 PS_ PTR_CHECK_NULL(cell->fromChip, NULL);737 PS_ASSERT_PTR_NON_NULL(chipCoord, NULL); 738 PS_ASSERT_PTR_NON_NULL(cell, NULL); 739 PS_ASSERT_PTR_NON_NULL(cell->fromChip, NULL); 740 740 741 741 cellCoord = psPlaneTransformApply(cellCoord, cell->fromChip, chipCoord); … … 749 749 const psCell* cell) 750 750 { 751 PS_ PTR_CHECK_NULL(skyCoord, NULL);752 PS_ PTR_CHECK_NULL(cell, NULL);753 PS_ PTR_CHECK_NULL(cell->parent, NULL);754 PS_ PTR_CHECK_NULL(cell->parent->parent, NULL);755 PS_ PTR_CHECK_NULL(cell->parent->parent->grommit, NULL);751 PS_ASSERT_PTR_NON_NULL(skyCoord, NULL); 752 PS_ASSERT_PTR_NON_NULL(cell, NULL); 753 PS_ASSERT_PTR_NON_NULL(cell->parent, NULL); 754 PS_ASSERT_PTR_NON_NULL(cell->parent->parent, NULL); 755 PS_ASSERT_PTR_NON_NULL(cell->parent->parent->grommit, NULL); 756 756 757 757 psChip *parChip = cell->parent; … … 783 783 const psCell* cell) 784 784 { 785 PS_ PTR_CHECK_NULL(skyCoord, NULL);786 PS_ PTR_CHECK_NULL(cell, NULL);787 PS_ PTR_CHECK_NULL(cell->parent, NULL);788 PS_ PTR_CHECK_NULL(cell->parent->parent, NULL);789 PS_ PTR_CHECK_NULL(cell->parent->parent->projection, NULL);790 PS_ PTR_CHECK_NULL(cell->toTP, NULL);785 PS_ASSERT_PTR_NON_NULL(skyCoord, NULL); 786 PS_ASSERT_PTR_NON_NULL(cell, NULL); 787 PS_ASSERT_PTR_NON_NULL(cell->parent, NULL); 788 PS_ASSERT_PTR_NON_NULL(cell->parent->parent, NULL); 789 PS_ASSERT_PTR_NON_NULL(cell->parent->parent->projection, NULL); 790 PS_ASSERT_PTR_NON_NULL(cell->toTP, NULL); 791 791 if (cell->toSky) { 792 792 // XXX: Should we use toTP or toSky? -
trunk/psLib/src/astronomy/psCoord.c
r3991 r4029 10 10 * @author GLG, MHPCC 11 11 * 12 * @version $Revision: 1. 69$ $Name: not supported by cvs2svn $13 * @date $Date: 2005-05-2 0 00:15:50$12 * @version $Revision: 1.70 $ $Name: not supported by cvs2svn $ 13 * @date $Date: 2005-05-25 20:26:55 $ 14 14 * 15 15 * Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii … … 94 94 psPlaneTransform *p_psPlaneTransformLinearInvert(psPlaneTransform *transform) 95 95 { 96 PS_ PTR_CHECK_NULL(transform, 0);97 PS_ PTR_CHECK_NULL(transform->x, 0);98 PS_ PTR_CHECK_NULL(transform->y, 0);96 PS_ASSERT_PTR_NON_NULL(transform, 0); 97 PS_ASSERT_PTR_NON_NULL(transform->x, 0); 98 PS_ASSERT_PTR_NON_NULL(transform->y, 0); 99 99 100 100 psF64 A = 0.0; … … 160 160 psS32 p_psIsProjectionLinear(psPlaneTransform *transform) 161 161 { 162 PS_ PTR_CHECK_NULL(transform, 0);163 PS_ PTR_CHECK_NULL(transform->x, 0);164 PS_ PTR_CHECK_NULL(transform->y, 0);162 PS_ASSERT_PTR_NON_NULL(transform, 0); 163 PS_ASSERT_PTR_NON_NULL(transform->x, 0); 164 PS_ASSERT_PTR_NON_NULL(transform->y, 0); 165 165 166 166 for (psS32 i=0;i<(transform->x->nX);i++) { … … 223 223 psPlaneTransform* psPlaneTransformAlloc(psS32 n1, psS32 n2) 224 224 { 225 PS_ INT_CHECK_NON_NEGATIVE(n1, NULL);226 PS_ INT_CHECK_NON_NEGATIVE(n2, NULL);225 PS_ASSERT_INT_NONNEGATIVE(n1, NULL); 226 PS_ASSERT_INT_NONNEGATIVE(n2, NULL); 227 227 228 228 psPlaneTransform *pt = psAlloc(sizeof(psPlaneTransform)); … … 238 238 const psPlane* coords) 239 239 { 240 PS_ PTR_CHECK_NULL(transform, NULL);241 PS_ PTR_CHECK_NULL(transform->x, NULL);242 PS_ PTR_CHECK_NULL(transform->y, NULL);243 PS_ PTR_CHECK_NULL(coords, NULL);240 PS_ASSERT_PTR_NON_NULL(transform, NULL); 241 PS_ASSERT_PTR_NON_NULL(transform->x, NULL); 242 PS_ASSERT_PTR_NON_NULL(transform->y, NULL); 243 PS_ASSERT_PTR_NON_NULL(coords, NULL); 244 244 245 245 if (out == NULL) { … … 267 267 psPlaneDistort* psPlaneDistortAlloc(psS32 n1, psS32 n2, psS32 n3, psS32 n4) 268 268 { 269 PS_ INT_CHECK_NON_NEGATIVE(n1, NULL);270 PS_ INT_CHECK_NON_NEGATIVE(n2, NULL);271 PS_ INT_CHECK_NON_NEGATIVE(n3, NULL);272 PS_ INT_CHECK_NON_NEGATIVE(n4, NULL);269 PS_ASSERT_INT_NONNEGATIVE(n1, NULL); 270 PS_ASSERT_INT_NONNEGATIVE(n2, NULL); 271 PS_ASSERT_INT_NONNEGATIVE(n3, NULL); 272 PS_ASSERT_INT_NONNEGATIVE(n4, NULL); 273 273 274 274 psPlaneDistort *pt = psAlloc(sizeof(psPlaneDistort)); … … 290 290 float magnitude) 291 291 { 292 PS_ PTR_CHECK_NULL(transform, NULL);293 PS_ PTR_CHECK_NULL(transform->x, NULL);294 PS_ PTR_CHECK_NULL(transform->y, NULL);295 PS_ PTR_CHECK_NULL(coords, NULL);292 PS_ASSERT_PTR_NON_NULL(transform, NULL); 293 PS_ASSERT_PTR_NON_NULL(transform->x, NULL); 294 PS_ASSERT_PTR_NON_NULL(transform->y, NULL); 295 PS_ASSERT_PTR_NON_NULL(coords, NULL); 296 296 297 297 if (out == NULL) { … … 364 364 const psSphere* coord) 365 365 { 366 PS_ PTR_CHECK_NULL(transform, NULL);367 PS_ PTR_CHECK_NULL(coord, NULL);366 PS_ASSERT_PTR_NON_NULL(transform, NULL); 367 PS_ASSERT_PTR_NON_NULL(coord, NULL); 368 368 369 369 if (out == NULL) { … … 394 394 395 395 // Check for null parameter 396 PS_ PTR_CHECK_NULL(time, NULL);396 PS_ASSERT_PTR_NON_NULL(time, NULL); 397 397 398 398 // Convert psTime to MJD … … 427 427 428 428 // Check for null parameter 429 PS_ PTR_CHECK_NULL(time, NULL);429 PS_ASSERT_PTR_NON_NULL(time, NULL); 430 430 431 431 // Convert psTime to MJD … … 498 498 const psProjection* projection) 499 499 { 500 PS_ PTR_CHECK_NULL(coord, NULL);501 PS_ PTR_CHECK_NULL(projection, NULL);500 PS_ASSERT_PTR_NON_NULL(coord, NULL); 501 PS_ASSERT_PTR_NON_NULL(projection, NULL); 502 502 503 503 psF64 theta = 0.0; … … 550 550 const psProjection* projection) 551 551 { 552 PS_ PTR_CHECK_NULL(coord, NULL);553 PS_ PTR_CHECK_NULL(projection, NULL);552 PS_ASSERT_PTR_NON_NULL(coord, NULL); 553 PS_ASSERT_PTR_NON_NULL(projection, NULL); 554 554 555 555 psF64 theta = 0.0; … … 622 622 psSphereOffsetUnit unit) 623 623 { 624 PS_ PTR_CHECK_NULL(position1, NULL);625 PS_ PTR_CHECK_NULL(position2, NULL);624 PS_ASSERT_PTR_NON_NULL(position1, NULL); 625 PS_ASSERT_PTR_NON_NULL(position2, NULL); 626 626 627 627 // Check positions near 90 degree and issue warnings if necessary … … 721 721 psSphereOffsetUnit unit) 722 722 { 723 PS_ PTR_CHECK_NULL(position, NULL);724 PS_ PTR_CHECK_NULL(offset, NULL);723 PS_ASSERT_PTR_NON_NULL(position, NULL); 724 PS_ASSERT_PTR_NON_NULL(offset, NULL); 725 725 726 726 psSphere* tmp; … … 811 811 { 812 812 // Check input for NULL pointers 813 PS_ PTR_CHECK_NULL(coords, NULL);814 PS_ PTR_CHECK_NULL(fromTime, NULL);815 PS_ PTR_CHECK_NULL(toTime, NULL);813 PS_ASSERT_PTR_NON_NULL(coords, NULL); 814 PS_ASSERT_PTR_NON_NULL(fromTime, NULL); 815 PS_ASSERT_PTR_NON_NULL(toTime, NULL); 816 816 817 817 // Calculate Julian centuries … … 904 904 // XXX: This does not yet use region and nSamples: need to modify -rdd 905 905 906 PS_ PTR_CHECK_NULL(trans1, NULL);907 PS_ PTR_CHECK_NULL(trans2, NULL);906 PS_ASSERT_PTR_NON_NULL(trans1, NULL); 907 PS_ASSERT_PTR_NON_NULL(trans2, NULL); 908 908 //TRACE: printf("psPlaneTransformCombine(%d, %d, %d, %d: %d, %d, %d, %d)\n", trans1->x->nX, trans1->x->nY, trans1->y->nX, trans1->y->nY, trans2->x->nX, trans2->x->nY, trans2->y->nX, trans2->y->nY); 909 909 // … … 1047 1047 float sigmaClip) 1048 1048 { 1049 PS_ PTR_CHECK_NULL(trans, NULL);1050 PS_ PTR_CHECK_NULL(source, NULL);1051 PS_ PTR_CHECK_NULL(dest, NULL);1049 PS_ASSERT_PTR_NON_NULL(trans, NULL); 1050 PS_ASSERT_PTR_NON_NULL(source, NULL); 1051 PS_ASSERT_PTR_NON_NULL(dest, NULL); 1052 1052 1053 1053 psS32 numCoords = PS_MIN(source->n, dest->n); … … 1159 1159 int nSamples) 1160 1160 { 1161 PS_ PTR_CHECK_NULL(in, NULL);1161 PS_ASSERT_PTR_NON_NULL(in, NULL); 1162 1162 // 1163 1163 // If the transform is linear, then invert it exactly and return. -
trunk/psLib/src/astronomy/psTime.c
r3884 r4029 10 10 * @author Ross Harman, MHPCC 11 11 * 12 * @version $Revision: 1.6 0$ $Name: not supported by cvs2svn $13 * @date $Date: 2005-05- 11 22:02:15 $12 * @version $Revision: 1.61 $ $Name: not supported by cvs2svn $ 13 * @date $Date: 2005-05-25 20:26:55 $ 14 14 * 15 15 * Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii … … 178 178 } 179 179 table = (psLookupTable*)tableMetadataItem->data.V; 180 PS_ PTR_CHECK_NULL(table,0.0);180 PS_ASSERT_PTR_NON_NULL(table,0.0); 181 181 182 182 // Attempt to interpolate table … … 403 403 404 404 // Error checks 405 PS_ PTR_CHECK_NULL(time,NULL);406 PS_ INT_CHECK_RANGE(time->nsec,0,1e9-1,NULL);405 PS_ASSERT_PTR_NON_NULL(time,NULL); 406 PS_ASSERT_INT_WITHIN_RANGE(time->nsec,0,1e9-1,NULL); 407 407 408 408 if (time->type == type) { // time already right type. That was easy! … … 448 448 449 449 // Error checks 450 PS_ PTR_CHECK_NULL(time,NAN);451 PS_ INT_CHECK_RANGE(time->nsec,0,1e9-1,NAN);450 PS_ASSERT_PTR_NON_NULL(time,NAN); 451 PS_ASSERT_INT_WITHIN_RANGE(time->nsec,0,1e9-1,NAN); 452 452 453 453 // Calculate TAI or UTC time based on type of time user passes … … 519 519 520 520 // Error checks 521 PS_ PTR_CHECK_NULL(time,NAN);522 PS_ INT_CHECK_RANGE(time->nsec,0,1e9-1,NAN);521 PS_ASSERT_PTR_NON_NULL(time,NAN); 522 PS_ASSERT_INT_WITHIN_RANGE(time->nsec,0,1e9-1,NAN); 523 523 524 524 if(time->type != PS_TIME_TAI) { … … 560 560 } 561 561 dut = (psVector*)tableMetadataItem->data.V; 562 PS_ PTR_CHECK_NULL(dut,0.0);562 PS_ASSERT_PTR_NON_NULL(dut,0.0); 563 563 564 564 t = 2000.0 + (mjd - 51544.03)/365.2422; … … 592 592 593 593 // Error checks 594 PS_ PTR_CHECK_NULL(time,NULL);595 PS_ INT_CHECK_RANGE(time->nsec,0,1e9-1,NULL);594 PS_ASSERT_PTR_NON_NULL(time,NULL); 595 PS_ASSERT_INT_WITHIN_RANGE(time->nsec,0,1e9-1,NULL); 596 596 597 597 if(time->type != PS_TIME_TAI) … … 658 658 } 659 659 xp = (psVector*)tableMetadataItem->data.V; 660 PS_ PTR_CHECK_NULL(xp,NULL);660 PS_ASSERT_PTR_NON_NULL(xp,NULL); 661 661 662 662 // Get yp … … 667 667 } 668 668 yp = (psVector*)tableMetadataItem->data.V; 669 PS_ PTR_CHECK_NULL(yp,NULL);669 PS_ASSERT_PTR_NON_NULL(yp,NULL); 670 670 671 671 // Calculate "a" and "c" constants … … 715 715 716 716 // Error checks 717 PS_ PTR_CHECK_NULL(time,NAN);718 PS_ INT_CHECK_RANGE(time->nsec,0,1e9-1,NAN);717 PS_ASSERT_PTR_NON_NULL(time,NAN); 718 PS_ASSERT_INT_WITHIN_RANGE(time->nsec,0,1e9-1,NAN); 719 719 720 720 // Check time metadata … … 733 733 } 734 734 table = (psLookupTable*)tableMetadataItem->data.V; 735 PS_ PTR_CHECK_NULL(table,0);735 PS_ASSERT_PTR_NON_NULL(table,0); 736 736 737 737 // Determine Julian and modified Julian dates used in table lookup and time delta calculation … … 767 767 768 768 // Error checks 769 PS_ PTR_CHECK_NULL(time1,0);770 PS_ PTR_CHECK_NULL(time2,0);771 PS_ INT_CHECK_RANGE(time1->nsec,0,1e9-1,0);772 PS_ INT_CHECK_RANGE(time2->nsec,0,1e9-1,0);769 PS_ASSERT_PTR_NON_NULL(time1,0); 770 PS_ASSERT_PTR_NON_NULL(time2,0); 771 PS_ASSERT_INT_WITHIN_RANGE(time1->nsec,0,1e9-1,0); 772 PS_ASSERT_INT_WITHIN_RANGE(time2->nsec,0,1e9-1,0); 773 773 diff = abs((psS64)psTimeGetTAIDelta((psTime*)time1)-(psS64)psTimeGetTAIDelta((psTime*)time2)); 774 774 … … 781 781 782 782 // Error checks 783 PS_ PTR_CHECK_NULL(time,NAN);784 PS_ INT_CHECK_RANGE(time->nsec,0,1e9-1,NAN);783 PS_ASSERT_PTR_NON_NULL(time,NAN); 784 PS_ASSERT_INT_WITHIN_RANGE(time->nsec,0,1e9-1,NAN); 785 785 786 786 // Julian date conversion … … 800 800 801 801 // Error checks 802 PS_ PTR_CHECK_NULL(time,NAN);803 PS_ INT_CHECK_RANGE(time->nsec,0,1e9-1,NAN);802 PS_ASSERT_PTR_NON_NULL(time,NAN); 803 PS_ASSERT_INT_WITHIN_RANGE(time->nsec,0,1e9-1,NAN); 804 804 805 805 // Modified Julian date conversion … … 823 823 824 824 // Error checks 825 PS_ PTR_CHECK_NULL(time,NULL);826 PS_ INT_CHECK_RANGE(time->nsec,0,1e9-1,NULL);825 PS_ASSERT_PTR_NON_NULL(time,NULL); 826 PS_ASSERT_INT_WITHIN_RANGE(time->nsec,0,1e9-1,NULL); 827 827 828 828 tempString = psAlloc(MAX_TIME_STRING_LENGTH); … … 856 856 857 857 // Error checks 858 PS_ PTR_CHECK_NULL(time,timevalTime);859 PS_ INT_CHECK_RANGE(time->nsec,0,1e9-1,timevalTime);858 PS_ASSERT_PTR_NON_NULL(time,timevalTime); 859 PS_ASSERT_INT_WITHIN_RANGE(time->nsec,0,1e9-1,timevalTime); 860 860 861 861 timevalTime.tv_sec = time->sec; … … 879 879 880 880 // Error checks 881 PS_ PTR_CHECK_NULL(time,NULL);882 PS_ INT_CHECK_RANGE(time->nsec,0,1e9-1,NULL);881 PS_ASSERT_PTR_NON_NULL(time,NULL); 882 PS_ASSERT_INT_WITHIN_RANGE(time->nsec,0,1e9-1,NULL); 883 883 884 884 seconds = time->sec%60; … … 949 949 950 950 // Error check 951 PS_ INT_CHECK_RANGE(outTime->nsec,0,1e9-1,outTime);951 PS_ASSERT_INT_WITHIN_RANGE(outTime->nsec,0,1e9-1,outTime); 952 952 953 953 return outTime; … … 975 975 976 976 // Error check 977 PS_ INT_CHECK_RANGE(outTime->nsec,0,1e9-1,outTime);977 PS_ASSERT_INT_WITHIN_RANGE(outTime->nsec,0,1e9-1,outTime); 978 978 979 979 return outTime; … … 993 993 } 994 994 995 PS_ INT_CHECK_NON_NEGATIVE(tmTime.tm_year, outTime);996 PS_ INT_CHECK_RANGE(tmTime.tm_mon,1,12,outTime);997 PS_ INT_CHECK_RANGE(tmTime.tm_mday,1,31,outTime);998 PS_ INT_CHECK_RANGE(tmTime.tm_hour,0,23,outTime);999 PS_ INT_CHECK_RANGE(tmTime.tm_min,0,59,outTime);1000 PS_ INT_CHECK_RANGE(tmTime.tm_sec,0,59,outTime);1001 PS_ INT_CHECK_RANGE(millisecond,0,999,outTime);995 PS_ASSERT_INT_NONNEGATIVE(tmTime.tm_year, outTime); 996 PS_ASSERT_INT_WITHIN_RANGE(tmTime.tm_mon,1,12,outTime); 997 PS_ASSERT_INT_WITHIN_RANGE(tmTime.tm_mday,1,31,outTime); 998 PS_ASSERT_INT_WITHIN_RANGE(tmTime.tm_hour,0,23,outTime); 999 PS_ASSERT_INT_WITHIN_RANGE(tmTime.tm_min,0,59,outTime); 1000 PS_ASSERT_INT_WITHIN_RANGE(tmTime.tm_sec,0,59,outTime); 1001 PS_ASSERT_INT_WITHIN_RANGE(millisecond,0,999,outTime); 1002 1002 1003 1003 tmTime.tm_year -= 1900; … … 1018 1018 1019 1019 // Error check 1020 PS_ PTR_CHECK_NULL(time,NULL);1020 PS_ASSERT_PTR_NON_NULL(time,NULL); 1021 1021 1022 1022 // Allocate psTime struct … … 1028 1028 1029 1029 // Error check 1030 PS_ INT_CHECK_RANGE(outTime->nsec,0,1e9-1,outTime);1030 PS_ASSERT_INT_WITHIN_RANGE(outTime->nsec,0,1e9-1,outTime); 1031 1031 1032 1032 return outTime; … … 1046 1046 1047 1047 // Error check 1048 PS_ PTR_CHECK_NULL(time,NULL);1048 PS_ASSERT_PTR_NON_NULL(time,NULL); 1049 1049 1050 1050 // Allocate psTime struct … … 1087 1087 1088 1088 // Error check 1089 PS_ INT_CHECK_RANGE(outTime->nsec,0,1e9-1,outTime);1089 PS_ASSERT_INT_WITHIN_RANGE(outTime->nsec,0,1e9-1,outTime); 1090 1090 1091 1091 return outTime; … … 1100 1100 1101 1101 // Error checks 1102 PS_ PTR_CHECK_NULL(time,NULL);1103 PS_ INT_CHECK_RANGE(time->nsec,0,1e9-1,NULL);1102 PS_ASSERT_PTR_NON_NULL(time,NULL); 1103 PS_ASSERT_INT_WITHIN_RANGE(time->nsec,0,1e9-1,NULL); 1104 1104 1105 1105 // Convert time to TAI if necessary, but without changing input arguments … … 1120 1120 1121 1121 // Error check 1122 PS_ INT_CHECK_RANGE(outTime->nsec,0,1e9-1,outTime);1122 PS_ASSERT_INT_WITHIN_RANGE(outTime->nsec,0,1e9-1,outTime); 1123 1123 1124 1124 // Convert result to same time type as input … … 1142 1142 1143 1143 // Error checks 1144 PS_ PTR_CHECK_NULL(time1,0.0);1145 PS_ INT_CHECK_RANGE(time1->nsec,0,1e9-1,0.0);1146 PS_ PTR_CHECK_NULL(time2,0.0);1147 PS_ INT_CHECK_RANGE(time2->nsec,0,1e9-1,0.0);1144 PS_ASSERT_PTR_NON_NULL(time1,0.0); 1145 PS_ASSERT_INT_WITHIN_RANGE(time1->nsec,0,1e9-1,0.0); 1146 PS_ASSERT_PTR_NON_NULL(time2,0.0); 1147 PS_ASSERT_INT_WITHIN_RANGE(time2->nsec,0,1e9-1,0.0); 1148 1148 1149 1149 // Convert time to TAI if necessary, but without changing input arguments -
trunk/psLib/src/collections/psMetadata.c
r3945 r4029 12 12 * @author Ross Harman, MHPCC 13 13 * 14 * @version $Revision: 1.6 2$ $Name: not supported by cvs2svn $15 * @date $Date: 2005-05- 16 19:43:53$14 * @version $Revision: 1.63 $ $Name: not supported by cvs2svn $ 15 * @date $Date: 2005-05-25 20:26:55 $ 16 16 * 17 17 * Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii … … 179 179 180 180 181 PS_ PTR_CHECK_NULL(name,NULL);181 PS_ASSERT_PTR_NON_NULL(name,NULL); 182 182 183 183 // Allocate metadata item … … 275 275 psMetadataItem *existingEntry = NULL; 276 276 277 PS_ PTR_CHECK_NULL(md,NULL);278 PS_ PTR_CHECK_NULL(md->table,NULL);279 PS_ PTR_CHECK_NULL(md->list,NULL);280 PS_ PTR_CHECK_NULL(metadataItem,NULL);281 PS_ PTR_CHECK_NULL(metadataItem->name,NULL);277 PS_ASSERT_PTR_NON_NULL(md,NULL); 278 PS_ASSERT_PTR_NON_NULL(md->table,NULL); 279 PS_ASSERT_PTR_NON_NULL(md->list,NULL); 280 PS_ASSERT_PTR_NON_NULL(metadataItem,NULL); 281 PS_ASSERT_PTR_NON_NULL(metadataItem->name,NULL); 282 282 283 283 mdTable = md->table; … … 410 410 psBool psMetadataRemove(psMetadata *md, psS32 where, const char *key) 411 411 { 412 PS_ PTR_CHECK_NULL(md,NULL);413 414 PS_ PTR_CHECK_NULL(md->list,NULL);412 PS_ASSERT_PTR_NON_NULL(md,NULL); 413 414 PS_ASSERT_PTR_NON_NULL(md->list,NULL); 415 415 psList* mdList = md->list; 416 416 417 PS_ PTR_CHECK_NULL(md->table,NULL);417 PS_ASSERT_PTR_NON_NULL(md->table,NULL); 418 418 psHash* mdTable = md->table; 419 419 … … 482 482 483 483 484 PS_ PTR_CHECK_NULL(md,NULL);485 PS_ PTR_CHECK_NULL(md->table,NULL);486 PS_ PTR_CHECK_NULL(key,NULL);484 PS_ASSERT_PTR_NON_NULL(md,NULL); 485 PS_ASSERT_PTR_NON_NULL(md->table,NULL); 486 PS_ASSERT_PTR_NON_NULL(key,NULL); 487 487 488 488 mdTable = md->table; … … 583 583 psMetadataItem* entry = NULL; 584 584 585 PS_ PTR_CHECK_NULL(md,NULL);586 PS_ PTR_CHECK_NULL(md->list,NULL);585 PS_ASSERT_PTR_NON_NULL(md,NULL); 586 PS_ASSERT_PTR_NON_NULL(md->list,NULL); 587 587 588 588 entry = (psMetadataItem*) psListGet(md->list, where); … … 599 599 const char* regex) 600 600 { 601 PS_ PTR_CHECK_NULL(md,NULL);602 PS_ PTR_CHECK_NULL(md->list,NULL);601 PS_ASSERT_PTR_NON_NULL(md,NULL); 602 PS_ASSERT_PTR_NON_NULL(md->list,NULL); 603 603 604 604 psMetadataIterator* newIter = psAlloc(sizeof(psMetadataIterator)); … … 637 637 psMetadataItem* cursor; 638 638 639 PS_ PTR_CHECK_NULL(iterator,NULL);639 PS_ASSERT_PTR_NON_NULL(iterator,NULL); 640 640 641 641 psListIterator* iter = iterator->iter; 642 PS_ PTR_CHECK_NULL(iterator->iter,NULL);642 PS_ASSERT_PTR_NON_NULL(iterator->iter,NULL); 643 643 644 644 regex_t* preg = iterator->preg; … … 686 686 psMetadataItem* oldValue; 687 687 688 PS_ PTR_CHECK_NULL(iterator,NULL);688 PS_ASSERT_PTR_NON_NULL(iterator,NULL); 689 689 690 690 psListIterator* iter = iterator->iter; 691 PS_ PTR_CHECK_NULL(iterator->iter,NULL);691 PS_ASSERT_PTR_NON_NULL(iterator->iter,NULL); 692 692 693 693 regex_t* preg = iterator->preg; … … 714 714 psMetadataItem* oldValue; 715 715 716 PS_ PTR_CHECK_NULL(iterator,NULL);716 PS_ASSERT_PTR_NON_NULL(iterator,NULL); 717 717 718 718 psListIterator* iter = iterator->iter; 719 PS_ PTR_CHECK_NULL(iterator->iter,NULL);719 PS_ASSERT_PTR_NON_NULL(iterator->iter,NULL); 720 720 721 721 regex_t* preg = iterator->preg; -
trunk/psLib/src/collections/psMetadataIO.c
r3980 r4029 10 10 * @author Eric Van Alst, MHPCC 11 11 * 12 * @version $Revision: 1.2 7$ $Name: not supported by cvs2svn $13 * @date $Date: 2005-05- 19 20:48:28$12 * @version $Revision: 1.28 $ $Name: not supported by cvs2svn $ 13 * @date $Date: 2005-05-25 20:26:55 $ 14 14 * 15 15 * Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii … … 368 368 psBool success = true; 369 369 370 PS_ PTR_CHECK_NULL(fd, success);371 PS_ PTR_CHECK_NULL(format, success);372 PS_ PTR_CHECK_NULL(metadataItem, success);370 PS_ASSERT_PTR_NON_NULL(fd, success); 371 PS_ASSERT_PTR_NON_NULL(format, success); 372 PS_ASSERT_PTR_NON_NULL(metadataItem, success); 373 373 374 374 type = metadataItem->type; … … 469 469 fitsfile *fd = NULL; 470 470 471 PS_ PTR_CHECK_NULL(fileName,NULL);471 PS_ASSERT_PTR_NON_NULL(fileName,NULL); 472 472 473 473 fits_open_file(&fd, fileName, READONLY, &status); … … 1086 1086 1087 1087 // Check for NULL file name 1088 PS_ PTR_CHECK_NULL(fileName,NULL);1088 PS_ASSERT_PTR_NON_NULL(fileName,NULL); 1089 1089 1090 1090 // Check for NULL nFail 1091 PS_ PTR_CHECK_NULL(nFail,NULL);1091 PS_ASSERT_PTR_NON_NULL(nFail,NULL); 1092 1092 1093 1093 // Attempt to open specified file … … 1156 1156 // Get and check initial data pointers 1157 1157 ctxt = (xmlParserCtxtPtr)ctx; 1158 PS_ PTR_CHECK_NULL_GENERAL(ctxt, return);1158 PS_ASSERT_GENERAL_PTR_NON_NULL(ctxt, return); 1159 1159 md = (psMetadata*)ctxt->sax->_private; 1160 PS_ PTR_CHECK_NULL_GENERAL(md, return);1160 PS_ASSERT_GENERAL_PTR_NON_NULL(md, return); 1161 1161 input = (xmlParserInputPtr)ctxt->input; 1162 PS_ PTR_CHECK_NULL_GENERAL(input, return);1162 PS_ASSERT_GENERAL_PTR_NON_NULL(input, return); 1163 1163 1164 1164 // Copy XML strings to psStrings to avoid libxml2/psLib memory corruption problems … … 1173 1173 psHashAdd(htAtts, "tagName", psTagName); 1174 1174 } else { 1175 PS_ PTR_CHECK_NULL_GENERAL(psTagName, return);1175 PS_ASSERT_GENERAL_PTR_NON_NULL(psTagName, return); 1176 1176 psFree(htAtts); 1177 1177 psFree(psTagName); … … 1193 1193 psFree(psAttValue); 1194 1194 } else { 1195 PS_ PTR_CHECK_NULL_GENERAL(psAttValue, return);1195 PS_ASSERT_GENERAL_PTR_NON_NULL(psAttValue, return); 1196 1196 psFree(htAtts); 1197 1197 psFree(psTagName); … … 1237 1237 // Get and check initial data pointers 1238 1238 ctxt = (xmlParserCtxtPtr)ctx; 1239 PS_ PTR_CHECK_NULL_GENERAL(ctxt, return);1239 PS_ASSERT_GENERAL_PTR_NON_NULL(ctxt, return); 1240 1240 md = (psMetadata*)ctxt->sax->_private; 1241 PS_ PTR_CHECK_NULL_GENERAL(md, return);1241 PS_ASSERT_GENERAL_PTR_NON_NULL(md, return); 1242 1242 input = (xmlParserInputPtr)ctxt->input; 1243 PS_ PTR_CHECK_NULL_GENERAL(input, return);1243 PS_ASSERT_GENERAL_PTR_NON_NULL(input, return); 1244 1244 metadataItem = psMetadataLookup(md, "htAtts"); 1245 PS_ PTR_CHECK_NULL_GENERAL(metadataItem, return);1246 PS_ PTR_CHECK_NULL_GENERAL(metadataItem->data.list, return);1245 PS_ASSERT_GENERAL_PTR_NON_NULL(metadataItem, return); 1246 PS_ASSERT_GENERAL_PTR_NON_NULL(metadataItem->data.list, return); 1247 1247 metadataItem = (psMetadataItem*)psListGet(metadataItem->data.list,PS_LIST_TAIL); 1248 1248 htAtts = (psHash*)metadataItem->data.list; 1249 PS_ PTR_CHECK_NULL_GENERAL(htAtts, return);1249 PS_ASSERT_GENERAL_PTR_NON_NULL(htAtts, return); 1250 1250 fileName = (char*)input->filename; 1251 PS_ PTR_CHECK_NULL_GENERAL(fileName, return);1251 PS_ASSERT_GENERAL_PTR_NON_NULL(fileName, return); 1252 1252 lineNumber = input->line; 1253 1253 … … 1386 1386 // Get and check initial data pointers 1387 1387 ctxt = (xmlParserCtxtPtr)ctx; 1388 PS_ PTR_CHECK_NULL_GENERAL(ctxt, return);1388 PS_ASSERT_GENERAL_PTR_NON_NULL(ctxt, return); 1389 1389 md = (psMetadata*)ctxt->sax->_private; 1390 PS_ PTR_CHECK_NULL_GENERAL(md, return);1390 PS_ASSERT_GENERAL_PTR_NON_NULL(md, return); 1391 1391 input = (xmlParserInputPtr)ctxt->input; 1392 PS_ PTR_CHECK_NULL_GENERAL(input, return);1392 PS_ASSERT_GENERAL_PTR_NON_NULL(input, return); 1393 1393 tables = psMetadataLookup(md, "htAtts"); 1394 PS_ PTR_CHECK_NULL_GENERAL(tables, return);1395 PS_ PTR_CHECK_NULL_GENERAL(tables->data.list, return);1394 PS_ASSERT_GENERAL_PTR_NON_NULL(tables, return); 1395 PS_ASSERT_GENERAL_PTR_NON_NULL(tables->data.list, return); 1396 1396 table = (psMetadataItem*)psListGet(tables->data.list,PS_LIST_TAIL); 1397 1397 htAtts = (psHash*)table->data.list; 1398 PS_ PTR_CHECK_NULL_GENERAL(htAtts, return);1398 PS_ASSERT_GENERAL_PTR_NON_NULL(htAtts, return); 1399 1399 fileName = (char*)input->filename; 1400 PS_ PTR_CHECK_NULL_GENERAL(fileName, return);1400 PS_ASSERT_GENERAL_PTR_NON_NULL(fileName, return); 1401 1401 lineNumber = input->line; 1402 1402 … … 1427 1427 1428 1428 strValue = psHashLookup(htAtts, "value"); 1429 PS_ PTR_CHECK_NULL_GENERAL(strValue, return);1429 PS_ASSERT_GENERAL_PTR_NON_NULL(strValue, return); 1430 1430 1431 1431 … … 1482 1482 // Get and check initial data pointers 1483 1483 ctxt = (xmlParserCtxtPtr)ctx; 1484 PS_ PTR_CHECK_NULL_GENERAL(ctxt, return);1484 PS_ASSERT_GENERAL_PTR_NON_NULL(ctxt, return); 1485 1485 md = (psMetadata*)ctxt->sax->_private; 1486 PS_ PTR_CHECK_NULL_GENERAL(md, return);1486 PS_ASSERT_GENERAL_PTR_NON_NULL(md, return); 1487 1487 input = (xmlParserInputPtr)ctxt->input; 1488 PS_ PTR_CHECK_NULL_GENERAL(input, return);1488 PS_ASSERT_GENERAL_PTR_NON_NULL(input, return); 1489 1489 tables = psMetadataLookup(md, "htAtts"); 1490 PS_ PTR_CHECK_NULL_GENERAL(tables, return);1491 PS_ PTR_CHECK_NULL_GENERAL(tables->data.list, return);1490 PS_ASSERT_GENERAL_PTR_NON_NULL(tables, return); 1491 PS_ASSERT_GENERAL_PTR_NON_NULL(tables->data.list, return); 1492 1492 table = (psMetadataItem*)psListGet(tables->data.list,PS_LIST_TAIL); 1493 1493 htAtts = (psHash*)table->data.list; 1494 PS_ PTR_CHECK_NULL_GENERAL(htAtts, return);1494 PS_ASSERT_GENERAL_PTR_NON_NULL(htAtts, return); 1495 1495 1496 1496 // Copy XML strings to psStrings to avoid libxml2/psLib memory corruption problems … … 1499 1499 // Compare start and end tag names 1500 1500 psStartTagName = psHashLookup(htAtts, "tagName"); 1501 PS_ PTR_CHECK_NULL_GENERAL(psStartTagName, return);1501 PS_ASSERT_GENERAL_PTR_NON_NULL(psStartTagName, return); 1502 1502 if(strcmp(psEndTagName, psStartTagName)) { 1503 1503 psError(PS_ERR_IO, true, PS_ERRORTEXT_psMetadataIO_TAG_MISMATCH, psStartTagName, psEndTagName); … … 1527 1527 1528 1528 // Error checks 1529 PS_ PTR_CHECK_NULL(fileName, NULL);1529 PS_ASSERT_PTR_NON_NULL(fileName, NULL); 1530 1530 1531 1531 // Allocate metadata if necessary -
trunk/psLib/src/dataManip/psBinaryOp.c
r3182 r4029 30 30 * @author Robert DeSonia, MHPCC 31 31 * 32 * @version $Revision: 1. 1$ $Name: not supported by cvs2svn $33 * @date $Date: 2005-0 2-10 02:36:41$32 * @version $Revision: 1.2 $ $Name: not supported by cvs2svn $ 33 * @date $Date: 2005-05-25 20:26:55 $ 34 34 * 35 35 * Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii … … 439 439 } 440 440 441 PS_ PTR_CHECK_NULL_GENERAL(input1, psBinaryOp_EXIT);442 PS_ PTR_CHECK_NULL_GENERAL(input2, psBinaryOp_EXIT);443 PS_ PTR_CHECK_NULL_GENERAL(op, psBinaryOp_EXIT);444 445 PS_ PTR_CHECK_TYPE_EQUAL_GENERAL(input1,input2, psBinaryOp_EXIT);446 447 PS_ PTR_CHECK_DIMEN_GENERAL_NOT(input1, PS_DIMEN_OTHER, psBinaryOp_EXIT);448 PS_ PTR_CHECK_DIMEN_GENERAL_NOT(input2, PS_DIMEN_OTHER, psBinaryOp_EXIT);441 PS_ASSERT_GENERAL_PTR_NON_NULL(input1, psBinaryOp_EXIT); 442 PS_ASSERT_GENERAL_PTR_NON_NULL(input2, psBinaryOp_EXIT); 443 PS_ASSERT_GENERAL_PTR_NON_NULL(op, psBinaryOp_EXIT); 444 445 PS_ASSERT_PTRS_TYPE_EQUAL_GENERAL(input1,input2, psBinaryOp_EXIT); 446 447 PS_ASSERT_PTR_DIMEN_GENERAL_NOT(input1, PS_DIMEN_OTHER, psBinaryOp_EXIT); 448 PS_ASSERT_PTR_DIMEN_GENERAL_NOT(input2, PS_DIMEN_OTHER, psBinaryOp_EXIT); 449 449 450 450 psType* psType1 = (psType*)in1; -
trunk/psLib/src/dataManip/psConstants.h
r4028 r4029 6 6 * @author GLG, MHPCC 7 7 * 8 * @version $Revision: 1.6 8$ $Name: not supported by cvs2svn $9 * @date $Date: 2005-05-25 19:25:29$8 * @version $Revision: 1.69 $ $Name: not supported by cvs2svn $ 9 * @date $Date: 2005-05-25 20:26:55 $ 10 10 * 11 11 * Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii … … 59 59 *****************************************************************************/ 60 60 61 #define PS_ INT_CHECK_EQUALS(NAME1, NAME2, RVAL) \61 #define PS_ASSERT_INT_UNEQUAL(NAME1, NAME2, RVAL) \ 62 62 if (NAME1 == NAME2) { \ 63 63 psError(PS_ERR_BAD_PARAMETER_VALUE, true, \ … … 67 67 } 68 68 69 #define PS_ INT_CHECK_NON_EQUALS(NAME1, NAME2, RVAL) \69 #define PS_ASSERT_INT_EQUAL(NAME1, NAME2, RVAL) \ 70 70 if (NAME1 != NAME2) { \ 71 71 psError(PS_ERR_BAD_PARAMETER_VALUE, true, \ … … 76 76 77 77 // Return an error if the arg is less than zero. 78 #define PS_ INT_CHECK_NEGATIVE(NAME, RVAL) \78 #define PS_ASSERT_INT_NONNEGATIVE(NAME, RVAL) \ 79 79 if (NAME < 0) { \ 80 80 psError(PS_ERR_BAD_PARAMETER_VALUE, true, \ … … 86 86 // XXX: This naming scheme is opposite most other macros. This should be 87 87 // corrected as soon as a fresh checkin/out can be performed. 88 #define PS_ INT_CHECK_NON_NEGATIVE(NAME, RVAL) \88 #define PS_ASSERT_INT_NONNEGATIVE(NAME, RVAL) \ 89 89 if (NAME < 0) { \ 90 90 psError(PS_ERR_BAD_PARAMETER_VALUE, true, \ … … 96 96 // XXX: This naming scheme is opposite most other macros. This should be 97 97 // corrected as soon as a fresh checkin/out can be performed. 98 #define PS_ INT_CHECK_POSITIVE(NAME, RVAL) \98 #define PS_ASSERT_INT_POSITIVE(NAME, RVAL) \ 99 99 if (NAME < 1) { \ 100 100 psError(PS_ERR_BAD_PARAMETER_VALUE, true, \ … … 104 104 105 105 // Return an error if the arg is not equal to zero. 106 #define PS_ INT_CHECK_NON_ZERO(NAME, RVAL) \106 #define PS_ASSERT_INT_ZERO(NAME, RVAL) \ 107 107 if (NAME != 0) { \ 108 108 psError(PS_ERR_BAD_PARAMETER_VALUE, true, \ … … 112 112 113 113 // Return an error if the arg is equal to zero. 114 #define PS_ INT_CHECK_ZERO(NAME, RVAL) \114 #define PS_ASSERT_INT_NONZERO(NAME, RVAL) \ 115 115 if (NAME == 0) { \ 116 116 psError(PS_ERR_BAD_PARAMETER_VALUE, true, \ … … 120 120 121 121 // Return an error if the arg is lies outside the supplied range. 122 #define PS_ INT_CHECK_RANGE(NAME, LOWER, UPPER, RVAL) \122 #define PS_ASSERT_INT_WITHIN_RANGE(NAME, LOWER, UPPER, RVAL) \ 123 123 if ((int)NAME < LOWER || (int)NAME > UPPER) { \ 124 124 psError(PS_ERR_BAD_PARAMETER_VALUE, true, \ … … 148 148 // Generate an error if the two floats are equal. 149 149 // XXX: Inconsistent naming. 150 #define PS_ FLOAT_CHECK_NON_EQUAL(NAME1, NAME2, RVAL) \150 #define PS_ASSERT_FLOAT_NON_EQUAL(NAME1, NAME2, RVAL) \ 151 151 if (fabs(NAME2 - NAME1) < FLT_EPSILON) { \ 152 152 psError(PS_ERR_BAD_PARAMETER_VALUE, true, \ … … 157 157 158 158 // Return an error if the arg is lies outside the supplied range. 159 #define PS_ FLOAT_CHECK_RANGE(NAME, LOWER, UPPER, RVAL) \159 #define PS_ASSERT_FLOAT_WITHIN_RANGE(NAME, LOWER, UPPER, RVAL) \ 160 160 if ((NAME) < (LOWER) || (NAME) > (UPPER)) { \ 161 161 psError(PS_ERR_BAD_PARAMETER_VALUE, true, \ … … 169 169 the wrong type. 170 170 *****************************************************************************/ 171 #define PS_ PTR_CHECK_NULL(NAME, RVAL) PS_PTR_CHECK_NULL_GENERAL(NAME, return RVAL)172 #define PS_ PTR_CHECK_NULL_GENERAL(NAME, CLEANUP) \171 #define PS_ASSERT_PTR_NON_NULL(NAME, RVAL) PS_ASSERT_GENERAL_PTR_NON_NULL(NAME, return RVAL) 172 #define PS_ASSERT_GENERAL_PTR_NON_NULL(NAME, CLEANUP) \ 173 173 if (NAME == NULL) { \ 174 174 psError(PS_ERR_BAD_PARAMETER_NULL, true, \ … … 178 178 } 179 179 180 #define PS_ PTR_CHECK_TYPE(NAME, TYPE, RVAL) \180 #define PS_ASSERT_PTR_TYPE(NAME, TYPE, RVAL) \ 181 181 if (NAME->type.type != TYPE) { \ 182 182 psError(PS_ERR_BAD_PARAMETER_TYPE, true, \ … … 186 186 } 187 187 188 #define PS_ PTR_CHECK_DIMEN(NAME, DIMEN, RVAL) PS_PTR_CHECK_DIMEN_GENERAL(NAME, DIMEN, return RVAL)189 #define PS_ PTR_CHECK_DIMEN_GENERAL(NAME, DIMEN, CLEANUP) \188 #define PS_ASSERT_PTR_DIMEN(NAME, DIMEN, RVAL) PS_ASSERT_GENERAL_PTR_DIMEN(NAME, DIMEN, return RVAL) 189 #define PS_ASSERT_GENERAL_PTR_DIMEN(NAME, DIMEN, CLEANUP) \ 190 190 if (NAME->type.dimen != DIMEN) { \ 191 191 psError(PS_ERR_BAD_PARAMETER_TYPE, true, \ … … 195 195 } 196 196 197 #define PS_ PTR_CHECK_DIMEN_GENERAL_NOT(NAME, DIMEN, CLEANUP) \197 #define PS_ASSERT_PTR_DIMEN_GENERAL_NOT(NAME, DIMEN, CLEANUP) \ 198 198 if (NAME->type.dimen == DIMEN) { \ 199 199 psError(PS_ERR_BAD_PARAMETER_TYPE, true, \ … … 204 204 205 205 206 #define PS_ PTR_CHECK_SIZE_EQUAL(PTR1, PTR2, RVAL) \206 #define PS_ASSERT_PTRS_SIZE_EQUAL(PTR1, PTR2, RVAL) \ 207 207 if (PTR1->n != PTR2->n) { \ 208 208 psError(PS_ERR_BAD_PARAMETER_SIZE, true, \ … … 212 212 } 213 213 214 #define PS_PTR_CHECK_TYPE_EQUAL(PTR1, PTR2, RVAL) PS_PTR_CHECK_TYPE_EQUAL_GENERAL(PTR1, PTR2, return RVAL) 215 216 #define PS_PTR_CHECK_TYPE_EQUAL_GENERAL(PTR1, PTR2, CLEANUP) \ 214 #define PS_ASSERT_PTR_TYPE_EQUAL(PTR1, PTR2, RVAL) PS_ASSERT_PTRS_TYPE_EQUAL_GENERAL(PTR1, PTR2, return RVAL) 215 #define PS_ASSERT_PTRS_TYPE_EQUAL_GENERAL(PTR1, PTR2, CLEANUP) \ 217 216 if (PTR1->type.type != PTR2->type.type) { \ 218 217 psError(PS_ERR_BAD_PARAMETER_TYPE, true, \ … … 226 225 PS_VECTOR macros: 227 226 *****************************************************************************/ 228 #define PS_ VECTOR_CHECK_NULL(NAME, RVAL) PS_VECTOR_CHECK_NULL_GENERAL(NAME, return RVAL)229 #define PS_ VECTOR_CHECK_NULL_GENERAL(NAME, CLEANUP) \227 #define PS_ASSERT_VECTOR_NON_NULL(NAME, RVAL) PS_ASSERT_GENERAL_VECTOR_NON_NULL(NAME, return RVAL) 228 #define PS_ASSERT_GENERAL_VECTOR_NON_NULL(NAME, CLEANUP) \ 230 229 if (NAME == NULL || NAME->data.U8 == NULL) { \ 231 230 psError(PS_ERR_BAD_PARAMETER_NULL, true, \ … … 235 234 } \ 236 235 237 #define PS_ VECTOR_CHECK_EMPTY(NAME, RVAL) PS_VECTOR_CHECK_EMPTY_GENERAL(NAME, return RVAL)238 #define PS_ VECTOR_CHECK_EMPTY_GENERAL(NAME, CLEANUP) \236 #define PS_ASSERT_VECTOR_NON_EMPTY(NAME, RVAL) PS_ASSERT_GENERAL_VECTOR_NON_EMPTY(NAME, return RVAL) 237 #define PS_ASSERT_GENERAL_VECTOR_NON_EMPTY(NAME, CLEANUP) \ 239 238 if (NAME->n < 1) { \ 240 239 psError(PS_ERR_BAD_PARAMETER_SIZE, true, \ … … 244 243 } \ 245 244 246 #define PS_ VECTOR_CHECK_TYPE_F32_OR_F64(NAME, RVAL) \245 #define PS_ASSERT_VECTOR_TYPE_F32_OR_F64(NAME, RVAL) \ 247 246 if ((NAME->type.type != PS_TYPE_F32) && (NAME->type.type != PS_TYPE_F64)) { \ 248 247 psError(PS_ERR_BAD_PARAMETER_TYPE, true, \ … … 252 251 } \ 253 252 254 #define PS_ VECTOR_CHECK_TYPE_S16_S32_F32(NAME, RVAL) \253 #define PS_ASSERT_VECTOR_TYPE_S16_S32_F32(NAME, RVAL) \ 255 254 if ((NAME->type.type != PS_TYPE_S16) && (NAME->type.type != PS_TYPE_S32) && (NAME->type.type != PS_TYPE_F32)) { \ 256 255 psError(PS_ERR_BAD_PARAMETER_TYPE, true, \ … … 260 259 } \ 261 260 262 #define PS_ VECTOR_CHECK_TYPE(NAME, TYPE, RVAL) \261 #define PS_ASSERT_VECTOR_TYPE(NAME, TYPE, RVAL) \ 263 262 if (NAME->type.type != TYPE) { \ 264 263 psError(PS_ERR_BAD_PARAMETER_TYPE, true, \ … … 268 267 } 269 268 270 #define PS_ VECTOR_CHECK_SIZE_EQUAL(VEC1, VEC2, RVAL) \269 #define PS_ASSERT_VECTORS_SIZE_EQUAL(VEC1, VEC2, RVAL) \ 271 270 if (VEC1->n != VEC2->n) { \ 272 271 psError(PS_ERR_BAD_PARAMETER_SIZE, true, \ … … 276 275 } 277 276 278 #define PS_ VECTOR_CHECK_TYPE_EQUAL(VEC1, VEC2, RVAL) \277 #define PS_ASSERT_VECTOR_TYPE_EQUAL(VEC1, VEC2, RVAL) \ 279 278 if (VEC1->type.type != VEC2->type.type) { \ 280 279 psError(PS_ERR_BAD_PARAMETER_SIZE, true, \ … … 428 427 PS_POLY macros: 429 428 *****************************************************************************/ 430 #define PS_ POLY_CHECK_NULL(NAME, RVAL) \429 #define PS_ASSERT_POLY_NON_NULL(NAME, RVAL) \ 431 430 if (NAME == NULL || NAME->coeff == NULL) { \ 432 431 psError(PS_ERR_BAD_PARAMETER_NULL, true, \ … … 436 435 } \ 437 436 438 #define PS_ POLY_CHECK_TYPE(NAME, TYPE, RVAL) \437 #define PS_ASSERT_POLY_TYPE(NAME, TYPE, RVAL) \ 439 438 if (NAME->type != TYPE) { \ 440 439 psError(PS_ERR_BAD_PARAMETER_TYPE, true, \ … … 508 507 PS_IMAGE macros: 509 508 *****************************************************************************/ 510 #define PS_ IMAGE_CHECK_NULL(NAME, RVAL) PS_IMAGE_CHECK_NULL_GENERAL(NAME, return RVAL)511 #define PS_ IMAGE_CHECK_NULL_GENERAL(NAME, CLEANUP) \509 #define PS_ASSERT_IMAGE_NON_NULL(NAME, RVAL) PS_ASSERT_GENERAL_IMAGE_NON_NULL(NAME, return RVAL) 510 #define PS_ASSERT_GENERAL_IMAGE_NON_NULL(NAME, CLEANUP) \ 512 511 if (NAME == NULL || NAME->data.V == NULL) { \ 513 512 psError(PS_ERR_BAD_PARAMETER_NULL, true, \ … … 517 516 } 518 517 519 #define PS_ IMAGE_CHECK_EMPTY(NAME, RVAL) PS_IMAGE_CHECK_EMPTY_GENERAL(NAME, return RVAL)520 #define PS_ IMAGE_CHECK_EMPTY_GENERAL(NAME, CLEANUP) \518 #define PS_ASSERT_IMAGE_NON_EMPTY(NAME, RVAL) PS_ASSERT_GENERAL_IMAGE_NON_EMPTY(NAME, return RVAL) 519 #define PS_ASSERT_GENERAL_IMAGE_NON_EMPTY(NAME, CLEANUP) \ 521 520 if (NAME->numCols < 1 || NAME->numRows < 1) { \ 522 521 psError(PS_ERR_BAD_PARAMETER_SIZE, true, \ … … 526 525 } 527 526 528 #define PS_ IMAGE_CHECK_TYPE(NAME, TYPE, RVAL) \527 #define PS_ASSERT_IMAGE_TYPE(NAME, TYPE, RVAL) \ 529 528 if (NAME->type.type != TYPE) { \ 530 529 psError(PS_ERR_BAD_PARAMETER_TYPE, true, \ … … 534 533 } 535 534 536 #define PS_ IMAGE_CHECK_SIZE_EQUAL(NAME1, NAME2, RVAL) \535 #define PS_ASSERT_IMAGES_SIZE_EQUAL(NAME1, NAME2, RVAL) \ 537 536 if ((NAME1->numCols != NAME2->numCols) || \ 538 537 (NAME1->numRows != NAME2->numRows)) { \ … … 543 542 } 544 543 545 #define PS_ IMAGE_CHECK_SIZE(NAME1, NUM_COLS, NUM_ROWS, RVAL) \544 #define PS_ASSERT_IMAGE_SIZE(NAME1, NUM_COLS, NUM_ROWS, RVAL) \ 546 545 if ((NAME1->numCols != NUM_COLS) || \ 547 546 (NAME1->numRows != NUM_ROWS)) { \ … … 634 633 PS_READOUT macros: 635 634 *****************************************************************************/ 636 #define PS_ READOUT_CHECK_NULL(NAME, RVAL) \635 #define PS_ASSERT_READOUT_NON_NULL(NAME, RVAL) \ 637 636 if (NAME == NULL || NAME->image == NULL) { \ 638 637 psError(PS_ERR_BAD_PARAMETER_NULL, true, \ … … 642 641 } 643 642 644 #define PS_ READOUT_CHECK_EMPTY(NAME, RVAL) \643 #define PS_ASSERT_READOUT_NON_EMPTY(NAME, RVAL) \ 645 644 if (NAME->image->numCols < 1 || NAME->image->numRows < 1) { \ 646 645 psError(PS_ERR_BAD_PARAMETER_SIZE, true, \ … … 649 648 } 650 649 651 #define PS_ READOUT_CHECK_TYPE(NAME, TYPE, RVAL) \650 #define PS_ASSERT_READOUT_TYPE(NAME, TYPE, RVAL) \ 652 651 if (NAME->image->type.type != TYPE) { \ 653 652 psError(PS_ERR_BAD_PARAMETER_TYPE, true, \ -
trunk/psLib/src/dataManip/psFunctions.c
r3990 r4029 7 7 * polynomials. It also contains a Gaussian functions. 8 8 * 9 * @version $Revision: 1.10 3$ $Name: not supported by cvs2svn $10 * @date $Date: 2005-05- 19 23:57:37$9 * @version $Revision: 1.104 $ $Name: not supported by cvs2svn $ 10 * @date $Date: 2005-05-25 20:26:55 $ 11 11 * 12 12 * Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii … … 246 246 static psPolynomial1D **createChebyshevPolys(psS32 maxChebyPoly) 247 247 { 248 PS_ INT_CHECK_NON_NEGATIVE(maxChebyPoly, NULL);248 PS_ASSERT_INT_NONNEGATIVE(maxChebyPoly, NULL); 249 249 250 250 psPolynomial1D **chebPolys = NULL; … … 314 314 static psF32 chebPolynomial1DEval(psF32 x, const psPolynomial1D* myPoly) 315 315 { 316 PS_ FLOAT_CHECK_RANGE(x, -1.0, 1.0, 0.0);316 PS_ASSERT_FLOAT_WITHIN_RANGE(x, -1.0, 1.0, 0.0); 317 317 // XXX: Create a macro for this in psConstants.h 318 318 if (myPoly->n < 1) { … … 398 398 const psPolynomial2D* myPoly) 399 399 { 400 PS_ POLY_CHECK_NULL(myPoly, NAN);400 PS_ASSERT_POLY_NON_NULL(myPoly, NAN); 401 401 402 402 psS32 loop_x = 0; … … 422 422 static psF32 chebPolynomial2DEval(psF32 x, psF32 y, const psPolynomial2D* myPoly) 423 423 { 424 PS_ FLOAT_CHECK_RANGE(x, -1.0, 1.0, 0.0);425 PS_ FLOAT_CHECK_RANGE(y, -1.0, 1.0, 0.0);426 PS_ POLY_CHECK_NULL(myPoly, NAN);424 PS_ASSERT_FLOAT_WITHIN_RANGE(x, -1.0, 1.0, 0.0); 425 PS_ASSERT_FLOAT_WITHIN_RANGE(y, -1.0, 1.0, 0.0); 426 PS_ASSERT_POLY_NON_NULL(myPoly, NAN); 427 427 428 428 psS32 loop_x = 0; … … 487 487 static psF32 chebPolynomial3DEval(psF32 x, psF32 y, psF32 z, const psPolynomial3D* myPoly) 488 488 { 489 PS_ FLOAT_CHECK_RANGE(x, -1.0, 1.0, 0.0);490 PS_ FLOAT_CHECK_RANGE(y, -1.0, 1.0, 0.0);491 PS_ FLOAT_CHECK_RANGE(z, -1.0, 1.0, 0.0);489 PS_ASSERT_FLOAT_WITHIN_RANGE(x, -1.0, 1.0, 0.0); 490 PS_ASSERT_FLOAT_WITHIN_RANGE(y, -1.0, 1.0, 0.0); 491 PS_ASSERT_FLOAT_WITHIN_RANGE(z, -1.0, 1.0, 0.0); 492 492 psS32 loop_x = 0; 493 493 psS32 loop_y = 0; … … 565 565 static psF32 chebPolynomial4DEval(psF32 w, psF32 x, psF32 y, psF32 z, const psPolynomial4D* myPoly) 566 566 { 567 PS_ FLOAT_CHECK_RANGE(w, -1.0, 1.0, 0.0);568 PS_ FLOAT_CHECK_RANGE(x, -1.0, 1.0, 0.0);569 PS_ FLOAT_CHECK_RANGE(y, -1.0, 1.0, 0.0);570 PS_ FLOAT_CHECK_RANGE(z, -1.0, 1.0, 0.0);567 PS_ASSERT_FLOAT_WITHIN_RANGE(w, -1.0, 1.0, 0.0); 568 PS_ASSERT_FLOAT_WITHIN_RANGE(x, -1.0, 1.0, 0.0); 569 PS_ASSERT_FLOAT_WITHIN_RANGE(y, -1.0, 1.0, 0.0); 570 PS_ASSERT_FLOAT_WITHIN_RANGE(z, -1.0, 1.0, 0.0); 571 571 psS32 loop_w = 0; 572 572 psS32 loop_x = 0; … … 638 638 static psF64 dChebPolynomial1DEval(psF64 x, const psDPolynomial1D* myPoly) 639 639 { 640 PS_ FLOAT_CHECK_RANGE(x, -1.0, 1.0, 0.0);640 PS_ASSERT_FLOAT_WITHIN_RANGE(x, -1.0, 1.0, 0.0); 641 641 psVector *d; 642 642 psS32 n; … … 697 697 static psF64 dChebPolynomial2DEval(psF64 x, psF64 y, const psDPolynomial2D* myPoly) 698 698 { 699 PS_ FLOAT_CHECK_RANGE(x, -1.0, 1.0, 0.0);700 PS_ FLOAT_CHECK_RANGE(y, -1.0, 1.0, 0.0);699 PS_ASSERT_FLOAT_WITHIN_RANGE(x, -1.0, 1.0, 0.0); 700 PS_ASSERT_FLOAT_WITHIN_RANGE(y, -1.0, 1.0, 0.0); 701 701 psS32 loop_x = 0; 702 702 psS32 loop_y = 0; … … 761 761 static psF64 dChebPolynomial3DEval(psF64 x, psF64 y, psF64 z, const psDPolynomial3D* myPoly) 762 762 { 763 PS_ FLOAT_CHECK_RANGE(x, -1.0, 1.0, 0.0);764 PS_ FLOAT_CHECK_RANGE(y, -1.0, 1.0, 0.0);765 PS_ FLOAT_CHECK_RANGE(z, -1.0, 1.0, 0.0);763 PS_ASSERT_FLOAT_WITHIN_RANGE(x, -1.0, 1.0, 0.0); 764 PS_ASSERT_FLOAT_WITHIN_RANGE(y, -1.0, 1.0, 0.0); 765 PS_ASSERT_FLOAT_WITHIN_RANGE(z, -1.0, 1.0, 0.0); 766 766 psS32 loop_x = 0; 767 767 psS32 loop_y = 0; … … 839 839 static psF64 dChebPolynomial4DEval(psF64 w, psF64 x, psF64 y, psF64 z, const psDPolynomial4D* myPoly) 840 840 { 841 PS_ FLOAT_CHECK_RANGE(w, -1.0, 1.0, 0.0);842 PS_ FLOAT_CHECK_RANGE(x, -1.0, 1.0, 0.0);843 PS_ FLOAT_CHECK_RANGE(y, -1.0, 1.0, 0.0);844 PS_ FLOAT_CHECK_RANGE(z, -1.0, 1.0, 0.0);841 PS_ASSERT_FLOAT_WITHIN_RANGE(w, -1.0, 1.0, 0.0); 842 PS_ASSERT_FLOAT_WITHIN_RANGE(x, -1.0, 1.0, 0.0); 843 PS_ASSERT_FLOAT_WITHIN_RANGE(y, -1.0, 1.0, 0.0); 844 PS_ASSERT_FLOAT_WITHIN_RANGE(z, -1.0, 1.0, 0.0); 845 845 psS32 loop_w = 0; 846 846 psS32 loop_x = 0; … … 973 973 psF32 x) 974 974 { 975 PS_ PTR_CHECK_NULL(domain, NAN)976 PS_ PTR_CHECK_NULL(range, NAN)975 PS_ASSERT_PTR_NON_NULL(domain, NAN) 976 PS_ASSERT_PTR_NON_NULL(range, NAN) 977 977 // XXX: Check valid values for n, order, and x? 978 978 … … 1044 1044 psVector* p_psGaussianDev(psF32 mean, psF32 sigma, psS32 Npts) 1045 1045 { 1046 PS_ INT_CHECK_NON_NEGATIVE(Npts, NULL);1046 PS_ASSERT_INT_NONNEGATIVE(Npts, NULL); 1047 1047 1048 1048 psVector* gauss = NULL; … … 1072 1072 psPolynomialType type) 1073 1073 { 1074 PS_ INT_CHECK_POSITIVE(n, NULL);1074 PS_ASSERT_INT_POSITIVE(n, NULL); 1075 1075 1076 1076 psS32 i = 0; … … 1097 1097 psPolynomialType type) 1098 1098 { 1099 PS_ INT_CHECK_POSITIVE(nX, NULL);1100 PS_ INT_CHECK_POSITIVE(nY, NULL);1099 PS_ASSERT_INT_POSITIVE(nX, NULL); 1100 PS_ASSERT_INT_POSITIVE(nY, NULL); 1101 1101 1102 1102 psS32 x = 0; … … 1133 1133 psPolynomialType type) 1134 1134 { 1135 PS_ INT_CHECK_POSITIVE(nX, NULL);1136 PS_ INT_CHECK_POSITIVE(nY, NULL);1137 PS_ INT_CHECK_POSITIVE(nZ, NULL);1135 PS_ASSERT_INT_POSITIVE(nX, NULL); 1136 PS_ASSERT_INT_POSITIVE(nY, NULL); 1137 PS_ASSERT_INT_POSITIVE(nZ, NULL); 1138 1138 1139 1139 psS32 x = 0; … … 1179 1179 psPolynomialType type) 1180 1180 { 1181 PS_ INT_CHECK_POSITIVE(nW, NULL);1182 PS_ INT_CHECK_POSITIVE(nX, NULL);1183 PS_ INT_CHECK_POSITIVE(nY, NULL);1184 PS_ INT_CHECK_POSITIVE(nZ, NULL);1181 PS_ASSERT_INT_POSITIVE(nW, NULL); 1182 PS_ASSERT_INT_POSITIVE(nX, NULL); 1183 PS_ASSERT_INT_POSITIVE(nY, NULL); 1184 PS_ASSERT_INT_POSITIVE(nZ, NULL); 1185 1185 1186 1186 psS32 w = 0; … … 1234 1234 psF32 psPolynomial1DEval(const psPolynomial1D* myPoly, psF32 x) 1235 1235 { 1236 PS_ POLY_CHECK_NULL(myPoly, NAN);1236 PS_ASSERT_POLY_NON_NULL(myPoly, NAN); 1237 1237 1238 1238 if (myPoly->type == PS_POLYNOMIAL_ORD) { … … 1251 1251 const psVector *x) 1252 1252 { 1253 PS_ POLY_CHECK_NULL(myPoly, NULL);1254 PS_ VECTOR_CHECK_NULL(x, NULL);1255 PS_ VECTOR_CHECK_TYPE(x, PS_TYPE_F32, NULL);1253 PS_ASSERT_POLY_NON_NULL(myPoly, NULL); 1254 PS_ASSERT_VECTOR_NON_NULL(x, NULL); 1255 PS_ASSERT_VECTOR_TYPE(x, PS_TYPE_F32, NULL); 1256 1256 1257 1257 psVector *tmp; … … 1267 1267 psF32 psPolynomial2DEval(const psPolynomial2D* myPoly, psF32 x, psF32 y) 1268 1268 { 1269 PS_ POLY_CHECK_NULL(myPoly, NAN);1269 PS_ASSERT_POLY_NON_NULL(myPoly, NAN); 1270 1270 1271 1271 if (myPoly->type == PS_POLYNOMIAL_ORD) { … … 1286 1286 1287 1287 { 1288 PS_ POLY_CHECK_NULL(myPoly, NULL);1289 PS_ VECTOR_CHECK_NULL(x, NULL);1290 PS_ VECTOR_CHECK_TYPE(x, PS_TYPE_F32, NULL);1291 PS_ VECTOR_CHECK_NULL(y, NULL);1292 PS_ VECTOR_CHECK_TYPE(y, PS_TYPE_F32, NULL);1288 PS_ASSERT_POLY_NON_NULL(myPoly, NULL); 1289 PS_ASSERT_VECTOR_NON_NULL(x, NULL); 1290 PS_ASSERT_VECTOR_TYPE(x, PS_TYPE_F32, NULL); 1291 PS_ASSERT_VECTOR_NON_NULL(y, NULL); 1292 PS_ASSERT_VECTOR_TYPE(y, PS_TYPE_F32, NULL); 1293 1293 1294 1294 psVector *tmp; … … 1314 1314 psF32 psPolynomial3DEval(const psPolynomial3D* myPoly, psF32 x, psF32 y, psF32 z) 1315 1315 { 1316 PS_ POLY_CHECK_NULL(myPoly, NAN);1316 PS_ASSERT_POLY_NON_NULL(myPoly, NAN); 1317 1317 1318 1318 if (myPoly->type == PS_POLYNOMIAL_ORD) { … … 1334 1334 1335 1335 { 1336 PS_ POLY_CHECK_NULL(myPoly, NULL);1337 PS_ VECTOR_CHECK_NULL(x, NULL);1338 PS_ VECTOR_CHECK_TYPE(x, PS_TYPE_F32, NULL);1339 PS_ VECTOR_CHECK_NULL(y, NULL);1340 PS_ VECTOR_CHECK_TYPE(y, PS_TYPE_F32, NULL);1341 PS_ VECTOR_CHECK_NULL(z, NULL);1342 PS_ VECTOR_CHECK_TYPE(z, PS_TYPE_F32, NULL);1336 PS_ASSERT_POLY_NON_NULL(myPoly, NULL); 1337 PS_ASSERT_VECTOR_NON_NULL(x, NULL); 1338 PS_ASSERT_VECTOR_TYPE(x, PS_TYPE_F32, NULL); 1339 PS_ASSERT_VECTOR_NON_NULL(y, NULL); 1340 PS_ASSERT_VECTOR_TYPE(y, PS_TYPE_F32, NULL); 1341 PS_ASSERT_VECTOR_NON_NULL(z, NULL); 1342 PS_ASSERT_VECTOR_TYPE(z, PS_TYPE_F32, NULL); 1343 1343 1344 1344 psVector *tmp; … … 1370 1370 psF32 psPolynomial4DEval(const psPolynomial4D* myPoly, psF32 w, psF32 x, psF32 y, psF32 z) 1371 1371 { 1372 PS_ POLY_CHECK_NULL(myPoly, NAN);1372 PS_ASSERT_POLY_NON_NULL(myPoly, NAN); 1373 1373 1374 1374 if (myPoly->type == PS_POLYNOMIAL_ORD) { … … 1390 1390 const psVector *z) 1391 1391 { 1392 PS_ POLY_CHECK_NULL(myPoly, NULL);1393 PS_ VECTOR_CHECK_NULL(w, NULL);1394 PS_ VECTOR_CHECK_TYPE(w, PS_TYPE_F32, NULL);1395 PS_ VECTOR_CHECK_NULL(x, NULL);1396 PS_ VECTOR_CHECK_TYPE(x, PS_TYPE_F32, NULL);1397 PS_ VECTOR_CHECK_NULL(y, NULL);1398 PS_ VECTOR_CHECK_TYPE(y, PS_TYPE_F32, NULL);1399 PS_ VECTOR_CHECK_NULL(z, NULL);1400 PS_ VECTOR_CHECK_TYPE(z, PS_TYPE_F32, NULL);1392 PS_ASSERT_POLY_NON_NULL(myPoly, NULL); 1393 PS_ASSERT_VECTOR_NON_NULL(w, NULL); 1394 PS_ASSERT_VECTOR_TYPE(w, PS_TYPE_F32, NULL); 1395 PS_ASSERT_VECTOR_NON_NULL(x, NULL); 1396 PS_ASSERT_VECTOR_TYPE(x, PS_TYPE_F32, NULL); 1397 PS_ASSERT_VECTOR_NON_NULL(y, NULL); 1398 PS_ASSERT_VECTOR_TYPE(y, PS_TYPE_F32, NULL); 1399 PS_ASSERT_VECTOR_NON_NULL(z, NULL); 1400 PS_ASSERT_VECTOR_TYPE(z, PS_TYPE_F32, NULL); 1401 1401 1402 1402 psVector *tmp; … … 1434 1434 psPolynomialType type) 1435 1435 { 1436 PS_ INT_CHECK_POSITIVE(n, NULL);1436 PS_ASSERT_INT_POSITIVE(n, NULL); 1437 1437 1438 1438 psS32 i = 0; … … 1459 1459 psPolynomialType type) 1460 1460 { 1461 PS_ INT_CHECK_POSITIVE(nX, NULL);1462 PS_ INT_CHECK_POSITIVE(nY, NULL);1461 PS_ASSERT_INT_POSITIVE(nX, NULL); 1462 PS_ASSERT_INT_POSITIVE(nY, NULL); 1463 1463 1464 1464 psS32 x = 0; … … 1495 1495 psPolynomialType type) 1496 1496 { 1497 PS_ INT_CHECK_POSITIVE(nX, NULL);1498 PS_ INT_CHECK_POSITIVE(nY, NULL);1499 PS_ INT_CHECK_POSITIVE(nZ, NULL);1497 PS_ASSERT_INT_POSITIVE(nX, NULL); 1498 PS_ASSERT_INT_POSITIVE(nY, NULL); 1499 PS_ASSERT_INT_POSITIVE(nZ, NULL); 1500 1500 1501 1501 psS32 x = 0; … … 1541 1541 psPolynomialType type) 1542 1542 { 1543 PS_ INT_CHECK_POSITIVE(nW, NULL);1544 PS_ INT_CHECK_POSITIVE(nX, NULL);1545 PS_ INT_CHECK_POSITIVE(nY, NULL);1546 PS_ INT_CHECK_POSITIVE(nZ, NULL);1543 PS_ASSERT_INT_POSITIVE(nW, NULL); 1544 PS_ASSERT_INT_POSITIVE(nX, NULL); 1545 PS_ASSERT_INT_POSITIVE(nY, NULL); 1546 PS_ASSERT_INT_POSITIVE(nZ, NULL); 1547 1547 1548 1548 psS32 w = 0; … … 1597 1597 psF64 psDPolynomial1DEval(const psDPolynomial1D* myPoly, psF64 x) 1598 1598 { 1599 PS_ POLY_CHECK_NULL(myPoly, NAN);1599 PS_ASSERT_POLY_NON_NULL(myPoly, NAN); 1600 1600 1601 1601 if (myPoly->type == PS_POLYNOMIAL_ORD) { … … 1615 1615 1616 1616 { 1617 PS_ POLY_CHECK_NULL(myPoly, NULL);1618 PS_ VECTOR_CHECK_NULL(x, NULL);1619 PS_ VECTOR_CHECK_TYPE(x, PS_TYPE_F64, NULL);1617 PS_ASSERT_POLY_NON_NULL(myPoly, NULL); 1618 PS_ASSERT_VECTOR_NON_NULL(x, NULL); 1619 PS_ASSERT_VECTOR_TYPE(x, PS_TYPE_F64, NULL); 1620 1620 1621 1621 psVector *tmp; … … 1635 1635 psF64 y) 1636 1636 { 1637 PS_ POLY_CHECK_NULL(myPoly, NAN);1637 PS_ASSERT_POLY_NON_NULL(myPoly, NAN); 1638 1638 1639 1639 if (myPoly->type == PS_POLYNOMIAL_ORD) { … … 1653 1653 const psVector *y) 1654 1654 { 1655 PS_ POLY_CHECK_NULL(myPoly, NULL);1656 PS_ VECTOR_CHECK_NULL(x, NULL);1657 PS_ VECTOR_CHECK_TYPE(x, PS_TYPE_F64, NULL);1658 PS_ VECTOR_CHECK_NULL(y, NULL);1659 PS_ VECTOR_CHECK_TYPE(y, PS_TYPE_F64, NULL);1655 PS_ASSERT_POLY_NON_NULL(myPoly, NULL); 1656 PS_ASSERT_VECTOR_NON_NULL(x, NULL); 1657 PS_ASSERT_VECTOR_TYPE(x, PS_TYPE_F64, NULL); 1658 PS_ASSERT_VECTOR_NON_NULL(y, NULL); 1659 PS_ASSERT_VECTOR_TYPE(y, PS_TYPE_F64, NULL); 1660 1660 1661 1661 psVector *tmp; … … 1685 1685 psF64 z) 1686 1686 { 1687 PS_ POLY_CHECK_NULL(myPoly, NAN);1687 PS_ASSERT_POLY_NON_NULL(myPoly, NAN); 1688 1688 1689 1689 if (myPoly->type == PS_POLYNOMIAL_ORD) { … … 1705 1705 1706 1706 { 1707 PS_ POLY_CHECK_NULL(myPoly, NULL);1708 PS_ VECTOR_CHECK_NULL(x, NULL);1709 PS_ VECTOR_CHECK_TYPE(x, PS_TYPE_F64, NULL);1710 PS_ VECTOR_CHECK_NULL(y, NULL);1711 PS_ VECTOR_CHECK_TYPE(y, PS_TYPE_F64, NULL);1712 PS_ VECTOR_CHECK_NULL(z, NULL);1713 PS_ VECTOR_CHECK_TYPE(z, PS_TYPE_F64, NULL);1707 PS_ASSERT_POLY_NON_NULL(myPoly, NULL); 1708 PS_ASSERT_VECTOR_NON_NULL(x, NULL); 1709 PS_ASSERT_VECTOR_TYPE(x, PS_TYPE_F64, NULL); 1710 PS_ASSERT_VECTOR_NON_NULL(y, NULL); 1711 PS_ASSERT_VECTOR_TYPE(y, PS_TYPE_F64, NULL); 1712 PS_ASSERT_VECTOR_NON_NULL(z, NULL); 1713 PS_ASSERT_VECTOR_TYPE(z, PS_TYPE_F64, NULL); 1714 1714 1715 1715 psVector *tmp; … … 1745 1745 psF64 z) 1746 1746 { 1747 PS_ POLY_CHECK_NULL(myPoly, NAN);1747 PS_ASSERT_POLY_NON_NULL(myPoly, NAN); 1748 1748 1749 1749 if (myPoly->type == PS_POLYNOMIAL_ORD) { … … 1765 1765 const psVector *z) 1766 1766 { 1767 PS_ POLY_CHECK_NULL(myPoly, NULL);1768 PS_ VECTOR_CHECK_NULL(w, NULL);1769 PS_ VECTOR_CHECK_TYPE(w, PS_TYPE_F64, NULL);1770 PS_ VECTOR_CHECK_NULL(x, NULL);1771 PS_ VECTOR_CHECK_TYPE(x, PS_TYPE_F64, NULL);1772 PS_ VECTOR_CHECK_NULL(y, NULL);1773 PS_ VECTOR_CHECK_TYPE(y, PS_TYPE_F64, NULL);1774 PS_ VECTOR_CHECK_NULL(z, NULL);1775 PS_ VECTOR_CHECK_TYPE(z, PS_TYPE_F64, NULL);1767 PS_ASSERT_POLY_NON_NULL(myPoly, NULL); 1768 PS_ASSERT_VECTOR_NON_NULL(w, NULL); 1769 PS_ASSERT_VECTOR_TYPE(w, PS_TYPE_F64, NULL); 1770 PS_ASSERT_VECTOR_NON_NULL(x, NULL); 1771 PS_ASSERT_VECTOR_TYPE(x, PS_TYPE_F64, NULL); 1772 PS_ASSERT_VECTOR_NON_NULL(y, NULL); 1773 PS_ASSERT_VECTOR_TYPE(y, PS_TYPE_F64, NULL); 1774 PS_ASSERT_VECTOR_NON_NULL(z, NULL); 1775 PS_ASSERT_VECTOR_TYPE(z, PS_TYPE_F64, NULL); 1776 1776 1777 1777 psVector *tmp; … … 1828 1828 psF32 max) 1829 1829 { 1830 PS_ INT_CHECK_NON_NEGATIVE(numSplines, NULL);1831 PS_ INT_CHECK_NON_NEGATIVE(order, NULL);1832 PS_ FLOAT_CHECK_NON_EQUAL(max, min, NULL);1830 PS_ASSERT_INT_NONNEGATIVE(numSplines, NULL); 1831 PS_ASSERT_INT_NONNEGATIVE(order, NULL); 1832 PS_ASSERT_FLOAT_NON_EQUAL(max, min, NULL); 1833 1833 1834 1834 psSpline1D *tmp = NULL; … … 1870 1870 psS32 order) 1871 1871 { 1872 PS_ VECTOR_CHECK_NULL(bounds, NULL);1873 PS_ VECTOR_CHECK_EMPTY(bounds, NULL);1874 PS_ INT_CHECK_NON_NEGATIVE(order, NULL);1872 PS_ASSERT_VECTOR_NON_NULL(bounds, NULL); 1873 PS_ASSERT_VECTOR_NON_EMPTY(bounds, NULL); 1874 PS_ASSERT_INT_NONNEGATIVE(order, NULL); 1875 1875 1876 1876 psSpline1D *tmp = NULL; … … 1983 1983 psScalar *x) 1984 1984 { 1985 PS_ VECTOR_CHECK_NULL(bins, -4);1986 PS_ VECTOR_CHECK_EMPTY(bins, -4);1987 PS_ PTR_CHECK_NULL(x, -6);1988 PS_ PTR_CHECK_TYPE_EQUAL(x, bins, -3);1985 PS_ASSERT_VECTOR_NON_NULL(bins, -4); 1986 PS_ASSERT_VECTOR_NON_EMPTY(bins, -4); 1987 PS_ASSERT_PTR_NON_NULL(x, -6); 1988 PS_ASSERT_PTR_TYPE_EQUAL(x, bins, -3); 1989 1989 char* strType; 1990 1990 … … 2049 2049 psScalar *x) 2050 2050 { 2051 PS_ VECTOR_CHECK_NULL(domain, NULL);2052 PS_ VECTOR_CHECK_NULL(range, NULL);2053 PS_ PTR_CHECK_NULL(x, NULL);2054 PS_ INT_CHECK_NON_NEGATIVE(order, NULL);2055 PS_ VECTOR_CHECK_SIZE_EQUAL(domain, range, NULL);2056 PS_ PTR_CHECK_TYPE_EQUAL(domain, range, NULL);2057 PS_ PTR_CHECK_TYPE_EQUAL(domain, x, NULL);2051 PS_ASSERT_VECTOR_NON_NULL(domain, NULL); 2052 PS_ASSERT_VECTOR_NON_NULL(range, NULL); 2053 PS_ASSERT_PTR_NON_NULL(x, NULL); 2054 PS_ASSERT_INT_NONNEGATIVE(order, NULL); 2055 PS_ASSERT_VECTORS_SIZE_EQUAL(domain, range, NULL); 2056 PS_ASSERT_PTR_TYPE_EQUAL(domain, range, NULL); 2057 PS_ASSERT_PTR_TYPE_EQUAL(domain, x, NULL); 2058 2058 2059 2059 psVector *range32 = NULL; … … 2131 2131 ) 2132 2132 { 2133 PS_ PTR_CHECK_NULL(spline, NAN);2134 PS_ INT_CHECK_NON_NEGATIVE(spline->n, NAN);2135 PS_ VECTOR_CHECK_TYPE(spline->knots, PS_TYPE_F32, NAN);2133 PS_ASSERT_PTR_NON_NULL(spline, NAN); 2134 PS_ASSERT_INT_NONNEGATIVE(spline->n, NAN); 2135 PS_ASSERT_VECTOR_TYPE(spline->knots, PS_TYPE_F32, NAN); 2136 2136 2137 2137 psS32 binNum; … … 2167 2167 ) 2168 2168 { 2169 PS_ PTR_CHECK_NULL(spline, NULL);2170 PS_ VECTOR_CHECK_NULL(x, NULL);2171 PS_ VECTOR_CHECK_TYPE_F32_OR_F64(x, NULL);2172 PS_ VECTOR_CHECK_TYPE(spline->knots, PS_TYPE_F32, NULL);2169 PS_ASSERT_PTR_NON_NULL(spline, NULL); 2170 PS_ASSERT_VECTOR_NON_NULL(x, NULL); 2171 PS_ASSERT_VECTOR_TYPE_F32_OR_F64(x, NULL); 2172 PS_ASSERT_VECTOR_TYPE(spline->knots, PS_TYPE_F32, NULL); 2173 2173 2174 2174 psS32 i; -
trunk/psLib/src/dataManip/psMatrix.c
r3880 r4029 21 21 * @author Robert DeSonia, MHPCC 22 22 * 23 * @version $Revision: 1.2 8$ $Name: not supported by cvs2svn $24 * @date $Date: 2005-05- 11 02:29:39$23 * @version $Revision: 1.29 $ $Name: not supported by cvs2svn $ 24 * @date $Date: 2005-05-25 20:26:55 $ 25 25 * 26 26 * Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii … … 188 188 189 189 // Error checks 190 PS_ IMAGE_CHECK_NULL_GENERAL(inImage, psMatrixLUD_EXIT);190 PS_ASSERT_GENERAL_IMAGE_NON_NULL(inImage, psMatrixLUD_EXIT); 191 191 PS_CHECK_POINTERS(inImage, outImage, psMatrixLUD_EXIT); 192 192 PS_CHECK_DIMEN_AND_TYPE(inImage, PS_DIMEN_IMAGE, psMatrixLUD_EXIT); 193 PS_ PTR_CHECK_NULL_GENERAL(outPerm, psMatrixLUD_EXIT);193 PS_ASSERT_GENERAL_PTR_NON_NULL(outPerm, psMatrixLUD_EXIT); 194 194 195 195 outImage = psImageRecycle(outImage, inImage->numCols, inImage->numRows, inImage->type.type); … … 247 247 248 248 // Error checks 249 PS_ IMAGE_CHECK_NULL_GENERAL(inImage, LUSOLVE_CLEANUP);249 PS_ASSERT_GENERAL_IMAGE_NON_NULL(inImage, LUSOLVE_CLEANUP); 250 250 PS_CHECK_DIMEN_AND_TYPE(inImage, PS_DIMEN_IMAGE, LUSOLVE_CLEANUP); 251 PS_ IMAGE_CHECK_EMPTY_GENERAL(inImage, LUSOLVE_CLEANUP);252 PS_ VECTOR_CHECK_NULL_GENERAL(inVector, LUSOLVE_CLEANUP);251 PS_ASSERT_GENERAL_IMAGE_NON_EMPTY(inImage, LUSOLVE_CLEANUP); 252 PS_ASSERT_GENERAL_VECTOR_NON_NULL(inVector, LUSOLVE_CLEANUP); 253 253 PS_CHECK_DIMEN_AND_TYPE(inVector, PS_DIMEN_VECTOR, LUSOLVE_CLEANUP); 254 PS_ VECTOR_CHECK_NULL_GENERAL(inPerm, LUSOLVE_CLEANUP);254 PS_ASSERT_GENERAL_VECTOR_NON_NULL(inPerm, LUSOLVE_CLEANUP); 255 255 256 256 outVector = psVectorRecycle(outVector, inImage->numRows, inImage->type.type); … … 300 300 #define INVERT_CLEANUP { psFree(outImage); return NULL; } 301 301 // Error checks 302 PS_ PTR_CHECK_NULL_GENERAL(det, INVERT_CLEANUP);303 PS_ IMAGE_CHECK_NULL_GENERAL(inImage, INVERT_CLEANUP);302 PS_ASSERT_GENERAL_PTR_NON_NULL(det, INVERT_CLEANUP); 303 PS_ASSERT_GENERAL_IMAGE_NON_NULL(inImage, INVERT_CLEANUP); 304 304 PS_CHECK_POINTERS(inImage, outImage, INVERT_CLEANUP); 305 305 PS_CHECK_DIMEN_AND_TYPE(inImage, PS_DIMEN_IMAGE, INVERT_CLEANUP); 306 PS_ IMAGE_CHECK_EMPTY_GENERAL(inImage, INVERT_CLEANUP);306 PS_ASSERT_GENERAL_IMAGE_NON_EMPTY(inImage, INVERT_CLEANUP); 307 307 308 308 outImage = psImageRecycle(outImage, inImage->numCols, inImage->numRows, inImage->type.type); … … 348 348 #define DETERMINANT_EXIT { return NULL; } 349 349 // Error checks 350 PS_ IMAGE_CHECK_NULL_GENERAL(inImage, DETERMINANT_EXIT);350 PS_ASSERT_GENERAL_IMAGE_NON_NULL(inImage, DETERMINANT_EXIT); 351 351 PS_CHECK_DIMEN_AND_TYPE(inImage, PS_DIMEN_IMAGE, DETERMINANT_EXIT); 352 PS_ IMAGE_CHECK_EMPTY_GENERAL(inImage, DETERMINANT_EXIT);352 PS_ASSERT_GENERAL_IMAGE_NON_EMPTY(inImage, DETERMINANT_EXIT); 353 353 PS_CHECK_SQUARE(inImage, DETERMINANT_EXIT); 354 354 … … 383 383 384 384 // Error checks 385 PS_ IMAGE_CHECK_NULL_GENERAL(inImage1, MULTIPLY_CLEANUP);386 PS_ IMAGE_CHECK_NULL_GENERAL(inImage2, MULTIPLY_CLEANUP);387 PS_ IMAGE_CHECK_EMPTY_GENERAL(inImage1, MULTIPLY_CLEANUP);388 PS_ IMAGE_CHECK_EMPTY_GENERAL(inImage2, MULTIPLY_CLEANUP);385 PS_ASSERT_GENERAL_IMAGE_NON_NULL(inImage1, MULTIPLY_CLEANUP); 386 PS_ASSERT_GENERAL_IMAGE_NON_NULL(inImage2, MULTIPLY_CLEANUP); 387 PS_ASSERT_GENERAL_IMAGE_NON_EMPTY(inImage1, MULTIPLY_CLEANUP); 388 PS_ASSERT_GENERAL_IMAGE_NON_EMPTY(inImage2, MULTIPLY_CLEANUP); 389 389 PS_CHECK_DIMEN_AND_TYPE(inImage1, PS_DIMEN_IMAGE, MULTIPLY_CLEANUP); 390 390 PS_CHECK_DIMEN_AND_TYPE(inImage2, PS_DIMEN_IMAGE, MULTIPLY_CLEANUP); … … 435 435 #define TRANSPOSE_CLEANUP { psFree(outImage); return NULL; } 436 436 // Error checks 437 PS_ IMAGE_CHECK_NULL_GENERAL(inImage, TRANSPOSE_CLEANUP);437 PS_ASSERT_GENERAL_IMAGE_NON_NULL(inImage, TRANSPOSE_CLEANUP); 438 438 PS_CHECK_DIMEN_AND_TYPE(inImage, PS_DIMEN_IMAGE, TRANSPOSE_CLEANUP); 439 PS_ IMAGE_CHECK_EMPTY_GENERAL(inImage, TRANSPOSE_CLEANUP);439 PS_ASSERT_GENERAL_IMAGE_NON_EMPTY(inImage, TRANSPOSE_CLEANUP); 440 440 PS_CHECK_POINTERS(inImage, outImage, TRANSPOSE_CLEANUP); 441 441 … … 481 481 #define EIGENVECTORS_CLEANUP { psFree(outImage); return NULL; } 482 482 // Error checks 483 PS_ IMAGE_CHECK_NULL_GENERAL(inImage, EIGENVECTORS_CLEANUP);483 PS_ASSERT_GENERAL_IMAGE_NON_NULL(inImage, EIGENVECTORS_CLEANUP); 484 484 PS_CHECK_DIMEN_AND_TYPE(inImage, PS_DIMEN_IMAGE, EIGENVECTORS_CLEANUP); 485 PS_ IMAGE_CHECK_EMPTY_GENERAL(inImage, EIGENVECTORS_CLEANUP);485 PS_ASSERT_GENERAL_IMAGE_NON_EMPTY(inImage, EIGENVECTORS_CLEANUP); 486 486 PS_CHECK_POINTERS(inImage, outImage, EIGENVECTORS_CLEANUP); 487 487 … … 526 526 527 527 // Error checks 528 PS_ IMAGE_CHECK_NULL_GENERAL(inImage, psMatrixToVector_EXIT);528 PS_ASSERT_GENERAL_IMAGE_NON_NULL(inImage, psMatrixToVector_EXIT); 529 529 PS_CHECK_DIMEN_AND_TYPE(inImage, PS_DIMEN_IMAGE, psMatrixToVector_EXIT); 530 PS_ IMAGE_CHECK_EMPTY_GENERAL(inImage, psMatrixToVector_EXIT);530 PS_ASSERT_GENERAL_IMAGE_NON_EMPTY(inImage, psMatrixToVector_EXIT); 531 531 532 532 if (inImage->numRows == 1) { … … 589 589 #define VECTORTOMATRIX_CLEANUP {psFree(outImage); return NULL; } 590 590 // Error checks 591 PS_ VECTOR_CHECK_NULL_GENERAL(inVector, VECTORTOMATRIX_CLEANUP);591 PS_ASSERT_GENERAL_VECTOR_NON_NULL(inVector, VECTORTOMATRIX_CLEANUP); 592 592 593 593 if (inVector->type.dimen == PS_DIMEN_VECTOR) { 594 594 PS_CHECK_DIMEN_AND_TYPE(inVector, PS_DIMEN_VECTOR, VECTORTOMATRIX_CLEANUP); 595 PS_ VECTOR_CHECK_EMPTY_GENERAL(inVector, VECTORTOMATRIX_CLEANUP);595 PS_ASSERT_GENERAL_VECTOR_NON_EMPTY(inVector, VECTORTOMATRIX_CLEANUP); 596 596 597 597 outImage = psImageRecycle(outImage, 1, inVector->n, inVector->type.type); … … 614 614 } else if (inVector->type.dimen == PS_DIMEN_TRANSV) { 615 615 PS_CHECK_DIMEN_AND_TYPE(inVector, PS_DIMEN_TRANSV, VECTORTOMATRIX_CLEANUP); 616 PS_ VECTOR_CHECK_EMPTY_GENERAL(inVector, VECTORTOMATRIX_CLEANUP);616 PS_ASSERT_GENERAL_VECTOR_NON_EMPTY(inVector, VECTORTOMATRIX_CLEANUP); 617 617 outImage = psImageRecycle(outImage, inVector->n, 1, inVector->type.type); 618 618 // More checks for PS_DIMEN_TRANSV … … 632 632 } 633 633 634 PS_ IMAGE_CHECK_NULL_GENERAL(outImage, VECTORTOMATRIX_CLEANUP);634 PS_ASSERT_GENERAL_IMAGE_NON_NULL(outImage, VECTORTOMATRIX_CLEANUP); 635 635 PS_CHECK_DIMEN_AND_TYPE(outImage, PS_DIMEN_IMAGE, VECTORTOMATRIX_CLEANUP); 636 636 -
trunk/psLib/src/dataManip/psMinimize.c
r3990 r4029 9 9 * @author GLG, MHPCC 10 10 * 11 * @version $Revision: 1.1 19$ $Name: not supported by cvs2svn $12 * @date $Date: 2005-05- 19 23:57:37$11 * @version $Revision: 1.120 $ $Name: not supported by cvs2svn $ 12 * @date $Date: 2005-05-25 20:26:55 $ 13 13 * 14 14 * Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii … … 174 174 psF32 X) 175 175 { 176 PS_ PTR_CHECK_NULL(spline, NAN);177 PS_ INT_CHECK_NON_NEGATIVE(spline->n, NAN);178 PS_ VECTOR_CHECK_NULL(spline->domains, NAN);179 PS_ PTR_CHECK_NULL(spline->p_psDeriv2, NAN);180 PS_ VECTOR_CHECK_NULL(x, NAN);181 PS_ VECTOR_CHECK_TYPE(x, PS_TYPE_F32, NAN);182 PS_ VECTOR_CHECK_NULL(y, NAN);183 PS_ VECTOR_CHECK_TYPE(y, PS_TYPE_F32, NAN);184 PS_ VECTOR_CHECK_TYPE(spline->knots, PS_TYPE_F32, NULL);176 PS_ASSERT_PTR_NON_NULL(spline, NAN); 177 PS_ASSERT_INT_NONNEGATIVE(spline->n, NAN); 178 PS_ASSERT_VECTOR_NON_NULL(spline->domains, NAN); 179 PS_ASSERT_PTR_NON_NULL(spline->p_psDeriv2, NAN); 180 PS_ASSERT_VECTOR_NON_NULL(x, NAN); 181 PS_ASSERT_VECTOR_TYPE(x, PS_TYPE_F32, NAN); 182 PS_ASSERT_VECTOR_NON_NULL(y, NAN); 183 PS_ASSERT_VECTOR_TYPE(y, PS_TYPE_F32, NAN); 184 PS_ASSERT_VECTOR_TYPE(spline->knots, PS_TYPE_F32, NULL); 185 185 186 186 psS32 n; … … 258 258 const psVector* yErr) ///< Errors in coordinates, or NULL 259 259 { 260 PS_ VECTOR_CHECK_NULL(y, NULL);261 PS_ VECTOR_CHECK_TYPE_F32_OR_F64(y, NULL);260 PS_ASSERT_VECTOR_NON_NULL(y, NULL); 261 PS_ASSERT_VECTOR_TYPE_F32_OR_F64(y, NULL); 262 262 if (mySpline != NULL) { 263 PS_ VECTOR_CHECK_TYPE(mySpline->knots, PS_TYPE_F32, NULL);263 PS_ASSERT_VECTOR_TYPE(mySpline->knots, PS_TYPE_F32, NULL); 264 264 } 265 265 … … 285 285 yErr32 = yErr32Static; 286 286 } else { 287 PS_ VECTOR_CHECK_TYPE_F32_OR_F64(yErr, NULL);287 PS_ASSERT_VECTOR_TYPE_F32_OR_F64(yErr, NULL); 288 288 PS_VECTOR_CONVERT_F64_TO_F32_STATIC(yErr, yErr32, yErr32Static); 289 289 } … … 294 294 x32 = x32Static; 295 295 } else { 296 PS_ VECTOR_CHECK_TYPE_F32_OR_F64(x, NULL);296 PS_ASSERT_VECTOR_TYPE_F32_OR_F64(x, NULL); 297 297 PS_VECTOR_CONVERT_F64_TO_F32_STATIC(x, x32, x32Static); 298 298 } 299 PS_ VECTOR_CHECK_SIZE_EQUAL(x32, y32, NULL);300 PS_ VECTOR_CHECK_SIZE_EQUAL(yErr32, y32, NULL);299 PS_ASSERT_VECTORS_SIZE_EQUAL(x32, y32, NULL); 300 PS_ASSERT_VECTORS_SIZE_EQUAL(yErr32, y32, NULL); 301 301 302 302 /* … … 310 310 mySpline = psSpline1DAllocGeneric(x32, 3); 311 311 } 312 PS_ PTR_CHECK_NULL(mySpline, NULL);313 PS_ INT_CHECK_NON_NEGATIVE(mySpline->n, NULL);312 PS_ASSERT_PTR_NON_NULL(mySpline, NULL); 313 PS_ASSERT_INT_NONNEGATIVE(mySpline->n, NULL); 314 314 315 315 if (y32->n != (1 + mySpline->n)) { … … 440 440 const psArray *coords) 441 441 { 442 PS_ PTR_CHECK_NULL(coords, NULL);443 PS_ PTR_CHECK_NULL(params, NULL);442 PS_ASSERT_PTR_NON_NULL(coords, NULL); 443 PS_ASSERT_PTR_NON_NULL(params, NULL); 444 444 445 445 psTrace(".psLib.dataManip.psMinimize", 4, … … 457 457 deriv = psImageAlloc(params->n, coords->n, PS_TYPE_F32); 458 458 } else { 459 PS_ IMAGE_CHECK_SIZE(deriv, params->n, coords->n, NULL);460 PS_ IMAGE_CHECK_TYPE(deriv, PS_TYPE_F32, NULL);459 PS_ASSERT_IMAGE_SIZE(deriv, params->n, coords->n, NULL); 460 PS_ASSERT_IMAGE_TYPE(deriv, PS_TYPE_F32, NULL); 461 461 } 462 462 … … 513 513 const psArray *coords) 514 514 { 515 PS_ PTR_CHECK_NULL(coords, NULL);516 PS_ PTR_CHECK_NULL(params, NULL);515 PS_ASSERT_PTR_NON_NULL(coords, NULL); 516 PS_ASSERT_PTR_NON_NULL(params, NULL); 517 517 518 518 psF64 normalization = params->data.F32[0]; … … 527 527 deriv = psImageAlloc(params->n, coords->n, PS_TYPE_F32); 528 528 } else { 529 PS_ IMAGE_CHECK_SIZE(deriv, 6, coords->n, NULL);530 PS_ IMAGE_CHECK_TYPE(deriv, PS_TYPE_F32, NULL);529 PS_ASSERT_IMAGE_SIZE(deriv, 6, coords->n, NULL); 530 PS_ASSERT_IMAGE_TYPE(deriv, PS_TYPE_F32, NULL); 531 531 } 532 532 … … 572 572 psMinimizeLMChi2Func func) 573 573 { 574 PS_ PTR_CHECK_NULL(min, NULL);575 PS_ VECTOR_CHECK_NULL(params, NULL);576 PS_ VECTOR_CHECK_EMPTY(params, NULL);577 PS_ PTR_CHECK_NULL(x, NULL);578 PS_ VECTOR_CHECK_NULL(y, NULL);579 PS_ VECTOR_CHECK_EMPTY(y, NULL);580 PS_ VECTOR_CHECK_SIZE_EQUAL(x, y, NULL);581 PS_ PTR_CHECK_NULL(func, NULL);574 PS_ASSERT_PTR_NON_NULL(min, NULL); 575 PS_ASSERT_VECTOR_NON_NULL(params, NULL); 576 PS_ASSERT_VECTOR_NON_EMPTY(params, NULL); 577 PS_ASSERT_PTR_NON_NULL(x, NULL); 578 PS_ASSERT_VECTOR_NON_NULL(y, NULL); 579 PS_ASSERT_VECTOR_NON_EMPTY(y, NULL); 580 PS_ASSERT_VECTORS_SIZE_EQUAL(x, y, NULL); 581 PS_ASSERT_PTR_NON_NULL(func, NULL); 582 582 583 583 // this function has test and current values for several things … … 923 923 psMinimizeLMChi2Func func) 924 924 { 925 PS_ PTR_CHECK_NULL(min, NULL);926 PS_ VECTOR_CHECK_NULL(params, NULL);927 PS_ VECTOR_CHECK_EMPTY(params, NULL);928 PS_ PTR_CHECK_NULL(x, NULL);929 PS_ VECTOR_CHECK_NULL(y, NULL);930 PS_ VECTOR_CHECK_EMPTY(y, NULL);931 PS_ VECTOR_CHECK_SIZE_EQUAL(x, y, NULL);932 PS_ PTR_CHECK_NULL(func, NULL);925 PS_ASSERT_PTR_NON_NULL(min, NULL); 926 PS_ASSERT_VECTOR_NON_NULL(params, NULL); 927 PS_ASSERT_VECTOR_NON_EMPTY(params, NULL); 928 PS_ASSERT_PTR_NON_NULL(x, NULL); 929 PS_ASSERT_VECTOR_NON_NULL(y, NULL); 930 PS_ASSERT_VECTOR_NON_EMPTY(y, NULL); 931 PS_ASSERT_VECTORS_SIZE_EQUAL(x, y, NULL); 932 PS_ASSERT_PTR_NON_NULL(func, NULL); 933 933 934 934 if (paramMask != NULL) { 935 PS_ VECTOR_CHECK_SIZE_EQUAL(params, paramMask, NULL);935 PS_ASSERT_VECTORS_SIZE_EQUAL(params, paramMask, NULL); 936 936 } 937 937 if (yErr != NULL) { 938 PS_ VECTOR_CHECK_SIZE_EQUAL(y, yErr, NULL);938 PS_ASSERT_VECTORS_SIZE_EQUAL(y, yErr, NULL); 939 939 } 940 940 if (covar != NULL) { 941 PS_ IMAGE_CHECK_SIZE(covar, params->n, params->n, NULL);941 PS_ASSERT_IMAGE_SIZE(covar, params->n, params->n, NULL); 942 942 } 943 943 … … 1363 1363 const psVector* yErr) 1364 1364 { 1365 PS_ POLY_CHECK_NULL(myPoly, NULL);1366 PS_ INT_CHECK_NON_NEGATIVE(myPoly->n, NULL);1367 PS_ VECTOR_CHECK_NULL(y, NULL);1368 PS_ VECTOR_CHECK_EMPTY(y, NULL);1369 PS_ VECTOR_CHECK_TYPE_F32_OR_F64(y, NULL);1365 PS_ASSERT_POLY_NON_NULL(myPoly, NULL); 1366 PS_ASSERT_INT_NONNEGATIVE(myPoly->n, NULL); 1367 PS_ASSERT_VECTOR_NON_NULL(y, NULL); 1368 PS_ASSERT_VECTOR_NON_EMPTY(y, NULL); 1369 PS_ASSERT_VECTOR_TYPE_F32_OR_F64(y, NULL); 1370 1370 1371 1371 psS32 i; … … 1383 1383 yErr64 = yErr64Static; 1384 1384 } else { 1385 PS_ VECTOR_CHECK_TYPE_F32_OR_F64(yErr, NULL);1385 PS_ASSERT_VECTOR_TYPE_F32_OR_F64(yErr, NULL); 1386 1386 PS_VECTOR_CONVERT_F32_TO_F64_STATIC(yErr, yErr64, yErr64Static); 1387 1387 } … … 1395 1395 x64 = x64Static; 1396 1396 } else { 1397 PS_ VECTOR_CHECK_TYPE_F32_OR_F64(x, NULL);1397 PS_ASSERT_VECTOR_TYPE_F32_OR_F64(x, NULL); 1398 1398 PS_VECTOR_CONVERT_F32_TO_F64_STATIC(x, x64, x64Static); 1399 1399 if (myPoly->type == PS_POLYNOMIAL_CHEB) { … … 1401 1401 } 1402 1402 } 1403 PS_ VECTOR_CHECK_SIZE_EQUAL(x64, y64, NULL);1404 PS_ VECTOR_CHECK_SIZE_EQUAL(yErr64, y64, NULL);1403 PS_ASSERT_VECTORS_SIZE_EQUAL(x64, y64, NULL); 1404 PS_ASSERT_VECTORS_SIZE_EQUAL(yErr64, y64, NULL); 1405 1405 1406 1406 // Call the appropriate vector fitting routine. … … 1430 1430 psF32 tol) 1431 1431 { 1432 PS_ INT_CHECK_NON_NEGATIVE(maxIter, NULL);1432 PS_ASSERT_INT_NONNEGATIVE(maxIter, NULL); 1433 1433 1434 1434 psMinimization *min = psAlloc(sizeof(psMinimization)); … … 1765 1765 psMinimizePowellFunc func) 1766 1766 { 1767 PS_ PTR_CHECK_NULL(min, NAN);1768 PS_ VECTOR_CHECK_NULL(params, NAN);1769 PS_ VECTOR_CHECK_EMPTY(params, NAN);1770 PS_ VECTOR_CHECK_TYPE(params, PS_TYPE_F32, NAN);1771 PS_ VECTOR_CHECK_NULL(line, NAN);1772 PS_ VECTOR_CHECK_EMPTY(line, NAN);1773 PS_ VECTOR_CHECK_TYPE(line, PS_TYPE_F32, NAN);1774 PS_ VECTOR_CHECK_NULL(paramMask, NAN);1775 PS_ VECTOR_CHECK_EMPTY(paramMask, NAN);1776 PS_ VECTOR_CHECK_TYPE(paramMask, PS_TYPE_U8, NAN);1777 PS_ PTR_CHECK_NULL(coords, NAN);1778 PS_ PTR_CHECK_NULL(func, NAN);1767 PS_ASSERT_PTR_NON_NULL(min, NAN); 1768 PS_ASSERT_VECTOR_NON_NULL(params, NAN); 1769 PS_ASSERT_VECTOR_NON_EMPTY(params, NAN); 1770 PS_ASSERT_VECTOR_TYPE(params, PS_TYPE_F32, NAN); 1771 PS_ASSERT_VECTOR_NON_NULL(line, NAN); 1772 PS_ASSERT_VECTOR_NON_EMPTY(line, NAN); 1773 PS_ASSERT_VECTOR_TYPE(line, PS_TYPE_F32, NAN); 1774 PS_ASSERT_VECTOR_NON_NULL(paramMask, NAN); 1775 PS_ASSERT_VECTOR_NON_EMPTY(paramMask, NAN); 1776 PS_ASSERT_VECTOR_TYPE(paramMask, PS_TYPE_U8, NAN); 1777 PS_ASSERT_PTR_NON_NULL(coords, NAN); 1778 PS_ASSERT_PTR_NON_NULL(func, NAN); 1779 1779 psVector *bracket; 1780 1780 psF32 a = 0.0; … … 1919 1919 psMinimizePowellFunc func) 1920 1920 { 1921 PS_ PTR_CHECK_NULL(min, NULL);1922 PS_ VECTOR_CHECK_NULL(params, NULL);1923 PS_ VECTOR_CHECK_EMPTY(params, NULL);1924 PS_ VECTOR_CHECK_TYPE(params, PS_TYPE_F32, NULL);1925 PS_ PTR_CHECK_NULL(coords, NULL);1926 PS_ PTR_CHECK_NULL(func, NULL);1921 PS_ASSERT_PTR_NON_NULL(min, NULL); 1922 PS_ASSERT_VECTOR_NON_NULL(params, NULL); 1923 PS_ASSERT_VECTOR_NON_EMPTY(params, NULL); 1924 PS_ASSERT_VECTOR_TYPE(params, PS_TYPE_F32, NULL); 1925 PS_ASSERT_PTR_NON_NULL(coords, NULL); 1926 PS_ASSERT_PTR_NON_NULL(func, NULL); 1927 1927 psS32 numDims = params->n; 1928 1928 PS_VECTOR_GEN_STATIC_RECYCLED(pQP, numDims, PS_TYPE_F32); … … 1957 1957 myParamMask = (psVector *) paramMask; 1958 1958 } 1959 PS_ VECTOR_CHECK_SIZE_EQUAL(params, myParamMask, NULL);1959 PS_ASSERT_VECTORS_SIZE_EQUAL(params, myParamMask, NULL); 1960 1960 1961 1961 // 1: Set v[i] to be the unit vectors for each dimension in params … … 2119 2119 const psArray *coords) 2120 2120 { 2121 PS_ PTR_CHECK_NULL(coords, NULL);2122 PS_ PTR_CHECK_NULL(params, NULL);2121 PS_ASSERT_PTR_NON_NULL(coords, NULL); 2122 PS_ASSERT_PTR_NON_NULL(params, NULL); 2123 2123 2124 2124 psF32 x; … … 2150 2150 psTrace(".psLib.dataManip.myPowellChi2Func", 4, 2151 2151 "---- myPowellChi2Func() begin ----\n"); 2152 PS_ VECTOR_CHECK_NULL(params, NAN);2153 PS_ VECTOR_CHECK_EMPTY(params, NAN);2154 PS_ VECTOR_CHECK_NULL(myValue, NAN);2155 PS_ VECTOR_CHECK_EMPTY(myValue, NAN);2156 PS_ PTR_CHECK_NULL(coords, NAN);2152 PS_ASSERT_VECTOR_NON_NULL(params, NAN); 2153 PS_ASSERT_VECTOR_NON_EMPTY(params, NAN); 2154 PS_ASSERT_VECTOR_NON_NULL(myValue, NAN); 2155 PS_ASSERT_VECTOR_NON_EMPTY(myValue, NAN); 2156 PS_ASSERT_PTR_NON_NULL(coords, NAN); 2157 2157 2158 2158 psF32 chi2 = 0.0; -
trunk/psLib/src/dataManip/psStats.c
r4028 r4029 9 9 * @author GLG, MHPCC 10 10 * 11 * @version $Revision: 1.12 8$ $Name: not supported by cvs2svn $12 * @date $Date: 2005-05-25 19:25:29$11 * @version $Revision: 1.129 $ $Name: not supported by cvs2svn $ 12 * @date $Date: 2005-05-25 20:26:55 $ 13 13 * 14 14 * Copyright 2004 Maui High Performance Computing Center, University of Hawaii … … 424 424 psStats* stats) 425 425 { 426 PS_ VECTOR_CHECK_NULL(myVector, -1);427 PS_ PTR_CHECK_NULL(stats, -1);426 PS_ASSERT_VECTOR_NON_NULL(myVector, -1); 427 PS_ASSERT_PTR_NON_NULL(stats, -1); 428 428 psS32 i = 0; // Loop index variable 429 429 … … 472 472 psStats* stats) 473 473 { 474 PS_ VECTOR_CHECK_NULL(myVector, -1);475 PS_ PTR_CHECK_NULL(stats, -1);474 PS_ASSERT_VECTOR_NON_NULL(myVector, -1); 475 PS_ASSERT_PTR_NON_NULL(stats, -1); 476 476 psS32 i = 0; // Loop index variable 477 477 psS32 numData = 0; // The number of data points … … 619 619 psF32 sigma) 620 620 { 621 PS_ PTR_CHECK_NULL(robustHistogram, NULL);622 PS_ PTR_CHECK_NULL(robustHistogram->bounds, NULL);621 PS_ASSERT_PTR_NON_NULL(robustHistogram, NULL); 622 PS_ASSERT_PTR_NON_NULL(robustHistogram->bounds, NULL); 623 623 624 624 psS32 i = 0; // Loop index variable … … 1029 1029 1030 1030 // Ensure that stats->clipIter is within the proper range. 1031 PS_ INT_CHECK_RANGE(stats->clipIter,1032 PS_CLIPPED_NUM_ITER_LB,1033 PS_CLIPPED_NUM_ITER_UB, -1);1031 PS_ASSERT_INT_WITHIN_RANGE(stats->clipIter, 1032 PS_CLIPPED_NUM_ITER_LB, 1033 PS_CLIPPED_NUM_ITER_UB, -1); 1034 1034 1035 1035 // Ensure that stats->clipSigma is within the proper range. 1036 PS_ INT_CHECK_RANGE(stats->clipSigma,1037 PS_CLIPPED_SIGMA_LB,1038 PS_CLIPPED_SIGMA_UB, -1);1036 PS_ASSERT_INT_WITHIN_RANGE(stats->clipSigma, 1037 PS_CLIPPED_SIGMA_LB, 1038 PS_CLIPPED_SIGMA_UB, -1); 1039 1039 1040 1040 // Allocate a psStats structure for calculating the mean, median, and … … 1263 1263 psF32 getThisValue) 1264 1264 { 1265 PS_ POLY_CHECK_NULL(myPoly, NAN);1265 PS_ASSERT_POLY_NON_NULL(myPoly, NAN); 1266 1266 PS_FLOAT_COMPARE(rangeLow, rangeHigh, NAN); 1267 1267 // We ensure that the requested f(y) value, which is getThisValue, is … … 1332 1332 psF32 yVal) 1333 1333 { 1334 PS_ VECTOR_CHECK_NULL(xVec, NAN);1335 PS_ VECTOR_CHECK_NULL(yVec, NAN);1336 PS_ VECTOR_CHECK_TYPE(xVec, PS_TYPE_F32, NAN);1337 PS_ VECTOR_CHECK_TYPE(yVec, PS_TYPE_F32, NAN);1338 // PS_ VECTOR_CHECK_SIZE_EQUAL(xVec, yVec, NAN);1339 PS_ INT_CHECK_RANGE(binNum, 0, (xVec->n - 1), NAN);1340 PS_ INT_CHECK_RANGE(binNum, 0, (yVec->n - 1), NAN);1334 PS_ASSERT_VECTOR_NON_NULL(xVec, NAN); 1335 PS_ASSERT_VECTOR_NON_NULL(yVec, NAN); 1336 PS_ASSERT_VECTOR_TYPE(xVec, PS_TYPE_F32, NAN); 1337 PS_ASSERT_VECTOR_TYPE(yVec, PS_TYPE_F32, NAN); 1338 // PS_ASSERT_VECTORS_SIZE_EQUAL(xVec, yVec, NAN); 1339 PS_ASSERT_INT_WITHIN_RANGE(binNum, 0, (xVec->n - 1), NAN); 1340 PS_ASSERT_INT_WITHIN_RANGE(binNum, 0, (yVec->n - 1), NAN); 1341 1341 1342 1342 // PS_VECTOR_DECLARE_ALLOC_STATIC(x, 3, PS_TYPE_F64); … … 1827 1827 psHistogram* psHistogramAlloc(psF32 lower, psF32 upper, psS32 n) 1828 1828 { 1829 PS_ INT_CHECK_POSITIVE(n, NULL);1829 PS_ASSERT_INT_POSITIVE(n, NULL); 1830 1830 PS_FLOAT_COMPARE(lower, upper, NULL); 1831 1831 … … 1875 1875 psHistogram* psHistogramAllocGeneric(const psVector* bounds) 1876 1876 { 1877 PS_ VECTOR_CHECK_NULL(bounds, NULL);1878 PS_ VECTOR_CHECK_TYPE(bounds, PS_TYPE_F32, NULL);1877 PS_ASSERT_VECTOR_NON_NULL(bounds, NULL); 1878 PS_ASSERT_VECTOR_TYPE(bounds, PS_TYPE_F32, NULL); 1879 1879 PS_INT_COMPARE(2, bounds->n, NULL); 1880 1880 … … 1930 1930 psF32 error) 1931 1931 { 1932 PS_ PTR_CHECK_NULL(out, -1);1933 PS_ PTR_CHECK_NULL(out->bounds, -1);1934 PS_ PTR_CHECK_NULL(out->nums, -1);1935 PS_ INT_CHECK_RANGE(binNum, 0, ((out->nums->n)-1), -2);1932 PS_ASSERT_PTR_NON_NULL(out, -1); 1933 PS_ASSERT_PTR_NON_NULL(out->bounds, -1); 1934 PS_ASSERT_PTR_NON_NULL(out->nums, -1); 1935 PS_ASSERT_INT_WITHIN_RANGE(binNum, 0, ((out->nums->n)-1), -2); 1936 1936 PS_FLOAT_COMPARE(0.0, error, -3); 1937 PS_ FLOAT_CHECK_RANGE(data, out->bounds->data.F32[0], out->bounds->data.F32[(out->bounds->n)-1], -4);1937 PS_ASSERT_FLOAT_WITHIN_RANGE(data, out->bounds->data.F32[0], out->bounds->data.F32[(out->bounds->n)-1], -4); 1938 1938 1939 1939 psF32 boxcarWidth = 2.35 * error; … … 2019 2019 psU32 maskVal) 2020 2020 { 2021 PS_ PTR_CHECK_NULL(out, NULL);2022 PS_ VECTOR_CHECK_NULL(out->bounds, NULL);2023 PS_ VECTOR_CHECK_TYPE(out->bounds, PS_TYPE_F32, NULL);2024 PS_ INT_CHECK_NON_NEGATIVE(out->bounds->n, NULL);2025 PS_ VECTOR_CHECK_NULL(out->nums, NULL);2026 PS_ VECTOR_CHECK_TYPE(out->nums, PS_TYPE_F32, NULL);2027 PS_ INT_CHECK_NON_NEGATIVE(out->nums->n, NULL);2028 PS_ VECTOR_CHECK_NULL(in, out);2021 PS_ASSERT_PTR_NON_NULL(out, NULL); 2022 PS_ASSERT_VECTOR_NON_NULL(out->bounds, NULL); 2023 PS_ASSERT_VECTOR_TYPE(out->bounds, PS_TYPE_F32, NULL); 2024 PS_ASSERT_INT_NONNEGATIVE(out->bounds->n, NULL); 2025 PS_ASSERT_VECTOR_NON_NULL(out->nums, NULL); 2026 PS_ASSERT_VECTOR_TYPE(out->nums, PS_TYPE_F32, NULL); 2027 PS_ASSERT_INT_NONNEGATIVE(out->nums->n, NULL); 2028 PS_ASSERT_VECTOR_NON_NULL(in, out); 2029 2029 if (mask != NULL) { 2030 PS_ VECTOR_CHECK_SIZE_EQUAL(in, mask, NULL);2031 PS_ VECTOR_CHECK_TYPE(mask, PS_TYPE_U8, NULL);2030 PS_ASSERT_VECTORS_SIZE_EQUAL(in, mask, NULL); 2031 PS_ASSERT_VECTOR_TYPE(mask, PS_TYPE_U8, NULL); 2032 2032 } 2033 2033 if (errors != NULL) { 2034 PS_ VECTOR_CHECK_SIZE_EQUAL(in, errors, NULL);2035 PS_ VECTOR_CHECK_TYPE(errors, in->type.type, NULL);2034 PS_ASSERT_VECTORS_SIZE_EQUAL(in, errors, NULL); 2035 PS_ASSERT_VECTOR_TYPE(errors, in->type.type, NULL); 2036 2036 } 2037 2037 … … 2216 2216 psU32 maskVal) 2217 2217 { 2218 PS_ PTR_CHECK_NULL(stats, NULL);2219 PS_ VECTOR_CHECK_NULL(in, stats);2218 PS_ASSERT_PTR_NON_NULL(stats, NULL); 2219 PS_ASSERT_VECTOR_NON_NULL(in, stats); 2220 2220 if (mask != NULL) { 2221 PS_ VECTOR_CHECK_SIZE_EQUAL(mask, in, stats);2222 PS_ VECTOR_CHECK_TYPE(mask, PS_TYPE_U8, stats);2221 PS_ASSERT_VECTORS_SIZE_EQUAL(mask, in, stats); 2222 PS_ASSERT_VECTOR_TYPE(mask, PS_TYPE_U8, stats); 2223 2223 } 2224 2224 if (errors != NULL) { 2225 PS_ VECTOR_CHECK_SIZE_EQUAL(errors, in, stats);2226 PS_ VECTOR_CHECK_TYPE(errors, in->type.type, stats);2225 PS_ASSERT_VECTORS_SIZE_EQUAL(errors, in, stats); 2226 PS_ASSERT_VECTOR_TYPE(errors, in->type.type, stats); 2227 2227 } 2228 2228 -
trunk/psLib/src/dataManip/psUnaryOp.c
r3887 r4029 30 30 * @author Robert DeSonia, MHPCC 31 31 * 32 * @version $Revision: 1. 2$ $Name: not supported by cvs2svn $33 * @date $Date: 2005-05- 12 00:54:49$32 * @version $Revision: 1.3 $ $Name: not supported by cvs2svn $ 33 * @date $Date: 2005-05-25 20:26:55 $ 34 34 * 35 35 * Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii … … 315 315 psType* psTypeIn = (psType* ) in; 316 316 317 PS_ PTR_CHECK_NULL_GENERAL(in, psUnaryOp_EXIT);318 PS_ PTR_CHECK_NULL_GENERAL(op, psUnaryOp_EXIT);317 PS_ASSERT_GENERAL_PTR_NON_NULL(in, psUnaryOp_EXIT); 318 PS_ASSERT_GENERAL_PTR_NON_NULL(op, psUnaryOp_EXIT); 319 319 320 320 psDimen dimIn = psTypeIn->dimen; -
trunk/psLib/src/image/psImageStats.c
r3884 r4029 9 9 * @author GLG, MHPCC 10 10 * 11 * @version $Revision: 1.7 3$ $Name: not supported by cvs2svn $12 * @date $Date: 2005-05- 11 22:02:16$11 * @version $Revision: 1.74 $ $Name: not supported by cvs2svn $ 12 * @date $Date: 2005-05-25 20:26:55 $ 13 13 * 14 14 * Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii … … 52 52 psVector *junkMask = NULL; 53 53 54 PS_ PTR_CHECK_NULL(stats, NULL);55 PS_ INT_CHECK_ZERO(stats->options, NULL);56 PS_ IMAGE_CHECK_NULL(in, NULL)54 PS_ASSERT_PTR_NON_NULL(stats, NULL); 55 PS_ASSERT_INT_NONZERO(stats->options, NULL); 56 PS_ASSERT_IMAGE_NON_NULL(in, NULL) 57 57 if (mask != NULL) { 58 PS_ IMAGE_CHECK_TYPE(mask, PS_TYPE_U8, NULL);59 PS_ IMAGE_CHECK_SIZE_EQUAL(in, mask, NULL);58 PS_ASSERT_IMAGE_TYPE(mask, PS_TYPE_U8, NULL); 59 PS_ASSERT_IMAGES_SIZE_EQUAL(in, mask, NULL); 60 60 } 61 61 … … 124 124 psU32 maskVal) 125 125 { 126 PS_ PTR_CHECK_NULL(out, NULL);127 PS_ PTR_CHECK_NULL(in, NULL);126 PS_ASSERT_PTR_NON_NULL(out, NULL); 127 PS_ASSERT_PTR_NON_NULL(in, NULL); 128 128 if (mask != NULL) { 129 PS_ IMAGE_CHECK_TYPE(mask, PS_TYPE_U8, NULL);130 PS_ IMAGE_CHECK_SIZE_EQUAL(in, mask, NULL);129 PS_ASSERT_IMAGE_TYPE(mask, PS_TYPE_U8, NULL); 130 PS_ASSERT_IMAGES_SIZE_EQUAL(in, mask, NULL); 131 131 } 132 132 psVector* junkData = NULL; … … 200 200 double* calcScaleFactors(psS32 n) 201 201 { 202 PS_ INT_CHECK_NON_NEGATIVE(n, NULL);202 PS_ASSERT_INT_NONNEGATIVE(n, NULL); 203 203 psS32 i = 0; 204 204 double tmp = 0.0; … … 217 217 psPolynomial1D **p_psCreateChebyshevPolys(psS32 maxChebyPoly) 218 218 { 219 PS_ INT_CHECK_POSITIVE(maxChebyPoly, NULL);219 PS_ASSERT_INT_POSITIVE(maxChebyPoly, NULL); 220 220 psPolynomial1D **chebPolys = NULL; 221 221 psS32 i = 0; … … 265 265 const psImage* input) 266 266 { 267 PS_ IMAGE_CHECK_NULL(input, NULL);268 PS_ IMAGE_CHECK_EMPTY(input, NULL);267 PS_ASSERT_IMAGE_NON_NULL(input, NULL); 268 PS_ASSERT_IMAGE_NON_EMPTY(input, NULL); 269 269 if ((input->type.type != PS_TYPE_S8) && 270 270 (input->type.type != PS_TYPE_U16) && … … 273 273 psError(PS_ERR_BAD_PARAMETER_TYPE, true, "Unallowable image type.\n"); 274 274 } 275 PS_ POLY_CHECK_NULL(coeffs, NULL);276 PS_ POLY_CHECK_TYPE(coeffs, PS_POLYNOMIAL_CHEB, NULL);275 PS_ASSERT_POLY_NON_NULL(coeffs, NULL); 276 PS_ASSERT_POLY_TYPE(coeffs, PS_POLYNOMIAL_CHEB, NULL); 277 277 psS32 x = 0; 278 278 psS32 y = 0; … … 388 388 const psImage* input) 389 389 { 390 PS_ IMAGE_CHECK_NULL(input, NULL);391 PS_ IMAGE_CHECK_EMPTY(input, NULL);390 PS_ASSERT_IMAGE_NON_NULL(input, NULL); 391 PS_ASSERT_IMAGE_NON_EMPTY(input, NULL); 392 392 if ((input->type.type != PS_TYPE_S8) && 393 393 (input->type.type != PS_TYPE_U16) && … … 396 396 psError(PS_ERR_BAD_PARAMETER_TYPE, true, "Unallowable image type.\n"); 397 397 } 398 PS_ POLY_CHECK_NULL(coeffs, NULL);399 PS_ POLY_CHECK_TYPE(coeffs, PS_POLYNOMIAL_CHEB, NULL);398 PS_ASSERT_POLY_NON_NULL(coeffs, NULL); 399 PS_ASSERT_POLY_TYPE(coeffs, PS_POLYNOMIAL_CHEB, NULL); 400 400 psS32 x = 0; 401 401 psS32 y = 0; … … 519 519 const psPolynomial2D* coeffs) 520 520 { 521 PS_ POLY_CHECK_TYPE(coeffs, PS_POLYNOMIAL_CHEB, NULL);521 PS_ASSERT_POLY_TYPE(coeffs, PS_POLYNOMIAL_CHEB, NULL); 522 522 523 523 psS32 x = 0; … … 586 586 const psPolynomial2D* coeffs) 587 587 { 588 PS_ POLY_CHECK_TYPE(coeffs, PS_POLYNOMIAL_ORD, NULL);588 PS_ASSERT_POLY_TYPE(coeffs, PS_POLYNOMIAL_ORD, NULL); 589 589 590 590 for (int row = 0; row < input->numRows ; row++) { … … 613 613 const psPolynomial2D* coeffs) 614 614 { 615 PS_ IMAGE_CHECK_NULL(input, NULL);616 PS_ IMAGE_CHECK_EMPTY(input, NULL);615 PS_ASSERT_IMAGE_NON_NULL(input, NULL); 616 PS_ASSERT_IMAGE_NON_EMPTY(input, NULL); 617 617 if ((input->type.type != PS_TYPE_S8) && 618 618 (input->type.type != PS_TYPE_U16) && … … 622 622 "Unallowable image type.\n"); 623 623 } 624 PS_ POLY_CHECK_NULL(coeffs, NULL);624 PS_ASSERT_POLY_NON_NULL(coeffs, NULL); 625 625 626 626 if (coeffs->type == PS_POLYNOMIAL_ORD) { -
trunk/psLib/src/imageops/psImageStats.c
r3884 r4029 9 9 * @author GLG, MHPCC 10 10 * 11 * @version $Revision: 1.7 3$ $Name: not supported by cvs2svn $12 * @date $Date: 2005-05- 11 22:02:16$11 * @version $Revision: 1.74 $ $Name: not supported by cvs2svn $ 12 * @date $Date: 2005-05-25 20:26:55 $ 13 13 * 14 14 * Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii … … 52 52 psVector *junkMask = NULL; 53 53 54 PS_ PTR_CHECK_NULL(stats, NULL);55 PS_ INT_CHECK_ZERO(stats->options, NULL);56 PS_ IMAGE_CHECK_NULL(in, NULL)54 PS_ASSERT_PTR_NON_NULL(stats, NULL); 55 PS_ASSERT_INT_NONZERO(stats->options, NULL); 56 PS_ASSERT_IMAGE_NON_NULL(in, NULL) 57 57 if (mask != NULL) { 58 PS_ IMAGE_CHECK_TYPE(mask, PS_TYPE_U8, NULL);59 PS_ IMAGE_CHECK_SIZE_EQUAL(in, mask, NULL);58 PS_ASSERT_IMAGE_TYPE(mask, PS_TYPE_U8, NULL); 59 PS_ASSERT_IMAGES_SIZE_EQUAL(in, mask, NULL); 60 60 } 61 61 … … 124 124 psU32 maskVal) 125 125 { 126 PS_ PTR_CHECK_NULL(out, NULL);127 PS_ PTR_CHECK_NULL(in, NULL);126 PS_ASSERT_PTR_NON_NULL(out, NULL); 127 PS_ASSERT_PTR_NON_NULL(in, NULL); 128 128 if (mask != NULL) { 129 PS_ IMAGE_CHECK_TYPE(mask, PS_TYPE_U8, NULL);130 PS_ IMAGE_CHECK_SIZE_EQUAL(in, mask, NULL);129 PS_ASSERT_IMAGE_TYPE(mask, PS_TYPE_U8, NULL); 130 PS_ASSERT_IMAGES_SIZE_EQUAL(in, mask, NULL); 131 131 } 132 132 psVector* junkData = NULL; … … 200 200 double* calcScaleFactors(psS32 n) 201 201 { 202 PS_ INT_CHECK_NON_NEGATIVE(n, NULL);202 PS_ASSERT_INT_NONNEGATIVE(n, NULL); 203 203 psS32 i = 0; 204 204 double tmp = 0.0; … … 217 217 psPolynomial1D **p_psCreateChebyshevPolys(psS32 maxChebyPoly) 218 218 { 219 PS_ INT_CHECK_POSITIVE(maxChebyPoly, NULL);219 PS_ASSERT_INT_POSITIVE(maxChebyPoly, NULL); 220 220 psPolynomial1D **chebPolys = NULL; 221 221 psS32 i = 0; … … 265 265 const psImage* input) 266 266 { 267 PS_ IMAGE_CHECK_NULL(input, NULL);268 PS_ IMAGE_CHECK_EMPTY(input, NULL);267 PS_ASSERT_IMAGE_NON_NULL(input, NULL); 268 PS_ASSERT_IMAGE_NON_EMPTY(input, NULL); 269 269 if ((input->type.type != PS_TYPE_S8) && 270 270 (input->type.type != PS_TYPE_U16) && … … 273 273 psError(PS_ERR_BAD_PARAMETER_TYPE, true, "Unallowable image type.\n"); 274 274 } 275 PS_ POLY_CHECK_NULL(coeffs, NULL);276 PS_ POLY_CHECK_TYPE(coeffs, PS_POLYNOMIAL_CHEB, NULL);275 PS_ASSERT_POLY_NON_NULL(coeffs, NULL); 276 PS_ASSERT_POLY_TYPE(coeffs, PS_POLYNOMIAL_CHEB, NULL); 277 277 psS32 x = 0; 278 278 psS32 y = 0; … … 388 388 const psImage* input) 389 389 { 390 PS_ IMAGE_CHECK_NULL(input, NULL);391 PS_ IMAGE_CHECK_EMPTY(input, NULL);390 PS_ASSERT_IMAGE_NON_NULL(input, NULL); 391 PS_ASSERT_IMAGE_NON_EMPTY(input, NULL); 392 392 if ((input->type.type != PS_TYPE_S8) && 393 393 (input->type.type != PS_TYPE_U16) && … … 396 396 psError(PS_ERR_BAD_PARAMETER_TYPE, true, "Unallowable image type.\n"); 397 397 } 398 PS_ POLY_CHECK_NULL(coeffs, NULL);399 PS_ POLY_CHECK_TYPE(coeffs, PS_POLYNOMIAL_CHEB, NULL);398 PS_ASSERT_POLY_NON_NULL(coeffs, NULL); 399 PS_ASSERT_POLY_TYPE(coeffs, PS_POLYNOMIAL_CHEB, NULL); 400 400 psS32 x = 0; 401 401 psS32 y = 0; … … 519 519 const psPolynomial2D* coeffs) 520 520 { 521 PS_ POLY_CHECK_TYPE(coeffs, PS_POLYNOMIAL_CHEB, NULL);521 PS_ASSERT_POLY_TYPE(coeffs, PS_POLYNOMIAL_CHEB, NULL); 522 522 523 523 psS32 x = 0; … … 586 586 const psPolynomial2D* coeffs) 587 587 { 588 PS_ POLY_CHECK_TYPE(coeffs, PS_POLYNOMIAL_ORD, NULL);588 PS_ASSERT_POLY_TYPE(coeffs, PS_POLYNOMIAL_ORD, NULL); 589 589 590 590 for (int row = 0; row < input->numRows ; row++) { … … 613 613 const psPolynomial2D* coeffs) 614 614 { 615 PS_ IMAGE_CHECK_NULL(input, NULL);616 PS_ IMAGE_CHECK_EMPTY(input, NULL);615 PS_ASSERT_IMAGE_NON_NULL(input, NULL); 616 PS_ASSERT_IMAGE_NON_EMPTY(input, NULL); 617 617 if ((input->type.type != PS_TYPE_S8) && 618 618 (input->type.type != PS_TYPE_U16) && … … 622 622 "Unallowable image type.\n"); 623 623 } 624 PS_ POLY_CHECK_NULL(coeffs, NULL);624 PS_ASSERT_POLY_NON_NULL(coeffs, NULL); 625 625 626 626 if (coeffs->type == PS_POLYNOMIAL_ORD) { -
trunk/psLib/src/math/psBinaryOp.c
r3182 r4029 30 30 * @author Robert DeSonia, MHPCC 31 31 * 32 * @version $Revision: 1. 1$ $Name: not supported by cvs2svn $33 * @date $Date: 2005-0 2-10 02:36:41$32 * @version $Revision: 1.2 $ $Name: not supported by cvs2svn $ 33 * @date $Date: 2005-05-25 20:26:55 $ 34 34 * 35 35 * Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii … … 439 439 } 440 440 441 PS_ PTR_CHECK_NULL_GENERAL(input1, psBinaryOp_EXIT);442 PS_ PTR_CHECK_NULL_GENERAL(input2, psBinaryOp_EXIT);443 PS_ PTR_CHECK_NULL_GENERAL(op, psBinaryOp_EXIT);444 445 PS_ PTR_CHECK_TYPE_EQUAL_GENERAL(input1,input2, psBinaryOp_EXIT);446 447 PS_ PTR_CHECK_DIMEN_GENERAL_NOT(input1, PS_DIMEN_OTHER, psBinaryOp_EXIT);448 PS_ PTR_CHECK_DIMEN_GENERAL_NOT(input2, PS_DIMEN_OTHER, psBinaryOp_EXIT);441 PS_ASSERT_GENERAL_PTR_NON_NULL(input1, psBinaryOp_EXIT); 442 PS_ASSERT_GENERAL_PTR_NON_NULL(input2, psBinaryOp_EXIT); 443 PS_ASSERT_GENERAL_PTR_NON_NULL(op, psBinaryOp_EXIT); 444 445 PS_ASSERT_PTRS_TYPE_EQUAL_GENERAL(input1,input2, psBinaryOp_EXIT); 446 447 PS_ASSERT_PTR_DIMEN_GENERAL_NOT(input1, PS_DIMEN_OTHER, psBinaryOp_EXIT); 448 PS_ASSERT_PTR_DIMEN_GENERAL_NOT(input2, PS_DIMEN_OTHER, psBinaryOp_EXIT); 449 449 450 450 psType* psType1 = (psType*)in1; -
trunk/psLib/src/math/psConstants.h
r4028 r4029 6 6 * @author GLG, MHPCC 7 7 * 8 * @version $Revision: 1.6 8$ $Name: not supported by cvs2svn $9 * @date $Date: 2005-05-25 19:25:29$8 * @version $Revision: 1.69 $ $Name: not supported by cvs2svn $ 9 * @date $Date: 2005-05-25 20:26:55 $ 10 10 * 11 11 * Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii … … 59 59 *****************************************************************************/ 60 60 61 #define PS_ INT_CHECK_EQUALS(NAME1, NAME2, RVAL) \61 #define PS_ASSERT_INT_UNEQUAL(NAME1, NAME2, RVAL) \ 62 62 if (NAME1 == NAME2) { \ 63 63 psError(PS_ERR_BAD_PARAMETER_VALUE, true, \ … … 67 67 } 68 68 69 #define PS_ INT_CHECK_NON_EQUALS(NAME1, NAME2, RVAL) \69 #define PS_ASSERT_INT_EQUAL(NAME1, NAME2, RVAL) \ 70 70 if (NAME1 != NAME2) { \ 71 71 psError(PS_ERR_BAD_PARAMETER_VALUE, true, \ … … 76 76 77 77 // Return an error if the arg is less than zero. 78 #define PS_ INT_CHECK_NEGATIVE(NAME, RVAL) \78 #define PS_ASSERT_INT_NONNEGATIVE(NAME, RVAL) \ 79 79 if (NAME < 0) { \ 80 80 psError(PS_ERR_BAD_PARAMETER_VALUE, true, \ … … 86 86 // XXX: This naming scheme is opposite most other macros. This should be 87 87 // corrected as soon as a fresh checkin/out can be performed. 88 #define PS_ INT_CHECK_NON_NEGATIVE(NAME, RVAL) \88 #define PS_ASSERT_INT_NONNEGATIVE(NAME, RVAL) \ 89 89 if (NAME < 0) { \ 90 90 psError(PS_ERR_BAD_PARAMETER_VALUE, true, \ … … 96 96 // XXX: This naming scheme is opposite most other macros. This should be 97 97 // corrected as soon as a fresh checkin/out can be performed. 98 #define PS_ INT_CHECK_POSITIVE(NAME, RVAL) \98 #define PS_ASSERT_INT_POSITIVE(NAME, RVAL) \ 99 99 if (NAME < 1) { \ 100 100 psError(PS_ERR_BAD_PARAMETER_VALUE, true, \ … … 104 104 105 105 // Return an error if the arg is not equal to zero. 106 #define PS_ INT_CHECK_NON_ZERO(NAME, RVAL) \106 #define PS_ASSERT_INT_ZERO(NAME, RVAL) \ 107 107 if (NAME != 0) { \ 108 108 psError(PS_ERR_BAD_PARAMETER_VALUE, true, \ … … 112 112 113 113 // Return an error if the arg is equal to zero. 114 #define PS_ INT_CHECK_ZERO(NAME, RVAL) \114 #define PS_ASSERT_INT_NONZERO(NAME, RVAL) \ 115 115 if (NAME == 0) { \ 116 116 psError(PS_ERR_BAD_PARAMETER_VALUE, true, \ … … 120 120 121 121 // Return an error if the arg is lies outside the supplied range. 122 #define PS_ INT_CHECK_RANGE(NAME, LOWER, UPPER, RVAL) \122 #define PS_ASSERT_INT_WITHIN_RANGE(NAME, LOWER, UPPER, RVAL) \ 123 123 if ((int)NAME < LOWER || (int)NAME > UPPER) { \ 124 124 psError(PS_ERR_BAD_PARAMETER_VALUE, true, \ … … 148 148 // Generate an error if the two floats are equal. 149 149 // XXX: Inconsistent naming. 150 #define PS_ FLOAT_CHECK_NON_EQUAL(NAME1, NAME2, RVAL) \150 #define PS_ASSERT_FLOAT_NON_EQUAL(NAME1, NAME2, RVAL) \ 151 151 if (fabs(NAME2 - NAME1) < FLT_EPSILON) { \ 152 152 psError(PS_ERR_BAD_PARAMETER_VALUE, true, \ … … 157 157 158 158 // Return an error if the arg is lies outside the supplied range. 159 #define PS_ FLOAT_CHECK_RANGE(NAME, LOWER, UPPER, RVAL) \159 #define PS_ASSERT_FLOAT_WITHIN_RANGE(NAME, LOWER, UPPER, RVAL) \ 160 160 if ((NAME) < (LOWER) || (NAME) > (UPPER)) { \ 161 161 psError(PS_ERR_BAD_PARAMETER_VALUE, true, \ … … 169 169 the wrong type. 170 170 *****************************************************************************/ 171 #define PS_ PTR_CHECK_NULL(NAME, RVAL) PS_PTR_CHECK_NULL_GENERAL(NAME, return RVAL)172 #define PS_ PTR_CHECK_NULL_GENERAL(NAME, CLEANUP) \171 #define PS_ASSERT_PTR_NON_NULL(NAME, RVAL) PS_ASSERT_GENERAL_PTR_NON_NULL(NAME, return RVAL) 172 #define PS_ASSERT_GENERAL_PTR_NON_NULL(NAME, CLEANUP) \ 173 173 if (NAME == NULL) { \ 174 174 psError(PS_ERR_BAD_PARAMETER_NULL, true, \ … … 178 178 } 179 179 180 #define PS_ PTR_CHECK_TYPE(NAME, TYPE, RVAL) \180 #define PS_ASSERT_PTR_TYPE(NAME, TYPE, RVAL) \ 181 181 if (NAME->type.type != TYPE) { \ 182 182 psError(PS_ERR_BAD_PARAMETER_TYPE, true, \ … … 186 186 } 187 187 188 #define PS_ PTR_CHECK_DIMEN(NAME, DIMEN, RVAL) PS_PTR_CHECK_DIMEN_GENERAL(NAME, DIMEN, return RVAL)189 #define PS_ PTR_CHECK_DIMEN_GENERAL(NAME, DIMEN, CLEANUP) \188 #define PS_ASSERT_PTR_DIMEN(NAME, DIMEN, RVAL) PS_ASSERT_GENERAL_PTR_DIMEN(NAME, DIMEN, return RVAL) 189 #define PS_ASSERT_GENERAL_PTR_DIMEN(NAME, DIMEN, CLEANUP) \ 190 190 if (NAME->type.dimen != DIMEN) { \ 191 191 psError(PS_ERR_BAD_PARAMETER_TYPE, true, \ … … 195 195 } 196 196 197 #define PS_ PTR_CHECK_DIMEN_GENERAL_NOT(NAME, DIMEN, CLEANUP) \197 #define PS_ASSERT_PTR_DIMEN_GENERAL_NOT(NAME, DIMEN, CLEANUP) \ 198 198 if (NAME->type.dimen == DIMEN) { \ 199 199 psError(PS_ERR_BAD_PARAMETER_TYPE, true, \ … … 204 204 205 205 206 #define PS_ PTR_CHECK_SIZE_EQUAL(PTR1, PTR2, RVAL) \206 #define PS_ASSERT_PTRS_SIZE_EQUAL(PTR1, PTR2, RVAL) \ 207 207 if (PTR1->n != PTR2->n) { \ 208 208 psError(PS_ERR_BAD_PARAMETER_SIZE, true, \ … … 212 212 } 213 213 214 #define PS_PTR_CHECK_TYPE_EQUAL(PTR1, PTR2, RVAL) PS_PTR_CHECK_TYPE_EQUAL_GENERAL(PTR1, PTR2, return RVAL) 215 216 #define PS_PTR_CHECK_TYPE_EQUAL_GENERAL(PTR1, PTR2, CLEANUP) \ 214 #define PS_ASSERT_PTR_TYPE_EQUAL(PTR1, PTR2, RVAL) PS_ASSERT_PTRS_TYPE_EQUAL_GENERAL(PTR1, PTR2, return RVAL) 215 #define PS_ASSERT_PTRS_TYPE_EQUAL_GENERAL(PTR1, PTR2, CLEANUP) \ 217 216 if (PTR1->type.type != PTR2->type.type) { \ 218 217 psError(PS_ERR_BAD_PARAMETER_TYPE, true, \ … … 226 225 PS_VECTOR macros: 227 226 *****************************************************************************/ 228 #define PS_ VECTOR_CHECK_NULL(NAME, RVAL) PS_VECTOR_CHECK_NULL_GENERAL(NAME, return RVAL)229 #define PS_ VECTOR_CHECK_NULL_GENERAL(NAME, CLEANUP) \227 #define PS_ASSERT_VECTOR_NON_NULL(NAME, RVAL) PS_ASSERT_GENERAL_VECTOR_NON_NULL(NAME, return RVAL) 228 #define PS_ASSERT_GENERAL_VECTOR_NON_NULL(NAME, CLEANUP) \ 230 229 if (NAME == NULL || NAME->data.U8 == NULL) { \ 231 230 psError(PS_ERR_BAD_PARAMETER_NULL, true, \ … … 235 234 } \ 236 235 237 #define PS_ VECTOR_CHECK_EMPTY(NAME, RVAL) PS_VECTOR_CHECK_EMPTY_GENERAL(NAME, return RVAL)238 #define PS_ VECTOR_CHECK_EMPTY_GENERAL(NAME, CLEANUP) \236 #define PS_ASSERT_VECTOR_NON_EMPTY(NAME, RVAL) PS_ASSERT_GENERAL_VECTOR_NON_EMPTY(NAME, return RVAL) 237 #define PS_ASSERT_GENERAL_VECTOR_NON_EMPTY(NAME, CLEANUP) \ 239 238 if (NAME->n < 1) { \ 240 239 psError(PS_ERR_BAD_PARAMETER_SIZE, true, \ … … 244 243 } \ 245 244 246 #define PS_ VECTOR_CHECK_TYPE_F32_OR_F64(NAME, RVAL) \245 #define PS_ASSERT_VECTOR_TYPE_F32_OR_F64(NAME, RVAL) \ 247 246 if ((NAME->type.type != PS_TYPE_F32) && (NAME->type.type != PS_TYPE_F64)) { \ 248 247 psError(PS_ERR_BAD_PARAMETER_TYPE, true, \ … … 252 251 } \ 253 252 254 #define PS_ VECTOR_CHECK_TYPE_S16_S32_F32(NAME, RVAL) \253 #define PS_ASSERT_VECTOR_TYPE_S16_S32_F32(NAME, RVAL) \ 255 254 if ((NAME->type.type != PS_TYPE_S16) && (NAME->type.type != PS_TYPE_S32) && (NAME->type.type != PS_TYPE_F32)) { \ 256 255 psError(PS_ERR_BAD_PARAMETER_TYPE, true, \ … … 260 259 } \ 261 260 262 #define PS_ VECTOR_CHECK_TYPE(NAME, TYPE, RVAL) \261 #define PS_ASSERT_VECTOR_TYPE(NAME, TYPE, RVAL) \ 263 262 if (NAME->type.type != TYPE) { \ 264 263 psError(PS_ERR_BAD_PARAMETER_TYPE, true, \ … … 268 267 } 269 268 270 #define PS_ VECTOR_CHECK_SIZE_EQUAL(VEC1, VEC2, RVAL) \269 #define PS_ASSERT_VECTORS_SIZE_EQUAL(VEC1, VEC2, RVAL) \ 271 270 if (VEC1->n != VEC2->n) { \ 272 271 psError(PS_ERR_BAD_PARAMETER_SIZE, true, \ … … 276 275 } 277 276 278 #define PS_ VECTOR_CHECK_TYPE_EQUAL(VEC1, VEC2, RVAL) \277 #define PS_ASSERT_VECTOR_TYPE_EQUAL(VEC1, VEC2, RVAL) \ 279 278 if (VEC1->type.type != VEC2->type.type) { \ 280 279 psError(PS_ERR_BAD_PARAMETER_SIZE, true, \ … … 428 427 PS_POLY macros: 429 428 *****************************************************************************/ 430 #define PS_ POLY_CHECK_NULL(NAME, RVAL) \429 #define PS_ASSERT_POLY_NON_NULL(NAME, RVAL) \ 431 430 if (NAME == NULL || NAME->coeff == NULL) { \ 432 431 psError(PS_ERR_BAD_PARAMETER_NULL, true, \ … … 436 435 } \ 437 436 438 #define PS_ POLY_CHECK_TYPE(NAME, TYPE, RVAL) \437 #define PS_ASSERT_POLY_TYPE(NAME, TYPE, RVAL) \ 439 438 if (NAME->type != TYPE) { \ 440 439 psError(PS_ERR_BAD_PARAMETER_TYPE, true, \ … … 508 507 PS_IMAGE macros: 509 508 *****************************************************************************/ 510 #define PS_ IMAGE_CHECK_NULL(NAME, RVAL) PS_IMAGE_CHECK_NULL_GENERAL(NAME, return RVAL)511 #define PS_ IMAGE_CHECK_NULL_GENERAL(NAME, CLEANUP) \509 #define PS_ASSERT_IMAGE_NON_NULL(NAME, RVAL) PS_ASSERT_GENERAL_IMAGE_NON_NULL(NAME, return RVAL) 510 #define PS_ASSERT_GENERAL_IMAGE_NON_NULL(NAME, CLEANUP) \ 512 511 if (NAME == NULL || NAME->data.V == NULL) { \ 513 512 psError(PS_ERR_BAD_PARAMETER_NULL, true, \ … … 517 516 } 518 517 519 #define PS_ IMAGE_CHECK_EMPTY(NAME, RVAL) PS_IMAGE_CHECK_EMPTY_GENERAL(NAME, return RVAL)520 #define PS_ IMAGE_CHECK_EMPTY_GENERAL(NAME, CLEANUP) \518 #define PS_ASSERT_IMAGE_NON_EMPTY(NAME, RVAL) PS_ASSERT_GENERAL_IMAGE_NON_EMPTY(NAME, return RVAL) 519 #define PS_ASSERT_GENERAL_IMAGE_NON_EMPTY(NAME, CLEANUP) \ 521 520 if (NAME->numCols < 1 || NAME->numRows < 1) { \ 522 521 psError(PS_ERR_BAD_PARAMETER_SIZE, true, \ … … 526 525 } 527 526 528 #define PS_ IMAGE_CHECK_TYPE(NAME, TYPE, RVAL) \527 #define PS_ASSERT_IMAGE_TYPE(NAME, TYPE, RVAL) \ 529 528 if (NAME->type.type != TYPE) { \ 530 529 psError(PS_ERR_BAD_PARAMETER_TYPE, true, \ … … 534 533 } 535 534 536 #define PS_ IMAGE_CHECK_SIZE_EQUAL(NAME1, NAME2, RVAL) \535 #define PS_ASSERT_IMAGES_SIZE_EQUAL(NAME1, NAME2, RVAL) \ 537 536 if ((NAME1->numCols != NAME2->numCols) || \ 538 537 (NAME1->numRows != NAME2->numRows)) { \ … … 543 542 } 544 543 545 #define PS_ IMAGE_CHECK_SIZE(NAME1, NUM_COLS, NUM_ROWS, RVAL) \544 #define PS_ASSERT_IMAGE_SIZE(NAME1, NUM_COLS, NUM_ROWS, RVAL) \ 546 545 if ((NAME1->numCols != NUM_COLS) || \ 547 546 (NAME1->numRows != NUM_ROWS)) { \ … … 634 633 PS_READOUT macros: 635 634 *****************************************************************************/ 636 #define PS_ READOUT_CHECK_NULL(NAME, RVAL) \635 #define PS_ASSERT_READOUT_NON_NULL(NAME, RVAL) \ 637 636 if (NAME == NULL || NAME->image == NULL) { \ 638 637 psError(PS_ERR_BAD_PARAMETER_NULL, true, \ … … 642 641 } 643 642 644 #define PS_ READOUT_CHECK_EMPTY(NAME, RVAL) \643 #define PS_ASSERT_READOUT_NON_EMPTY(NAME, RVAL) \ 645 644 if (NAME->image->numCols < 1 || NAME->image->numRows < 1) { \ 646 645 psError(PS_ERR_BAD_PARAMETER_SIZE, true, \ … … 649 648 } 650 649 651 #define PS_ READOUT_CHECK_TYPE(NAME, TYPE, RVAL) \650 #define PS_ASSERT_READOUT_TYPE(NAME, TYPE, RVAL) \ 652 651 if (NAME->image->type.type != TYPE) { \ 653 652 psError(PS_ERR_BAD_PARAMETER_TYPE, true, \ -
trunk/psLib/src/math/psMatrix.c
r3880 r4029 21 21 * @author Robert DeSonia, MHPCC 22 22 * 23 * @version $Revision: 1.2 8$ $Name: not supported by cvs2svn $24 * @date $Date: 2005-05- 11 02:29:39$23 * @version $Revision: 1.29 $ $Name: not supported by cvs2svn $ 24 * @date $Date: 2005-05-25 20:26:55 $ 25 25 * 26 26 * Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii … … 188 188 189 189 // Error checks 190 PS_ IMAGE_CHECK_NULL_GENERAL(inImage, psMatrixLUD_EXIT);190 PS_ASSERT_GENERAL_IMAGE_NON_NULL(inImage, psMatrixLUD_EXIT); 191 191 PS_CHECK_POINTERS(inImage, outImage, psMatrixLUD_EXIT); 192 192 PS_CHECK_DIMEN_AND_TYPE(inImage, PS_DIMEN_IMAGE, psMatrixLUD_EXIT); 193 PS_ PTR_CHECK_NULL_GENERAL(outPerm, psMatrixLUD_EXIT);193 PS_ASSERT_GENERAL_PTR_NON_NULL(outPerm, psMatrixLUD_EXIT); 194 194 195 195 outImage = psImageRecycle(outImage, inImage->numCols, inImage->numRows, inImage->type.type); … … 247 247 248 248 // Error checks 249 PS_ IMAGE_CHECK_NULL_GENERAL(inImage, LUSOLVE_CLEANUP);249 PS_ASSERT_GENERAL_IMAGE_NON_NULL(inImage, LUSOLVE_CLEANUP); 250 250 PS_CHECK_DIMEN_AND_TYPE(inImage, PS_DIMEN_IMAGE, LUSOLVE_CLEANUP); 251 PS_ IMAGE_CHECK_EMPTY_GENERAL(inImage, LUSOLVE_CLEANUP);252 PS_ VECTOR_CHECK_NULL_GENERAL(inVector, LUSOLVE_CLEANUP);251 PS_ASSERT_GENERAL_IMAGE_NON_EMPTY(inImage, LUSOLVE_CLEANUP); 252 PS_ASSERT_GENERAL_VECTOR_NON_NULL(inVector, LUSOLVE_CLEANUP); 253 253 PS_CHECK_DIMEN_AND_TYPE(inVector, PS_DIMEN_VECTOR, LUSOLVE_CLEANUP); 254 PS_ VECTOR_CHECK_NULL_GENERAL(inPerm, LUSOLVE_CLEANUP);254 PS_ASSERT_GENERAL_VECTOR_NON_NULL(inPerm, LUSOLVE_CLEANUP); 255 255 256 256 outVector = psVectorRecycle(outVector, inImage->numRows, inImage->type.type); … … 300 300 #define INVERT_CLEANUP { psFree(outImage); return NULL; } 301 301 // Error checks 302 PS_ PTR_CHECK_NULL_GENERAL(det, INVERT_CLEANUP);303 PS_ IMAGE_CHECK_NULL_GENERAL(inImage, INVERT_CLEANUP);302 PS_ASSERT_GENERAL_PTR_NON_NULL(det, INVERT_CLEANUP); 303 PS_ASSERT_GENERAL_IMAGE_NON_NULL(inImage, INVERT_CLEANUP); 304 304 PS_CHECK_POINTERS(inImage, outImage, INVERT_CLEANUP); 305 305 PS_CHECK_DIMEN_AND_TYPE(inImage, PS_DIMEN_IMAGE, INVERT_CLEANUP); 306 PS_ IMAGE_CHECK_EMPTY_GENERAL(inImage, INVERT_CLEANUP);306 PS_ASSERT_GENERAL_IMAGE_NON_EMPTY(inImage, INVERT_CLEANUP); 307 307 308 308 outImage = psImageRecycle(outImage, inImage->numCols, inImage->numRows, inImage->type.type); … … 348 348 #define DETERMINANT_EXIT { return NULL; } 349 349 // Error checks 350 PS_ IMAGE_CHECK_NULL_GENERAL(inImage, DETERMINANT_EXIT);350 PS_ASSERT_GENERAL_IMAGE_NON_NULL(inImage, DETERMINANT_EXIT); 351 351 PS_CHECK_DIMEN_AND_TYPE(inImage, PS_DIMEN_IMAGE, DETERMINANT_EXIT); 352 PS_ IMAGE_CHECK_EMPTY_GENERAL(inImage, DETERMINANT_EXIT);352 PS_ASSERT_GENERAL_IMAGE_NON_EMPTY(inImage, DETERMINANT_EXIT); 353 353 PS_CHECK_SQUARE(inImage, DETERMINANT_EXIT); 354 354 … … 383 383 384 384 // Error checks 385 PS_ IMAGE_CHECK_NULL_GENERAL(inImage1, MULTIPLY_CLEANUP);386 PS_ IMAGE_CHECK_NULL_GENERAL(inImage2, MULTIPLY_CLEANUP);387 PS_ IMAGE_CHECK_EMPTY_GENERAL(inImage1, MULTIPLY_CLEANUP);388 PS_ IMAGE_CHECK_EMPTY_GENERAL(inImage2, MULTIPLY_CLEANUP);385 PS_ASSERT_GENERAL_IMAGE_NON_NULL(inImage1, MULTIPLY_CLEANUP); 386 PS_ASSERT_GENERAL_IMAGE_NON_NULL(inImage2, MULTIPLY_CLEANUP); 387 PS_ASSERT_GENERAL_IMAGE_NON_EMPTY(inImage1, MULTIPLY_CLEANUP); 388 PS_ASSERT_GENERAL_IMAGE_NON_EMPTY(inImage2, MULTIPLY_CLEANUP); 389 389 PS_CHECK_DIMEN_AND_TYPE(inImage1, PS_DIMEN_IMAGE, MULTIPLY_CLEANUP); 390 390 PS_CHECK_DIMEN_AND_TYPE(inImage2, PS_DIMEN_IMAGE, MULTIPLY_CLEANUP); … … 435 435 #define TRANSPOSE_CLEANUP { psFree(outImage); return NULL; } 436 436 // Error checks 437 PS_ IMAGE_CHECK_NULL_GENERAL(inImage, TRANSPOSE_CLEANUP);437 PS_ASSERT_GENERAL_IMAGE_NON_NULL(inImage, TRANSPOSE_CLEANUP); 438 438 PS_CHECK_DIMEN_AND_TYPE(inImage, PS_DIMEN_IMAGE, TRANSPOSE_CLEANUP); 439 PS_ IMAGE_CHECK_EMPTY_GENERAL(inImage, TRANSPOSE_CLEANUP);439 PS_ASSERT_GENERAL_IMAGE_NON_EMPTY(inImage, TRANSPOSE_CLEANUP); 440 440 PS_CHECK_POINTERS(inImage, outImage, TRANSPOSE_CLEANUP); 441 441 … … 481 481 #define EIGENVECTORS_CLEANUP { psFree(outImage); return NULL; } 482 482 // Error checks 483 PS_ IMAGE_CHECK_NULL_GENERAL(inImage, EIGENVECTORS_CLEANUP);483 PS_ASSERT_GENERAL_IMAGE_NON_NULL(inImage, EIGENVECTORS_CLEANUP); 484 484 PS_CHECK_DIMEN_AND_TYPE(inImage, PS_DIMEN_IMAGE, EIGENVECTORS_CLEANUP); 485 PS_ IMAGE_CHECK_EMPTY_GENERAL(inImage, EIGENVECTORS_CLEANUP);485 PS_ASSERT_GENERAL_IMAGE_NON_EMPTY(inImage, EIGENVECTORS_CLEANUP); 486 486 PS_CHECK_POINTERS(inImage, outImage, EIGENVECTORS_CLEANUP); 487 487 … … 526 526 527 527 // Error checks 528 PS_ IMAGE_CHECK_NULL_GENERAL(inImage, psMatrixToVector_EXIT);528 PS_ASSERT_GENERAL_IMAGE_NON_NULL(inImage, psMatrixToVector_EXIT); 529 529 PS_CHECK_DIMEN_AND_TYPE(inImage, PS_DIMEN_IMAGE, psMatrixToVector_EXIT); 530 PS_ IMAGE_CHECK_EMPTY_GENERAL(inImage, psMatrixToVector_EXIT);530 PS_ASSERT_GENERAL_IMAGE_NON_EMPTY(inImage, psMatrixToVector_EXIT); 531 531 532 532 if (inImage->numRows == 1) { … … 589 589 #define VECTORTOMATRIX_CLEANUP {psFree(outImage); return NULL; } 590 590 // Error checks 591 PS_ VECTOR_CHECK_NULL_GENERAL(inVector, VECTORTOMATRIX_CLEANUP);591 PS_ASSERT_GENERAL_VECTOR_NON_NULL(inVector, VECTORTOMATRIX_CLEANUP); 592 592 593 593 if (inVector->type.dimen == PS_DIMEN_VECTOR) { 594 594 PS_CHECK_DIMEN_AND_TYPE(inVector, PS_DIMEN_VECTOR, VECTORTOMATRIX_CLEANUP); 595 PS_ VECTOR_CHECK_EMPTY_GENERAL(inVector, VECTORTOMATRIX_CLEANUP);595 PS_ASSERT_GENERAL_VECTOR_NON_EMPTY(inVector, VECTORTOMATRIX_CLEANUP); 596 596 597 597 outImage = psImageRecycle(outImage, 1, inVector->n, inVector->type.type); … … 614 614 } else if (inVector->type.dimen == PS_DIMEN_TRANSV) { 615 615 PS_CHECK_DIMEN_AND_TYPE(inVector, PS_DIMEN_TRANSV, VECTORTOMATRIX_CLEANUP); 616 PS_ VECTOR_CHECK_EMPTY_GENERAL(inVector, VECTORTOMATRIX_CLEANUP);616 PS_ASSERT_GENERAL_VECTOR_NON_EMPTY(inVector, VECTORTOMATRIX_CLEANUP); 617 617 outImage = psImageRecycle(outImage, inVector->n, 1, inVector->type.type); 618 618 // More checks for PS_DIMEN_TRANSV … … 632 632 } 633 633 634 PS_ IMAGE_CHECK_NULL_GENERAL(outImage, VECTORTOMATRIX_CLEANUP);634 PS_ASSERT_GENERAL_IMAGE_NON_NULL(outImage, VECTORTOMATRIX_CLEANUP); 635 635 PS_CHECK_DIMEN_AND_TYPE(outImage, PS_DIMEN_IMAGE, VECTORTOMATRIX_CLEANUP); 636 636 -
trunk/psLib/src/math/psMinimize.c
r3990 r4029 9 9 * @author GLG, MHPCC 10 10 * 11 * @version $Revision: 1.1 19$ $Name: not supported by cvs2svn $12 * @date $Date: 2005-05- 19 23:57:37$11 * @version $Revision: 1.120 $ $Name: not supported by cvs2svn $ 12 * @date $Date: 2005-05-25 20:26:55 $ 13 13 * 14 14 * Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii … … 174 174 psF32 X) 175 175 { 176 PS_ PTR_CHECK_NULL(spline, NAN);177 PS_ INT_CHECK_NON_NEGATIVE(spline->n, NAN);178 PS_ VECTOR_CHECK_NULL(spline->domains, NAN);179 PS_ PTR_CHECK_NULL(spline->p_psDeriv2, NAN);180 PS_ VECTOR_CHECK_NULL(x, NAN);181 PS_ VECTOR_CHECK_TYPE(x, PS_TYPE_F32, NAN);182 PS_ VECTOR_CHECK_NULL(y, NAN);183 PS_ VECTOR_CHECK_TYPE(y, PS_TYPE_F32, NAN);184 PS_ VECTOR_CHECK_TYPE(spline->knots, PS_TYPE_F32, NULL);176 PS_ASSERT_PTR_NON_NULL(spline, NAN); 177 PS_ASSERT_INT_NONNEGATIVE(spline->n, NAN); 178 PS_ASSERT_VECTOR_NON_NULL(spline->domains, NAN); 179 PS_ASSERT_PTR_NON_NULL(spline->p_psDeriv2, NAN); 180 PS_ASSERT_VECTOR_NON_NULL(x, NAN); 181 PS_ASSERT_VECTOR_TYPE(x, PS_TYPE_F32, NAN); 182 PS_ASSERT_VECTOR_NON_NULL(y, NAN); 183 PS_ASSERT_VECTOR_TYPE(y, PS_TYPE_F32, NAN); 184 PS_ASSERT_VECTOR_TYPE(spline->knots, PS_TYPE_F32, NULL); 185 185 186 186 psS32 n; … … 258 258 const psVector* yErr) ///< Errors in coordinates, or NULL 259 259 { 260 PS_ VECTOR_CHECK_NULL(y, NULL);261 PS_ VECTOR_CHECK_TYPE_F32_OR_F64(y, NULL);260 PS_ASSERT_VECTOR_NON_NULL(y, NULL); 261 PS_ASSERT_VECTOR_TYPE_F32_OR_F64(y, NULL); 262 262 if (mySpline != NULL) { 263 PS_ VECTOR_CHECK_TYPE(mySpline->knots, PS_TYPE_F32, NULL);263 PS_ASSERT_VECTOR_TYPE(mySpline->knots, PS_TYPE_F32, NULL); 264 264 } 265 265 … … 285 285 yErr32 = yErr32Static; 286 286 } else { 287 PS_ VECTOR_CHECK_TYPE_F32_OR_F64(yErr, NULL);287 PS_ASSERT_VECTOR_TYPE_F32_OR_F64(yErr, NULL); 288 288 PS_VECTOR_CONVERT_F64_TO_F32_STATIC(yErr, yErr32, yErr32Static); 289 289 } … … 294 294 x32 = x32Static; 295 295 } else { 296 PS_ VECTOR_CHECK_TYPE_F32_OR_F64(x, NULL);296 PS_ASSERT_VECTOR_TYPE_F32_OR_F64(x, NULL); 297 297 PS_VECTOR_CONVERT_F64_TO_F32_STATIC(x, x32, x32Static); 298 298 } 299 PS_ VECTOR_CHECK_SIZE_EQUAL(x32, y32, NULL);300 PS_ VECTOR_CHECK_SIZE_EQUAL(yErr32, y32, NULL);299 PS_ASSERT_VECTORS_SIZE_EQUAL(x32, y32, NULL); 300 PS_ASSERT_VECTORS_SIZE_EQUAL(yErr32, y32, NULL); 301 301 302 302 /* … … 310 310 mySpline = psSpline1DAllocGeneric(x32, 3); 311 311 } 312 PS_ PTR_CHECK_NULL(mySpline, NULL);313 PS_ INT_CHECK_NON_NEGATIVE(mySpline->n, NULL);312 PS_ASSERT_PTR_NON_NULL(mySpline, NULL); 313 PS_ASSERT_INT_NONNEGATIVE(mySpline->n, NULL); 314 314 315 315 if (y32->n != (1 + mySpline->n)) { … … 440 440 const psArray *coords) 441 441 { 442 PS_ PTR_CHECK_NULL(coords, NULL);443 PS_ PTR_CHECK_NULL(params, NULL);442 PS_ASSERT_PTR_NON_NULL(coords, NULL); 443 PS_ASSERT_PTR_NON_NULL(params, NULL); 444 444 445 445 psTrace(".psLib.dataManip.psMinimize", 4, … … 457 457 deriv = psImageAlloc(params->n, coords->n, PS_TYPE_F32); 458 458 } else { 459 PS_ IMAGE_CHECK_SIZE(deriv, params->n, coords->n, NULL);460 PS_ IMAGE_CHECK_TYPE(deriv, PS_TYPE_F32, NULL);459 PS_ASSERT_IMAGE_SIZE(deriv, params->n, coords->n, NULL); 460 PS_ASSERT_IMAGE_TYPE(deriv, PS_TYPE_F32, NULL); 461 461 } 462 462 … … 513 513 const psArray *coords) 514 514 { 515 PS_ PTR_CHECK_NULL(coords, NULL);516 PS_ PTR_CHECK_NULL(params, NULL);515 PS_ASSERT_PTR_NON_NULL(coords, NULL); 516 PS_ASSERT_PTR_NON_NULL(params, NULL); 517 517 518 518 psF64 normalization = params->data.F32[0]; … … 527 527 deriv = psImageAlloc(params->n, coords->n, PS_TYPE_F32); 528 528 } else { 529 PS_ IMAGE_CHECK_SIZE(deriv, 6, coords->n, NULL);530 PS_ IMAGE_CHECK_TYPE(deriv, PS_TYPE_F32, NULL);529 PS_ASSERT_IMAGE_SIZE(deriv, 6, coords->n, NULL); 530 PS_ASSERT_IMAGE_TYPE(deriv, PS_TYPE_F32, NULL); 531 531 } 532 532 … … 572 572 psMinimizeLMChi2Func func) 573 573 { 574 PS_ PTR_CHECK_NULL(min, NULL);575 PS_ VECTOR_CHECK_NULL(params, NULL);576 PS_ VECTOR_CHECK_EMPTY(params, NULL);577 PS_ PTR_CHECK_NULL(x, NULL);578 PS_ VECTOR_CHECK_NULL(y, NULL);579 PS_ VECTOR_CHECK_EMPTY(y, NULL);580 PS_ VECTOR_CHECK_SIZE_EQUAL(x, y, NULL);581 PS_ PTR_CHECK_NULL(func, NULL);574 PS_ASSERT_PTR_NON_NULL(min, NULL); 575 PS_ASSERT_VECTOR_NON_NULL(params, NULL); 576 PS_ASSERT_VECTOR_NON_EMPTY(params, NULL); 577 PS_ASSERT_PTR_NON_NULL(x, NULL); 578 PS_ASSERT_VECTOR_NON_NULL(y, NULL); 579 PS_ASSERT_VECTOR_NON_EMPTY(y, NULL); 580 PS_ASSERT_VECTORS_SIZE_EQUAL(x, y, NULL); 581 PS_ASSERT_PTR_NON_NULL(func, NULL); 582 582 583 583 // this function has test and current values for several things … … 923 923 psMinimizeLMChi2Func func) 924 924 { 925 PS_ PTR_CHECK_NULL(min, NULL);926 PS_ VECTOR_CHECK_NULL(params, NULL);927 PS_ VECTOR_CHECK_EMPTY(params, NULL);928 PS_ PTR_CHECK_NULL(x, NULL);929 PS_ VECTOR_CHECK_NULL(y, NULL);930 PS_ VECTOR_CHECK_EMPTY(y, NULL);931 PS_ VECTOR_CHECK_SIZE_EQUAL(x, y, NULL);932 PS_ PTR_CHECK_NULL(func, NULL);925 PS_ASSERT_PTR_NON_NULL(min, NULL); 926 PS_ASSERT_VECTOR_NON_NULL(params, NULL); 927 PS_ASSERT_VECTOR_NON_EMPTY(params, NULL); 928 PS_ASSERT_PTR_NON_NULL(x, NULL); 929 PS_ASSERT_VECTOR_NON_NULL(y, NULL); 930 PS_ASSERT_VECTOR_NON_EMPTY(y, NULL); 931 PS_ASSERT_VECTORS_SIZE_EQUAL(x, y, NULL); 932 PS_ASSERT_PTR_NON_NULL(func, NULL); 933 933 934 934 if (paramMask != NULL) { 935 PS_ VECTOR_CHECK_SIZE_EQUAL(params, paramMask, NULL);935 PS_ASSERT_VECTORS_SIZE_EQUAL(params, paramMask, NULL); 936 936 } 937 937 if (yErr != NULL) { 938 PS_ VECTOR_CHECK_SIZE_EQUAL(y, yErr, NULL);938 PS_ASSERT_VECTORS_SIZE_EQUAL(y, yErr, NULL); 939 939 } 940 940 if (covar != NULL) { 941 PS_ IMAGE_CHECK_SIZE(covar, params->n, params->n, NULL);941 PS_ASSERT_IMAGE_SIZE(covar, params->n, params->n, NULL); 942 942 } 943 943 … … 1363 1363 const psVector* yErr) 1364 1364 { 1365 PS_ POLY_CHECK_NULL(myPoly, NULL);1366 PS_ INT_CHECK_NON_NEGATIVE(myPoly->n, NULL);1367 PS_ VECTOR_CHECK_NULL(y, NULL);1368 PS_ VECTOR_CHECK_EMPTY(y, NULL);1369 PS_ VECTOR_CHECK_TYPE_F32_OR_F64(y, NULL);1365 PS_ASSERT_POLY_NON_NULL(myPoly, NULL); 1366 PS_ASSERT_INT_NONNEGATIVE(myPoly->n, NULL); 1367 PS_ASSERT_VECTOR_NON_NULL(y, NULL); 1368 PS_ASSERT_VECTOR_NON_EMPTY(y, NULL); 1369 PS_ASSERT_VECTOR_TYPE_F32_OR_F64(y, NULL); 1370 1370 1371 1371 psS32 i; … … 1383 1383 yErr64 = yErr64Static; 1384 1384 } else { 1385 PS_ VECTOR_CHECK_TYPE_F32_OR_F64(yErr, NULL);1385 PS_ASSERT_VECTOR_TYPE_F32_OR_F64(yErr, NULL); 1386 1386 PS_VECTOR_CONVERT_F32_TO_F64_STATIC(yErr, yErr64, yErr64Static); 1387 1387 } … … 1395 1395 x64 = x64Static; 1396 1396 } else { 1397 PS_ VECTOR_CHECK_TYPE_F32_OR_F64(x, NULL);1397 PS_ASSERT_VECTOR_TYPE_F32_OR_F64(x, NULL); 1398 1398 PS_VECTOR_CONVERT_F32_TO_F64_STATIC(x, x64, x64Static); 1399 1399 if (myPoly->type == PS_POLYNOMIAL_CHEB) { … … 1401 1401 } 1402 1402 } 1403 PS_ VECTOR_CHECK_SIZE_EQUAL(x64, y64, NULL);1404 PS_ VECTOR_CHECK_SIZE_EQUAL(yErr64, y64, NULL);1403 PS_ASSERT_VECTORS_SIZE_EQUAL(x64, y64, NULL); 1404 PS_ASSERT_VECTORS_SIZE_EQUAL(yErr64, y64, NULL); 1405 1405 1406 1406 // Call the appropriate vector fitting routine. … … 1430 1430 psF32 tol) 1431 1431 { 1432 PS_ INT_CHECK_NON_NEGATIVE(maxIter, NULL);1432 PS_ASSERT_INT_NONNEGATIVE(maxIter, NULL); 1433 1433 1434 1434 psMinimization *min = psAlloc(sizeof(psMinimization)); … … 1765 1765 psMinimizePowellFunc func) 1766 1766 { 1767 PS_ PTR_CHECK_NULL(min, NAN);1768 PS_ VECTOR_CHECK_NULL(params, NAN);1769 PS_ VECTOR_CHECK_EMPTY(params, NAN);1770 PS_ VECTOR_CHECK_TYPE(params, PS_TYPE_F32, NAN);1771 PS_ VECTOR_CHECK_NULL(line, NAN);1772 PS_ VECTOR_CHECK_EMPTY(line, NAN);1773 PS_ VECTOR_CHECK_TYPE(line, PS_TYPE_F32, NAN);1774 PS_ VECTOR_CHECK_NULL(paramMask, NAN);1775 PS_ VECTOR_CHECK_EMPTY(paramMask, NAN);1776 PS_ VECTOR_CHECK_TYPE(paramMask, PS_TYPE_U8, NAN);1777 PS_ PTR_CHECK_NULL(coords, NAN);1778 PS_ PTR_CHECK_NULL(func, NAN);1767 PS_ASSERT_PTR_NON_NULL(min, NAN); 1768 PS_ASSERT_VECTOR_NON_NULL(params, NAN); 1769 PS_ASSERT_VECTOR_NON_EMPTY(params, NAN); 1770 PS_ASSERT_VECTOR_TYPE(params, PS_TYPE_F32, NAN); 1771 PS_ASSERT_VECTOR_NON_NULL(line, NAN); 1772 PS_ASSERT_VECTOR_NON_EMPTY(line, NAN); 1773 PS_ASSERT_VECTOR_TYPE(line, PS_TYPE_F32, NAN); 1774 PS_ASSERT_VECTOR_NON_NULL(paramMask, NAN); 1775 PS_ASSERT_VECTOR_NON_EMPTY(paramMask, NAN); 1776 PS_ASSERT_VECTOR_TYPE(paramMask, PS_TYPE_U8, NAN); 1777 PS_ASSERT_PTR_NON_NULL(coords, NAN); 1778 PS_ASSERT_PTR_NON_NULL(func, NAN); 1779 1779 psVector *bracket; 1780 1780 psF32 a = 0.0; … … 1919 1919 psMinimizePowellFunc func) 1920 1920 { 1921 PS_ PTR_CHECK_NULL(min, NULL);1922 PS_ VECTOR_CHECK_NULL(params, NULL);1923 PS_ VECTOR_CHECK_EMPTY(params, NULL);1924 PS_ VECTOR_CHECK_TYPE(params, PS_TYPE_F32, NULL);1925 PS_ PTR_CHECK_NULL(coords, NULL);1926 PS_ PTR_CHECK_NULL(func, NULL);1921 PS_ASSERT_PTR_NON_NULL(min, NULL); 1922 PS_ASSERT_VECTOR_NON_NULL(params, NULL); 1923 PS_ASSERT_VECTOR_NON_EMPTY(params, NULL); 1924 PS_ASSERT_VECTOR_TYPE(params, PS_TYPE_F32, NULL); 1925 PS_ASSERT_PTR_NON_NULL(coords, NULL); 1926 PS_ASSERT_PTR_NON_NULL(func, NULL); 1927 1927 psS32 numDims = params->n; 1928 1928 PS_VECTOR_GEN_STATIC_RECYCLED(pQP, numDims, PS_TYPE_F32); … … 1957 1957 myParamMask = (psVector *) paramMask; 1958 1958 } 1959 PS_ VECTOR_CHECK_SIZE_EQUAL(params, myParamMask, NULL);1959 PS_ASSERT_VECTORS_SIZE_EQUAL(params, myParamMask, NULL); 1960 1960 1961 1961 // 1: Set v[i] to be the unit vectors for each dimension in params … … 2119 2119 const psArray *coords) 2120 2120 { 2121 PS_ PTR_CHECK_NULL(coords, NULL);2122 PS_ PTR_CHECK_NULL(params, NULL);2121 PS_ASSERT_PTR_NON_NULL(coords, NULL); 2122 PS_ASSERT_PTR_NON_NULL(params, NULL); 2123 2123 2124 2124 psF32 x; … … 2150 2150 psTrace(".psLib.dataManip.myPowellChi2Func", 4, 2151 2151 "---- myPowellChi2Func() begin ----\n"); 2152 PS_ VECTOR_CHECK_NULL(params, NAN);2153 PS_ VECTOR_CHECK_EMPTY(params, NAN);2154 PS_ VECTOR_CHECK_NULL(myValue, NAN);2155 PS_ VECTOR_CHECK_EMPTY(myValue, NAN);2156 PS_ PTR_CHECK_NULL(coords, NAN);2152 PS_ASSERT_VECTOR_NON_NULL(params, NAN); 2153 PS_ASSERT_VECTOR_NON_EMPTY(params, NAN); 2154 PS_ASSERT_VECTOR_NON_NULL(myValue, NAN); 2155 PS_ASSERT_VECTOR_NON_EMPTY(myValue, NAN); 2156 PS_ASSERT_PTR_NON_NULL(coords, NAN); 2157 2157 2158 2158 psF32 chi2 = 0.0; -
trunk/psLib/src/math/psPolynomial.c
r3990 r4029 7 7 * polynomials. It also contains a Gaussian functions. 8 8 * 9 * @version $Revision: 1.10 3$ $Name: not supported by cvs2svn $10 * @date $Date: 2005-05- 19 23:57:37$9 * @version $Revision: 1.104 $ $Name: not supported by cvs2svn $ 10 * @date $Date: 2005-05-25 20:26:55 $ 11 11 * 12 12 * Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii … … 246 246 static psPolynomial1D **createChebyshevPolys(psS32 maxChebyPoly) 247 247 { 248 PS_ INT_CHECK_NON_NEGATIVE(maxChebyPoly, NULL);248 PS_ASSERT_INT_NONNEGATIVE(maxChebyPoly, NULL); 249 249 250 250 psPolynomial1D **chebPolys = NULL; … … 314 314 static psF32 chebPolynomial1DEval(psF32 x, const psPolynomial1D* myPoly) 315 315 { 316 PS_ FLOAT_CHECK_RANGE(x, -1.0, 1.0, 0.0);316 PS_ASSERT_FLOAT_WITHIN_RANGE(x, -1.0, 1.0, 0.0); 317 317 // XXX: Create a macro for this in psConstants.h 318 318 if (myPoly->n < 1) { … … 398 398 const psPolynomial2D* myPoly) 399 399 { 400 PS_ POLY_CHECK_NULL(myPoly, NAN);400 PS_ASSERT_POLY_NON_NULL(myPoly, NAN); 401 401 402 402 psS32 loop_x = 0; … … 422 422 static psF32 chebPolynomial2DEval(psF32 x, psF32 y, const psPolynomial2D* myPoly) 423 423 { 424 PS_ FLOAT_CHECK_RANGE(x, -1.0, 1.0, 0.0);425 PS_ FLOAT_CHECK_RANGE(y, -1.0, 1.0, 0.0);426 PS_ POLY_CHECK_NULL(myPoly, NAN);424 PS_ASSERT_FLOAT_WITHIN_RANGE(x, -1.0, 1.0, 0.0); 425 PS_ASSERT_FLOAT_WITHIN_RANGE(y, -1.0, 1.0, 0.0); 426 PS_ASSERT_POLY_NON_NULL(myPoly, NAN); 427 427 428 428 psS32 loop_x = 0; … … 487 487 static psF32 chebPolynomial3DEval(psF32 x, psF32 y, psF32 z, const psPolynomial3D* myPoly) 488 488 { 489 PS_ FLOAT_CHECK_RANGE(x, -1.0, 1.0, 0.0);490 PS_ FLOAT_CHECK_RANGE(y, -1.0, 1.0, 0.0);491 PS_ FLOAT_CHECK_RANGE(z, -1.0, 1.0, 0.0);489 PS_ASSERT_FLOAT_WITHIN_RANGE(x, -1.0, 1.0, 0.0); 490 PS_ASSERT_FLOAT_WITHIN_RANGE(y, -1.0, 1.0, 0.0); 491 PS_ASSERT_FLOAT_WITHIN_RANGE(z, -1.0, 1.0, 0.0); 492 492 psS32 loop_x = 0; 493 493 psS32 loop_y = 0; … … 565 565 static psF32 chebPolynomial4DEval(psF32 w, psF32 x, psF32 y, psF32 z, const psPolynomial4D* myPoly) 566 566 { 567 PS_ FLOAT_CHECK_RANGE(w, -1.0, 1.0, 0.0);568 PS_ FLOAT_CHECK_RANGE(x, -1.0, 1.0, 0.0);569 PS_ FLOAT_CHECK_RANGE(y, -1.0, 1.0, 0.0);570 PS_ FLOAT_CHECK_RANGE(z, -1.0, 1.0, 0.0);567 PS_ASSERT_FLOAT_WITHIN_RANGE(w, -1.0, 1.0, 0.0); 568 PS_ASSERT_FLOAT_WITHIN_RANGE(x, -1.0, 1.0, 0.0); 569 PS_ASSERT_FLOAT_WITHIN_RANGE(y, -1.0, 1.0, 0.0); 570 PS_ASSERT_FLOAT_WITHIN_RANGE(z, -1.0, 1.0, 0.0); 571 571 psS32 loop_w = 0; 572 572 psS32 loop_x = 0; … … 638 638 static psF64 dChebPolynomial1DEval(psF64 x, const psDPolynomial1D* myPoly) 639 639 { 640 PS_ FLOAT_CHECK_RANGE(x, -1.0, 1.0, 0.0);640 PS_ASSERT_FLOAT_WITHIN_RANGE(x, -1.0, 1.0, 0.0); 641 641 psVector *d; 642 642 psS32 n; … … 697 697 static psF64 dChebPolynomial2DEval(psF64 x, psF64 y, const psDPolynomial2D* myPoly) 698 698 { 699 PS_ FLOAT_CHECK_RANGE(x, -1.0, 1.0, 0.0);700 PS_ FLOAT_CHECK_RANGE(y, -1.0, 1.0, 0.0);699 PS_ASSERT_FLOAT_WITHIN_RANGE(x, -1.0, 1.0, 0.0); 700 PS_ASSERT_FLOAT_WITHIN_RANGE(y, -1.0, 1.0, 0.0); 701 701 psS32 loop_x = 0; 702 702 psS32 loop_y = 0; … … 761 761 static psF64 dChebPolynomial3DEval(psF64 x, psF64 y, psF64 z, const psDPolynomial3D* myPoly) 762 762 { 763 PS_ FLOAT_CHECK_RANGE(x, -1.0, 1.0, 0.0);764 PS_ FLOAT_CHECK_RANGE(y, -1.0, 1.0, 0.0);765 PS_ FLOAT_CHECK_RANGE(z, -1.0, 1.0, 0.0);763 PS_ASSERT_FLOAT_WITHIN_RANGE(x, -1.0, 1.0, 0.0); 764 PS_ASSERT_FLOAT_WITHIN_RANGE(y, -1.0, 1.0, 0.0); 765 PS_ASSERT_FLOAT_WITHIN_RANGE(z, -1.0, 1.0, 0.0); 766 766 psS32 loop_x = 0; 767 767 psS32 loop_y = 0; … … 839 839 static psF64 dChebPolynomial4DEval(psF64 w, psF64 x, psF64 y, psF64 z, const psDPolynomial4D* myPoly) 840 840 { 841 PS_ FLOAT_CHECK_RANGE(w, -1.0, 1.0, 0.0);842 PS_ FLOAT_CHECK_RANGE(x, -1.0, 1.0, 0.0);843 PS_ FLOAT_CHECK_RANGE(y, -1.0, 1.0, 0.0);844 PS_ FLOAT_CHECK_RANGE(z, -1.0, 1.0, 0.0);841 PS_ASSERT_FLOAT_WITHIN_RANGE(w, -1.0, 1.0, 0.0); 842 PS_ASSERT_FLOAT_WITHIN_RANGE(x, -1.0, 1.0, 0.0); 843 PS_ASSERT_FLOAT_WITHIN_RANGE(y, -1.0, 1.0, 0.0); 844 PS_ASSERT_FLOAT_WITHIN_RANGE(z, -1.0, 1.0, 0.0); 845 845 psS32 loop_w = 0; 846 846 psS32 loop_x = 0; … … 973 973 psF32 x) 974 974 { 975 PS_ PTR_CHECK_NULL(domain, NAN)976 PS_ PTR_CHECK_NULL(range, NAN)975 PS_ASSERT_PTR_NON_NULL(domain, NAN) 976 PS_ASSERT_PTR_NON_NULL(range, NAN) 977 977 // XXX: Check valid values for n, order, and x? 978 978 … … 1044 1044 psVector* p_psGaussianDev(psF32 mean, psF32 sigma, psS32 Npts) 1045 1045 { 1046 PS_ INT_CHECK_NON_NEGATIVE(Npts, NULL);1046 PS_ASSERT_INT_NONNEGATIVE(Npts, NULL); 1047 1047 1048 1048 psVector* gauss = NULL; … … 1072 1072 psPolynomialType type) 1073 1073 { 1074 PS_ INT_CHECK_POSITIVE(n, NULL);1074 PS_ASSERT_INT_POSITIVE(n, NULL); 1075 1075 1076 1076 psS32 i = 0; … … 1097 1097 psPolynomialType type) 1098 1098 { 1099 PS_ INT_CHECK_POSITIVE(nX, NULL);1100 PS_ INT_CHECK_POSITIVE(nY, NULL);1099 PS_ASSERT_INT_POSITIVE(nX, NULL); 1100 PS_ASSERT_INT_POSITIVE(nY, NULL); 1101 1101 1102 1102 psS32 x = 0; … … 1133 1133 psPolynomialType type) 1134 1134 { 1135 PS_ INT_CHECK_POSITIVE(nX, NULL);1136 PS_ INT_CHECK_POSITIVE(nY, NULL);1137 PS_ INT_CHECK_POSITIVE(nZ, NULL);1135 PS_ASSERT_INT_POSITIVE(nX, NULL); 1136 PS_ASSERT_INT_POSITIVE(nY, NULL); 1137 PS_ASSERT_INT_POSITIVE(nZ, NULL); 1138 1138 1139 1139 psS32 x = 0; … … 1179 1179 psPolynomialType type) 1180 1180 { 1181 PS_ INT_CHECK_POSITIVE(nW, NULL);1182 PS_ INT_CHECK_POSITIVE(nX, NULL);1183 PS_ INT_CHECK_POSITIVE(nY, NULL);1184 PS_ INT_CHECK_POSITIVE(nZ, NULL);1181 PS_ASSERT_INT_POSITIVE(nW, NULL); 1182 PS_ASSERT_INT_POSITIVE(nX, NULL); 1183 PS_ASSERT_INT_POSITIVE(nY, NULL); 1184 PS_ASSERT_INT_POSITIVE(nZ, NULL); 1185 1185 1186 1186 psS32 w = 0; … … 1234 1234 psF32 psPolynomial1DEval(const psPolynomial1D* myPoly, psF32 x) 1235 1235 { 1236 PS_ POLY_CHECK_NULL(myPoly, NAN);1236 PS_ASSERT_POLY_NON_NULL(myPoly, NAN); 1237 1237 1238 1238 if (myPoly->type == PS_POLYNOMIAL_ORD) { … … 1251 1251 const psVector *x) 1252 1252 { 1253 PS_ POLY_CHECK_NULL(myPoly, NULL);1254 PS_ VECTOR_CHECK_NULL(x, NULL);1255 PS_ VECTOR_CHECK_TYPE(x, PS_TYPE_F32, NULL);1253 PS_ASSERT_POLY_NON_NULL(myPoly, NULL); 1254 PS_ASSERT_VECTOR_NON_NULL(x, NULL); 1255 PS_ASSERT_VECTOR_TYPE(x, PS_TYPE_F32, NULL); 1256 1256 1257 1257 psVector *tmp; … … 1267 1267 psF32 psPolynomial2DEval(const psPolynomial2D* myPoly, psF32 x, psF32 y) 1268 1268 { 1269 PS_ POLY_CHECK_NULL(myPoly, NAN);1269 PS_ASSERT_POLY_NON_NULL(myPoly, NAN); 1270 1270 1271 1271 if (myPoly->type == PS_POLYNOMIAL_ORD) { … … 1286 1286 1287 1287 { 1288 PS_ POLY_CHECK_NULL(myPoly, NULL);1289 PS_ VECTOR_CHECK_NULL(x, NULL);1290 PS_ VECTOR_CHECK_TYPE(x, PS_TYPE_F32, NULL);1291 PS_ VECTOR_CHECK_NULL(y, NULL);1292 PS_ VECTOR_CHECK_TYPE(y, PS_TYPE_F32, NULL);1288 PS_ASSERT_POLY_NON_NULL(myPoly, NULL); 1289 PS_ASSERT_VECTOR_NON_NULL(x, NULL); 1290 PS_ASSERT_VECTOR_TYPE(x, PS_TYPE_F32, NULL); 1291 PS_ASSERT_VECTOR_NON_NULL(y, NULL); 1292 PS_ASSERT_VECTOR_TYPE(y, PS_TYPE_F32, NULL); 1293 1293 1294 1294 psVector *tmp; … … 1314 1314 psF32 psPolynomial3DEval(const psPolynomial3D* myPoly, psF32 x, psF32 y, psF32 z) 1315 1315 { 1316 PS_ POLY_CHECK_NULL(myPoly, NAN);1316 PS_ASSERT_POLY_NON_NULL(myPoly, NAN); 1317 1317 1318 1318 if (myPoly->type == PS_POLYNOMIAL_ORD) { … … 1334 1334 1335 1335 { 1336 PS_ POLY_CHECK_NULL(myPoly, NULL);1337 PS_ VECTOR_CHECK_NULL(x, NULL);1338 PS_ VECTOR_CHECK_TYPE(x, PS_TYPE_F32, NULL);1339 PS_ VECTOR_CHECK_NULL(y, NULL);1340 PS_ VECTOR_CHECK_TYPE(y, PS_TYPE_F32, NULL);1341 PS_ VECTOR_CHECK_NULL(z, NULL);1342 PS_ VECTOR_CHECK_TYPE(z, PS_TYPE_F32, NULL);1336 PS_ASSERT_POLY_NON_NULL(myPoly, NULL); 1337 PS_ASSERT_VECTOR_NON_NULL(x, NULL); 1338 PS_ASSERT_VECTOR_TYPE(x, PS_TYPE_F32, NULL); 1339 PS_ASSERT_VECTOR_NON_NULL(y, NULL); 1340 PS_ASSERT_VECTOR_TYPE(y, PS_TYPE_F32, NULL); 1341 PS_ASSERT_VECTOR_NON_NULL(z, NULL); 1342 PS_ASSERT_VECTOR_TYPE(z, PS_TYPE_F32, NULL); 1343 1343 1344 1344 psVector *tmp; … … 1370 1370 psF32 psPolynomial4DEval(const psPolynomial4D* myPoly, psF32 w, psF32 x, psF32 y, psF32 z) 1371 1371 { 1372 PS_ POLY_CHECK_NULL(myPoly, NAN);1372 PS_ASSERT_POLY_NON_NULL(myPoly, NAN); 1373 1373 1374 1374 if (myPoly->type == PS_POLYNOMIAL_ORD) { … … 1390 1390 const psVector *z) 1391 1391 { 1392 PS_ POLY_CHECK_NULL(myPoly, NULL);1393 PS_ VECTOR_CHECK_NULL(w, NULL);1394 PS_ VECTOR_CHECK_TYPE(w, PS_TYPE_F32, NULL);1395 PS_ VECTOR_CHECK_NULL(x, NULL);1396 PS_ VECTOR_CHECK_TYPE(x, PS_TYPE_F32, NULL);1397 PS_ VECTOR_CHECK_NULL(y, NULL);1398 PS_ VECTOR_CHECK_TYPE(y, PS_TYPE_F32, NULL);1399 PS_ VECTOR_CHECK_NULL(z, NULL);1400 PS_ VECTOR_CHECK_TYPE(z, PS_TYPE_F32, NULL);1392 PS_ASSERT_POLY_NON_NULL(myPoly, NULL); 1393 PS_ASSERT_VECTOR_NON_NULL(w, NULL); 1394 PS_ASSERT_VECTOR_TYPE(w, PS_TYPE_F32, NULL); 1395 PS_ASSERT_VECTOR_NON_NULL(x, NULL); 1396 PS_ASSERT_VECTOR_TYPE(x, PS_TYPE_F32, NULL); 1397 PS_ASSERT_VECTOR_NON_NULL(y, NULL); 1398 PS_ASSERT_VECTOR_TYPE(y, PS_TYPE_F32, NULL); 1399 PS_ASSERT_VECTOR_NON_NULL(z, NULL); 1400 PS_ASSERT_VECTOR_TYPE(z, PS_TYPE_F32, NULL); 1401 1401 1402 1402 psVector *tmp; … … 1434 1434 psPolynomialType type) 1435 1435 { 1436 PS_ INT_CHECK_POSITIVE(n, NULL);1436 PS_ASSERT_INT_POSITIVE(n, NULL); 1437 1437 1438 1438 psS32 i = 0; … … 1459 1459 psPolynomialType type) 1460 1460 { 1461 PS_ INT_CHECK_POSITIVE(nX, NULL);1462 PS_ INT_CHECK_POSITIVE(nY, NULL);1461 PS_ASSERT_INT_POSITIVE(nX, NULL); 1462 PS_ASSERT_INT_POSITIVE(nY, NULL); 1463 1463 1464 1464 psS32 x = 0; … … 1495 1495 psPolynomialType type) 1496 1496 { 1497 PS_ INT_CHECK_POSITIVE(nX, NULL);1498 PS_ INT_CHECK_POSITIVE(nY, NULL);1499 PS_ INT_CHECK_POSITIVE(nZ, NULL);1497 PS_ASSERT_INT_POSITIVE(nX, NULL); 1498 PS_ASSERT_INT_POSITIVE(nY, NULL); 1499 PS_ASSERT_INT_POSITIVE(nZ, NULL); 1500 1500 1501 1501 psS32 x = 0; … … 1541 1541 psPolynomialType type) 1542 1542 { 1543 PS_ INT_CHECK_POSITIVE(nW, NULL);1544 PS_ INT_CHECK_POSITIVE(nX, NULL);1545 PS_ INT_CHECK_POSITIVE(nY, NULL);1546 PS_ INT_CHECK_POSITIVE(nZ, NULL);1543 PS_ASSERT_INT_POSITIVE(nW, NULL); 1544 PS_ASSERT_INT_POSITIVE(nX, NULL); 1545 PS_ASSERT_INT_POSITIVE(nY, NULL); 1546 PS_ASSERT_INT_POSITIVE(nZ, NULL); 1547 1547 1548 1548 psS32 w = 0; … … 1597 1597 psF64 psDPolynomial1DEval(const psDPolynomial1D* myPoly, psF64 x) 1598 1598 { 1599 PS_ POLY_CHECK_NULL(myPoly, NAN);1599 PS_ASSERT_POLY_NON_NULL(myPoly, NAN); 1600 1600 1601 1601 if (myPoly->type == PS_POLYNOMIAL_ORD) { … … 1615 1615 1616 1616 { 1617 PS_ POLY_CHECK_NULL(myPoly, NULL);1618 PS_ VECTOR_CHECK_NULL(x, NULL);1619 PS_ VECTOR_CHECK_TYPE(x, PS_TYPE_F64, NULL);1617 PS_ASSERT_POLY_NON_NULL(myPoly, NULL); 1618 PS_ASSERT_VECTOR_NON_NULL(x, NULL); 1619 PS_ASSERT_VECTOR_TYPE(x, PS_TYPE_F64, NULL); 1620 1620 1621 1621 psVector *tmp; … … 1635 1635 psF64 y) 1636 1636 { 1637 PS_ POLY_CHECK_NULL(myPoly, NAN);1637 PS_ASSERT_POLY_NON_NULL(myPoly, NAN); 1638 1638 1639 1639 if (myPoly->type == PS_POLYNOMIAL_ORD) { … … 1653 1653 const psVector *y) 1654 1654 { 1655 PS_ POLY_CHECK_NULL(myPoly, NULL);1656 PS_ VECTOR_CHECK_NULL(x, NULL);1657 PS_ VECTOR_CHECK_TYPE(x, PS_TYPE_F64, NULL);1658 PS_ VECTOR_CHECK_NULL(y, NULL);1659 PS_ VECTOR_CHECK_TYPE(y, PS_TYPE_F64, NULL);1655 PS_ASSERT_POLY_NON_NULL(myPoly, NULL); 1656 PS_ASSERT_VECTOR_NON_NULL(x, NULL); 1657 PS_ASSERT_VECTOR_TYPE(x, PS_TYPE_F64, NULL); 1658 PS_ASSERT_VECTOR_NON_NULL(y, NULL); 1659 PS_ASSERT_VECTOR_TYPE(y, PS_TYPE_F64, NULL); 1660 1660 1661 1661 psVector *tmp; … … 1685 1685 psF64 z) 1686 1686 { 1687 PS_ POLY_CHECK_NULL(myPoly, NAN);1687 PS_ASSERT_POLY_NON_NULL(myPoly, NAN); 1688 1688 1689 1689 if (myPoly->type == PS_POLYNOMIAL_ORD) { … … 1705 1705 1706 1706 { 1707 PS_ POLY_CHECK_NULL(myPoly, NULL);1708 PS_ VECTOR_CHECK_NULL(x, NULL);1709 PS_ VECTOR_CHECK_TYPE(x, PS_TYPE_F64, NULL);1710 PS_ VECTOR_CHECK_NULL(y, NULL);1711 PS_ VECTOR_CHECK_TYPE(y, PS_TYPE_F64, NULL);1712 PS_ VECTOR_CHECK_NULL(z, NULL);1713 PS_ VECTOR_CHECK_TYPE(z, PS_TYPE_F64, NULL);1707 PS_ASSERT_POLY_NON_NULL(myPoly, NULL); 1708 PS_ASSERT_VECTOR_NON_NULL(x, NULL); 1709 PS_ASSERT_VECTOR_TYPE(x, PS_TYPE_F64, NULL); 1710 PS_ASSERT_VECTOR_NON_NULL(y, NULL); 1711 PS_ASSERT_VECTOR_TYPE(y, PS_TYPE_F64, NULL); 1712 PS_ASSERT_VECTOR_NON_NULL(z, NULL); 1713 PS_ASSERT_VECTOR_TYPE(z, PS_TYPE_F64, NULL); 1714 1714 1715 1715 psVector *tmp; … … 1745 1745 psF64 z) 1746 1746 { 1747 PS_ POLY_CHECK_NULL(myPoly, NAN);1747 PS_ASSERT_POLY_NON_NULL(myPoly, NAN); 1748 1748 1749 1749 if (myPoly->type == PS_POLYNOMIAL_ORD) { … … 1765 1765 const psVector *z) 1766 1766 { 1767 PS_ POLY_CHECK_NULL(myPoly, NULL);1768 PS_ VECTOR_CHECK_NULL(w, NULL);1769 PS_ VECTOR_CHECK_TYPE(w, PS_TYPE_F64, NULL);1770 PS_ VECTOR_CHECK_NULL(x, NULL);1771 PS_ VECTOR_CHECK_TYPE(x, PS_TYPE_F64, NULL);1772 PS_ VECTOR_CHECK_NULL(y, NULL);1773 PS_ VECTOR_CHECK_TYPE(y, PS_TYPE_F64, NULL);1774 PS_ VECTOR_CHECK_NULL(z, NULL);1775 PS_ VECTOR_CHECK_TYPE(z, PS_TYPE_F64, NULL);1767 PS_ASSERT_POLY_NON_NULL(myPoly, NULL); 1768 PS_ASSERT_VECTOR_NON_NULL(w, NULL); 1769 PS_ASSERT_VECTOR_TYPE(w, PS_TYPE_F64, NULL); 1770 PS_ASSERT_VECTOR_NON_NULL(x, NULL); 1771 PS_ASSERT_VECTOR_TYPE(x, PS_TYPE_F64, NULL); 1772 PS_ASSERT_VECTOR_NON_NULL(y, NULL); 1773 PS_ASSERT_VECTOR_TYPE(y, PS_TYPE_F64, NULL); 1774 PS_ASSERT_VECTOR_NON_NULL(z, NULL); 1775 PS_ASSERT_VECTOR_TYPE(z, PS_TYPE_F64, NULL); 1776 1776 1777 1777 psVector *tmp; … … 1828 1828 psF32 max) 1829 1829 { 1830 PS_ INT_CHECK_NON_NEGATIVE(numSplines, NULL);1831 PS_ INT_CHECK_NON_NEGATIVE(order, NULL);1832 PS_ FLOAT_CHECK_NON_EQUAL(max, min, NULL);1830 PS_ASSERT_INT_NONNEGATIVE(numSplines, NULL); 1831 PS_ASSERT_INT_NONNEGATIVE(order, NULL); 1832 PS_ASSERT_FLOAT_NON_EQUAL(max, min, NULL); 1833 1833 1834 1834 psSpline1D *tmp = NULL; … … 1870 1870 psS32 order) 1871 1871 { 1872 PS_ VECTOR_CHECK_NULL(bounds, NULL);1873 PS_ VECTOR_CHECK_EMPTY(bounds, NULL);1874 PS_ INT_CHECK_NON_NEGATIVE(order, NULL);1872 PS_ASSERT_VECTOR_NON_NULL(bounds, NULL); 1873 PS_ASSERT_VECTOR_NON_EMPTY(bounds, NULL); 1874 PS_ASSERT_INT_NONNEGATIVE(order, NULL); 1875 1875 1876 1876 psSpline1D *tmp = NULL; … … 1983 1983 psScalar *x) 1984 1984 { 1985 PS_ VECTOR_CHECK_NULL(bins, -4);1986 PS_ VECTOR_CHECK_EMPTY(bins, -4);1987 PS_ PTR_CHECK_NULL(x, -6);1988 PS_ PTR_CHECK_TYPE_EQUAL(x, bins, -3);1985 PS_ASSERT_VECTOR_NON_NULL(bins, -4); 1986 PS_ASSERT_VECTOR_NON_EMPTY(bins, -4); 1987 PS_ASSERT_PTR_NON_NULL(x, -6); 1988 PS_ASSERT_PTR_TYPE_EQUAL(x, bins, -3); 1989 1989 char* strType; 1990 1990 … … 2049 2049 psScalar *x) 2050 2050 { 2051 PS_ VECTOR_CHECK_NULL(domain, NULL);2052 PS_ VECTOR_CHECK_NULL(range, NULL);2053 PS_ PTR_CHECK_NULL(x, NULL);2054 PS_ INT_CHECK_NON_NEGATIVE(order, NULL);2055 PS_ VECTOR_CHECK_SIZE_EQUAL(domain, range, NULL);2056 PS_ PTR_CHECK_TYPE_EQUAL(domain, range, NULL);2057 PS_ PTR_CHECK_TYPE_EQUAL(domain, x, NULL);2051 PS_ASSERT_VECTOR_NON_NULL(domain, NULL); 2052 PS_ASSERT_VECTOR_NON_NULL(range, NULL); 2053 PS_ASSERT_PTR_NON_NULL(x, NULL); 2054 PS_ASSERT_INT_NONNEGATIVE(order, NULL); 2055 PS_ASSERT_VECTORS_SIZE_EQUAL(domain, range, NULL); 2056 PS_ASSERT_PTR_TYPE_EQUAL(domain, range, NULL); 2057 PS_ASSERT_PTR_TYPE_EQUAL(domain, x, NULL); 2058 2058 2059 2059 psVector *range32 = NULL; … … 2131 2131 ) 2132 2132 { 2133 PS_ PTR_CHECK_NULL(spline, NAN);2134 PS_ INT_CHECK_NON_NEGATIVE(spline->n, NAN);2135 PS_ VECTOR_CHECK_TYPE(spline->knots, PS_TYPE_F32, NAN);2133 PS_ASSERT_PTR_NON_NULL(spline, NAN); 2134 PS_ASSERT_INT_NONNEGATIVE(spline->n, NAN); 2135 PS_ASSERT_VECTOR_TYPE(spline->knots, PS_TYPE_F32, NAN); 2136 2136 2137 2137 psS32 binNum; … … 2167 2167 ) 2168 2168 { 2169 PS_ PTR_CHECK_NULL(spline, NULL);2170 PS_ VECTOR_CHECK_NULL(x, NULL);2171 PS_ VECTOR_CHECK_TYPE_F32_OR_F64(x, NULL);2172 PS_ VECTOR_CHECK_TYPE(spline->knots, PS_TYPE_F32, NULL);2169 PS_ASSERT_PTR_NON_NULL(spline, NULL); 2170 PS_ASSERT_VECTOR_NON_NULL(x, NULL); 2171 PS_ASSERT_VECTOR_TYPE_F32_OR_F64(x, NULL); 2172 PS_ASSERT_VECTOR_TYPE(spline->knots, PS_TYPE_F32, NULL); 2173 2173 2174 2174 psS32 i; -
trunk/psLib/src/math/psSpline.c
r3990 r4029 7 7 * polynomials. It also contains a Gaussian functions. 8 8 * 9 * @version $Revision: 1.10 3$ $Name: not supported by cvs2svn $10 * @date $Date: 2005-05- 19 23:57:37$9 * @version $Revision: 1.104 $ $Name: not supported by cvs2svn $ 10 * @date $Date: 2005-05-25 20:26:55 $ 11 11 * 12 12 * Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii … … 246 246 static psPolynomial1D **createChebyshevPolys(psS32 maxChebyPoly) 247 247 { 248 PS_ INT_CHECK_NON_NEGATIVE(maxChebyPoly, NULL);248 PS_ASSERT_INT_NONNEGATIVE(maxChebyPoly, NULL); 249 249 250 250 psPolynomial1D **chebPolys = NULL; … … 314 314 static psF32 chebPolynomial1DEval(psF32 x, const psPolynomial1D* myPoly) 315 315 { 316 PS_ FLOAT_CHECK_RANGE(x, -1.0, 1.0, 0.0);316 PS_ASSERT_FLOAT_WITHIN_RANGE(x, -1.0, 1.0, 0.0); 317 317 // XXX: Create a macro for this in psConstants.h 318 318 if (myPoly->n < 1) { … … 398 398 const psPolynomial2D* myPoly) 399 399 { 400 PS_ POLY_CHECK_NULL(myPoly, NAN);400 PS_ASSERT_POLY_NON_NULL(myPoly, NAN); 401 401 402 402 psS32 loop_x = 0; … … 422 422 static psF32 chebPolynomial2DEval(psF32 x, psF32 y, const psPolynomial2D* myPoly) 423 423 { 424 PS_ FLOAT_CHECK_RANGE(x, -1.0, 1.0, 0.0);425 PS_ FLOAT_CHECK_RANGE(y, -1.0, 1.0, 0.0);426 PS_ POLY_CHECK_NULL(myPoly, NAN);424 PS_ASSERT_FLOAT_WITHIN_RANGE(x, -1.0, 1.0, 0.0); 425 PS_ASSERT_FLOAT_WITHIN_RANGE(y, -1.0, 1.0, 0.0); 426 PS_ASSERT_POLY_NON_NULL(myPoly, NAN); 427 427 428 428 psS32 loop_x = 0; … … 487 487 static psF32 chebPolynomial3DEval(psF32 x, psF32 y, psF32 z, const psPolynomial3D* myPoly) 488 488 { 489 PS_ FLOAT_CHECK_RANGE(x, -1.0, 1.0, 0.0);490 PS_ FLOAT_CHECK_RANGE(y, -1.0, 1.0, 0.0);491 PS_ FLOAT_CHECK_RANGE(z, -1.0, 1.0, 0.0);489 PS_ASSERT_FLOAT_WITHIN_RANGE(x, -1.0, 1.0, 0.0); 490 PS_ASSERT_FLOAT_WITHIN_RANGE(y, -1.0, 1.0, 0.0); 491 PS_ASSERT_FLOAT_WITHIN_RANGE(z, -1.0, 1.0, 0.0); 492 492 psS32 loop_x = 0; 493 493 psS32 loop_y = 0; … … 565 565 static psF32 chebPolynomial4DEval(psF32 w, psF32 x, psF32 y, psF32 z, const psPolynomial4D* myPoly) 566 566 { 567 PS_ FLOAT_CHECK_RANGE(w, -1.0, 1.0, 0.0);568 PS_ FLOAT_CHECK_RANGE(x, -1.0, 1.0, 0.0);569 PS_ FLOAT_CHECK_RANGE(y, -1.0, 1.0, 0.0);570 PS_ FLOAT_CHECK_RANGE(z, -1.0, 1.0, 0.0);567 PS_ASSERT_FLOAT_WITHIN_RANGE(w, -1.0, 1.0, 0.0); 568 PS_ASSERT_FLOAT_WITHIN_RANGE(x, -1.0, 1.0, 0.0); 569 PS_ASSERT_FLOAT_WITHIN_RANGE(y, -1.0, 1.0, 0.0); 570 PS_ASSERT_FLOAT_WITHIN_RANGE(z, -1.0, 1.0, 0.0); 571 571 psS32 loop_w = 0; 572 572 psS32 loop_x = 0; … … 638 638 static psF64 dChebPolynomial1DEval(psF64 x, const psDPolynomial1D* myPoly) 639 639 { 640 PS_ FLOAT_CHECK_RANGE(x, -1.0, 1.0, 0.0);640 PS_ASSERT_FLOAT_WITHIN_RANGE(x, -1.0, 1.0, 0.0); 641 641 psVector *d; 642 642 psS32 n; … … 697 697 static psF64 dChebPolynomial2DEval(psF64 x, psF64 y, const psDPolynomial2D* myPoly) 698 698 { 699 PS_ FLOAT_CHECK_RANGE(x, -1.0, 1.0, 0.0);700 PS_ FLOAT_CHECK_RANGE(y, -1.0, 1.0, 0.0);699 PS_ASSERT_FLOAT_WITHIN_RANGE(x, -1.0, 1.0, 0.0); 700 PS_ASSERT_FLOAT_WITHIN_RANGE(y, -1.0, 1.0, 0.0); 701 701 psS32 loop_x = 0; 702 702 psS32 loop_y = 0; … … 761 761 static psF64 dChebPolynomial3DEval(psF64 x, psF64 y, psF64 z, const psDPolynomial3D* myPoly) 762 762 { 763 PS_ FLOAT_CHECK_RANGE(x, -1.0, 1.0, 0.0);764 PS_ FLOAT_CHECK_RANGE(y, -1.0, 1.0, 0.0);765 PS_ FLOAT_CHECK_RANGE(z, -1.0, 1.0, 0.0);763 PS_ASSERT_FLOAT_WITHIN_RANGE(x, -1.0, 1.0, 0.0); 764 PS_ASSERT_FLOAT_WITHIN_RANGE(y, -1.0, 1.0, 0.0); 765 PS_ASSERT_FLOAT_WITHIN_RANGE(z, -1.0, 1.0, 0.0); 766 766 psS32 loop_x = 0; 767 767 psS32 loop_y = 0; … … 839 839 static psF64 dChebPolynomial4DEval(psF64 w, psF64 x, psF64 y, psF64 z, const psDPolynomial4D* myPoly) 840 840 { 841 PS_ FLOAT_CHECK_RANGE(w, -1.0, 1.0, 0.0);842 PS_ FLOAT_CHECK_RANGE(x, -1.0, 1.0, 0.0);843 PS_ FLOAT_CHECK_RANGE(y, -1.0, 1.0, 0.0);844 PS_ FLOAT_CHECK_RANGE(z, -1.0, 1.0, 0.0);841 PS_ASSERT_FLOAT_WITHIN_RANGE(w, -1.0, 1.0, 0.0); 842 PS_ASSERT_FLOAT_WITHIN_RANGE(x, -1.0, 1.0, 0.0); 843 PS_ASSERT_FLOAT_WITHIN_RANGE(y, -1.0, 1.0, 0.0); 844 PS_ASSERT_FLOAT_WITHIN_RANGE(z, -1.0, 1.0, 0.0); 845 845 psS32 loop_w = 0; 846 846 psS32 loop_x = 0; … … 973 973 psF32 x) 974 974 { 975 PS_ PTR_CHECK_NULL(domain, NAN)976 PS_ PTR_CHECK_NULL(range, NAN)975 PS_ASSERT_PTR_NON_NULL(domain, NAN) 976 PS_ASSERT_PTR_NON_NULL(range, NAN) 977 977 // XXX: Check valid values for n, order, and x? 978 978 … … 1044 1044 psVector* p_psGaussianDev(psF32 mean, psF32 sigma, psS32 Npts) 1045 1045 { 1046 PS_ INT_CHECK_NON_NEGATIVE(Npts, NULL);1046 PS_ASSERT_INT_NONNEGATIVE(Npts, NULL); 1047 1047 1048 1048 psVector* gauss = NULL; … … 1072 1072 psPolynomialType type) 1073 1073 { 1074 PS_ INT_CHECK_POSITIVE(n, NULL);1074 PS_ASSERT_INT_POSITIVE(n, NULL); 1075 1075 1076 1076 psS32 i = 0; … … 1097 1097 psPolynomialType type) 1098 1098 { 1099 PS_ INT_CHECK_POSITIVE(nX, NULL);1100 PS_ INT_CHECK_POSITIVE(nY, NULL);1099 PS_ASSERT_INT_POSITIVE(nX, NULL); 1100 PS_ASSERT_INT_POSITIVE(nY, NULL); 1101 1101 1102 1102 psS32 x = 0; … … 1133 1133 psPolynomialType type) 1134 1134 { 1135 PS_ INT_CHECK_POSITIVE(nX, NULL);1136 PS_ INT_CHECK_POSITIVE(nY, NULL);1137 PS_ INT_CHECK_POSITIVE(nZ, NULL);1135 PS_ASSERT_INT_POSITIVE(nX, NULL); 1136 PS_ASSERT_INT_POSITIVE(nY, NULL); 1137 PS_ASSERT_INT_POSITIVE(nZ, NULL); 1138 1138 1139 1139 psS32 x = 0; … … 1179 1179 psPolynomialType type) 1180 1180 { 1181 PS_ INT_CHECK_POSITIVE(nW, NULL);1182 PS_ INT_CHECK_POSITIVE(nX, NULL);1183 PS_ INT_CHECK_POSITIVE(nY, NULL);1184 PS_ INT_CHECK_POSITIVE(nZ, NULL);1181 PS_ASSERT_INT_POSITIVE(nW, NULL); 1182 PS_ASSERT_INT_POSITIVE(nX, NULL); 1183 PS_ASSERT_INT_POSITIVE(nY, NULL); 1184 PS_ASSERT_INT_POSITIVE(nZ, NULL); 1185 1185 1186 1186 psS32 w = 0; … … 1234 1234 psF32 psPolynomial1DEval(const psPolynomial1D* myPoly, psF32 x) 1235 1235 { 1236 PS_ POLY_CHECK_NULL(myPoly, NAN);1236 PS_ASSERT_POLY_NON_NULL(myPoly, NAN); 1237 1237 1238 1238 if (myPoly->type == PS_POLYNOMIAL_ORD) { … … 1251 1251 const psVector *x) 1252 1252 { 1253 PS_ POLY_CHECK_NULL(myPoly, NULL);1254 PS_ VECTOR_CHECK_NULL(x, NULL);1255 PS_ VECTOR_CHECK_TYPE(x, PS_TYPE_F32, NULL);1253 PS_ASSERT_POLY_NON_NULL(myPoly, NULL); 1254 PS_ASSERT_VECTOR_NON_NULL(x, NULL); 1255 PS_ASSERT_VECTOR_TYPE(x, PS_TYPE_F32, NULL); 1256 1256 1257 1257 psVector *tmp; … … 1267 1267 psF32 psPolynomial2DEval(const psPolynomial2D* myPoly, psF32 x, psF32 y) 1268 1268 { 1269 PS_ POLY_CHECK_NULL(myPoly, NAN);1269 PS_ASSERT_POLY_NON_NULL(myPoly, NAN); 1270 1270 1271 1271 if (myPoly->type == PS_POLYNOMIAL_ORD) { … … 1286 1286 1287 1287 { 1288 PS_ POLY_CHECK_NULL(myPoly, NULL);1289 PS_ VECTOR_CHECK_NULL(x, NULL);1290 PS_ VECTOR_CHECK_TYPE(x, PS_TYPE_F32, NULL);1291 PS_ VECTOR_CHECK_NULL(y, NULL);1292 PS_ VECTOR_CHECK_TYPE(y, PS_TYPE_F32, NULL);1288 PS_ASSERT_POLY_NON_NULL(myPoly, NULL); 1289 PS_ASSERT_VECTOR_NON_NULL(x, NULL); 1290 PS_ASSERT_VECTOR_TYPE(x, PS_TYPE_F32, NULL); 1291 PS_ASSERT_VECTOR_NON_NULL(y, NULL); 1292 PS_ASSERT_VECTOR_TYPE(y, PS_TYPE_F32, NULL); 1293 1293 1294 1294 psVector *tmp; … … 1314 1314 psF32 psPolynomial3DEval(const psPolynomial3D* myPoly, psF32 x, psF32 y, psF32 z) 1315 1315 { 1316 PS_ POLY_CHECK_NULL(myPoly, NAN);1316 PS_ASSERT_POLY_NON_NULL(myPoly, NAN); 1317 1317 1318 1318 if (myPoly->type == PS_POLYNOMIAL_ORD) { … … 1334 1334 1335 1335 { 1336 PS_ POLY_CHECK_NULL(myPoly, NULL);1337 PS_ VECTOR_CHECK_NULL(x, NULL);1338 PS_ VECTOR_CHECK_TYPE(x, PS_TYPE_F32, NULL);1339 PS_ VECTOR_CHECK_NULL(y, NULL);1340 PS_ VECTOR_CHECK_TYPE(y, PS_TYPE_F32, NULL);1341 PS_ VECTOR_CHECK_NULL(z, NULL);1342 PS_ VECTOR_CHECK_TYPE(z, PS_TYPE_F32, NULL);1336 PS_ASSERT_POLY_NON_NULL(myPoly, NULL); 1337 PS_ASSERT_VECTOR_NON_NULL(x, NULL); 1338 PS_ASSERT_VECTOR_TYPE(x, PS_TYPE_F32, NULL); 1339 PS_ASSERT_VECTOR_NON_NULL(y, NULL); 1340 PS_ASSERT_VECTOR_TYPE(y, PS_TYPE_F32, NULL); 1341 PS_ASSERT_VECTOR_NON_NULL(z, NULL); 1342 PS_ASSERT_VECTOR_TYPE(z, PS_TYPE_F32, NULL); 1343 1343 1344 1344 psVector *tmp; … … 1370 1370 psF32 psPolynomial4DEval(const psPolynomial4D* myPoly, psF32 w, psF32 x, psF32 y, psF32 z) 1371 1371 { 1372 PS_ POLY_CHECK_NULL(myPoly, NAN);1372 PS_ASSERT_POLY_NON_NULL(myPoly, NAN); 1373 1373 1374 1374 if (myPoly->type == PS_POLYNOMIAL_ORD) { … … 1390 1390 const psVector *z) 1391 1391 { 1392 PS_ POLY_CHECK_NULL(myPoly, NULL);1393 PS_ VECTOR_CHECK_NULL(w, NULL);1394 PS_ VECTOR_CHECK_TYPE(w, PS_TYPE_F32, NULL);1395 PS_ VECTOR_CHECK_NULL(x, NULL);1396 PS_ VECTOR_CHECK_TYPE(x, PS_TYPE_F32, NULL);1397 PS_ VECTOR_CHECK_NULL(y, NULL);1398 PS_ VECTOR_CHECK_TYPE(y, PS_TYPE_F32, NULL);1399 PS_ VECTOR_CHECK_NULL(z, NULL);1400 PS_ VECTOR_CHECK_TYPE(z, PS_TYPE_F32, NULL);1392 PS_ASSERT_POLY_NON_NULL(myPoly, NULL); 1393 PS_ASSERT_VECTOR_NON_NULL(w, NULL); 1394 PS_ASSERT_VECTOR_TYPE(w, PS_TYPE_F32, NULL); 1395 PS_ASSERT_VECTOR_NON_NULL(x, NULL); 1396 PS_ASSERT_VECTOR_TYPE(x, PS_TYPE_F32, NULL); 1397 PS_ASSERT_VECTOR_NON_NULL(y, NULL); 1398 PS_ASSERT_VECTOR_TYPE(y, PS_TYPE_F32, NULL); 1399 PS_ASSERT_VECTOR_NON_NULL(z, NULL); 1400 PS_ASSERT_VECTOR_TYPE(z, PS_TYPE_F32, NULL); 1401 1401 1402 1402 psVector *tmp; … … 1434 1434 psPolynomialType type) 1435 1435 { 1436 PS_ INT_CHECK_POSITIVE(n, NULL);1436 PS_ASSERT_INT_POSITIVE(n, NULL); 1437 1437 1438 1438 psS32 i = 0; … … 1459 1459 psPolynomialType type) 1460 1460 { 1461 PS_ INT_CHECK_POSITIVE(nX, NULL);1462 PS_ INT_CHECK_POSITIVE(nY, NULL);1461 PS_ASSERT_INT_POSITIVE(nX, NULL); 1462 PS_ASSERT_INT_POSITIVE(nY, NULL); 1463 1463 1464 1464 psS32 x = 0; … … 1495 1495 psPolynomialType type) 1496 1496 { 1497 PS_ INT_CHECK_POSITIVE(nX, NULL);1498 PS_ INT_CHECK_POSITIVE(nY, NULL);1499 PS_ INT_CHECK_POSITIVE(nZ, NULL);1497 PS_ASSERT_INT_POSITIVE(nX, NULL); 1498 PS_ASSERT_INT_POSITIVE(nY, NULL); 1499 PS_ASSERT_INT_POSITIVE(nZ, NULL); 1500 1500 1501 1501 psS32 x = 0; … … 1541 1541 psPolynomialType type) 1542 1542 { 1543 PS_ INT_CHECK_POSITIVE(nW, NULL);1544 PS_ INT_CHECK_POSITIVE(nX, NULL);1545 PS_ INT_CHECK_POSITIVE(nY, NULL);1546 PS_ INT_CHECK_POSITIVE(nZ, NULL);1543 PS_ASSERT_INT_POSITIVE(nW, NULL); 1544 PS_ASSERT_INT_POSITIVE(nX, NULL); 1545 PS_ASSERT_INT_POSITIVE(nY, NULL); 1546 PS_ASSERT_INT_POSITIVE(nZ, NULL); 1547 1547 1548 1548 psS32 w = 0; … … 1597 1597 psF64 psDPolynomial1DEval(const psDPolynomial1D* myPoly, psF64 x) 1598 1598 { 1599 PS_ POLY_CHECK_NULL(myPoly, NAN);1599 PS_ASSERT_POLY_NON_NULL(myPoly, NAN); 1600 1600 1601 1601 if (myPoly->type == PS_POLYNOMIAL_ORD) { … … 1615 1615 1616 1616 { 1617 PS_ POLY_CHECK_NULL(myPoly, NULL);1618 PS_ VECTOR_CHECK_NULL(x, NULL);1619 PS_ VECTOR_CHECK_TYPE(x, PS_TYPE_F64, NULL);1617 PS_ASSERT_POLY_NON_NULL(myPoly, NULL); 1618 PS_ASSERT_VECTOR_NON_NULL(x, NULL); 1619 PS_ASSERT_VECTOR_TYPE(x, PS_TYPE_F64, NULL); 1620 1620 1621 1621 psVector *tmp; … … 1635 1635 psF64 y) 1636 1636 { 1637 PS_ POLY_CHECK_NULL(myPoly, NAN);1637 PS_ASSERT_POLY_NON_NULL(myPoly, NAN); 1638 1638 1639 1639 if (myPoly->type == PS_POLYNOMIAL_ORD) { … … 1653 1653 const psVector *y) 1654 1654 { 1655 PS_ POLY_CHECK_NULL(myPoly, NULL);1656 PS_ VECTOR_CHECK_NULL(x, NULL);1657 PS_ VECTOR_CHECK_TYPE(x, PS_TYPE_F64, NULL);1658 PS_ VECTOR_CHECK_NULL(y, NULL);1659 PS_ VECTOR_CHECK_TYPE(y, PS_TYPE_F64, NULL);1655 PS_ASSERT_POLY_NON_NULL(myPoly, NULL); 1656 PS_ASSERT_VECTOR_NON_NULL(x, NULL); 1657 PS_ASSERT_VECTOR_TYPE(x, PS_TYPE_F64, NULL); 1658 PS_ASSERT_VECTOR_NON_NULL(y, NULL); 1659 PS_ASSERT_VECTOR_TYPE(y, PS_TYPE_F64, NULL); 1660 1660 1661 1661 psVector *tmp; … … 1685 1685 psF64 z) 1686 1686 { 1687 PS_ POLY_CHECK_NULL(myPoly, NAN);1687 PS_ASSERT_POLY_NON_NULL(myPoly, NAN); 1688 1688 1689 1689 if (myPoly->type == PS_POLYNOMIAL_ORD) { … … 1705 1705 1706 1706 { 1707 PS_ POLY_CHECK_NULL(myPoly, NULL);1708 PS_ VECTOR_CHECK_NULL(x, NULL);1709 PS_ VECTOR_CHECK_TYPE(x, PS_TYPE_F64, NULL);1710 PS_ VECTOR_CHECK_NULL(y, NULL);1711 PS_ VECTOR_CHECK_TYPE(y, PS_TYPE_F64, NULL);1712 PS_ VECTOR_CHECK_NULL(z, NULL);1713 PS_ VECTOR_CHECK_TYPE(z, PS_TYPE_F64, NULL);1707 PS_ASSERT_POLY_NON_NULL(myPoly, NULL); 1708 PS_ASSERT_VECTOR_NON_NULL(x, NULL); 1709 PS_ASSERT_VECTOR_TYPE(x, PS_TYPE_F64, NULL); 1710 PS_ASSERT_VECTOR_NON_NULL(y, NULL); 1711 PS_ASSERT_VECTOR_TYPE(y, PS_TYPE_F64, NULL); 1712 PS_ASSERT_VECTOR_NON_NULL(z, NULL); 1713 PS_ASSERT_VECTOR_TYPE(z, PS_TYPE_F64, NULL); 1714 1714 1715 1715 psVector *tmp; … … 1745 1745 psF64 z) 1746 1746 { 1747 PS_ POLY_CHECK_NULL(myPoly, NAN);1747 PS_ASSERT_POLY_NON_NULL(myPoly, NAN); 1748 1748 1749 1749 if (myPoly->type == PS_POLYNOMIAL_ORD) { … … 1765 1765 const psVector *z) 1766 1766 { 1767 PS_ POLY_CHECK_NULL(myPoly, NULL);1768 PS_ VECTOR_CHECK_NULL(w, NULL);1769 PS_ VECTOR_CHECK_TYPE(w, PS_TYPE_F64, NULL);1770 PS_ VECTOR_CHECK_NULL(x, NULL);1771 PS_ VECTOR_CHECK_TYPE(x, PS_TYPE_F64, NULL);1772 PS_ VECTOR_CHECK_NULL(y, NULL);1773 PS_ VECTOR_CHECK_TYPE(y, PS_TYPE_F64, NULL);1774 PS_ VECTOR_CHECK_NULL(z, NULL);1775 PS_ VECTOR_CHECK_TYPE(z, PS_TYPE_F64, NULL);1767 PS_ASSERT_POLY_NON_NULL(myPoly, NULL); 1768 PS_ASSERT_VECTOR_NON_NULL(w, NULL); 1769 PS_ASSERT_VECTOR_TYPE(w, PS_TYPE_F64, NULL); 1770 PS_ASSERT_VECTOR_NON_NULL(x, NULL); 1771 PS_ASSERT_VECTOR_TYPE(x, PS_TYPE_F64, NULL); 1772 PS_ASSERT_VECTOR_NON_NULL(y, NULL); 1773 PS_ASSERT_VECTOR_TYPE(y, PS_TYPE_F64, NULL); 1774 PS_ASSERT_VECTOR_NON_NULL(z, NULL); 1775 PS_ASSERT_VECTOR_TYPE(z, PS_TYPE_F64, NULL); 1776 1776 1777 1777 psVector *tmp; … … 1828 1828 psF32 max) 1829 1829 { 1830 PS_ INT_CHECK_NON_NEGATIVE(numSplines, NULL);1831 PS_ INT_CHECK_NON_NEGATIVE(order, NULL);1832 PS_ FLOAT_CHECK_NON_EQUAL(max, min, NULL);1830 PS_ASSERT_INT_NONNEGATIVE(numSplines, NULL); 1831 PS_ASSERT_INT_NONNEGATIVE(order, NULL); 1832 PS_ASSERT_FLOAT_NON_EQUAL(max, min, NULL); 1833 1833 1834 1834 psSpline1D *tmp = NULL; … … 1870 1870 psS32 order) 1871 1871 { 1872 PS_ VECTOR_CHECK_NULL(bounds, NULL);1873 PS_ VECTOR_CHECK_EMPTY(bounds, NULL);1874 PS_ INT_CHECK_NON_NEGATIVE(order, NULL);1872 PS_ASSERT_VECTOR_NON_NULL(bounds, NULL); 1873 PS_ASSERT_VECTOR_NON_EMPTY(bounds, NULL); 1874 PS_ASSERT_INT_NONNEGATIVE(order, NULL); 1875 1875 1876 1876 psSpline1D *tmp = NULL; … … 1983 1983 psScalar *x) 1984 1984 { 1985 PS_ VECTOR_CHECK_NULL(bins, -4);1986 PS_ VECTOR_CHECK_EMPTY(bins, -4);1987 PS_ PTR_CHECK_NULL(x, -6);1988 PS_ PTR_CHECK_TYPE_EQUAL(x, bins, -3);1985 PS_ASSERT_VECTOR_NON_NULL(bins, -4); 1986 PS_ASSERT_VECTOR_NON_EMPTY(bins, -4); 1987 PS_ASSERT_PTR_NON_NULL(x, -6); 1988 PS_ASSERT_PTR_TYPE_EQUAL(x, bins, -3); 1989 1989 char* strType; 1990 1990 … … 2049 2049 psScalar *x) 2050 2050 { 2051 PS_ VECTOR_CHECK_NULL(domain, NULL);2052 PS_ VECTOR_CHECK_NULL(range, NULL);2053 PS_ PTR_CHECK_NULL(x, NULL);2054 PS_ INT_CHECK_NON_NEGATIVE(order, NULL);2055 PS_ VECTOR_CHECK_SIZE_EQUAL(domain, range, NULL);2056 PS_ PTR_CHECK_TYPE_EQUAL(domain, range, NULL);2057 PS_ PTR_CHECK_TYPE_EQUAL(domain, x, NULL);2051 PS_ASSERT_VECTOR_NON_NULL(domain, NULL); 2052 PS_ASSERT_VECTOR_NON_NULL(range, NULL); 2053 PS_ASSERT_PTR_NON_NULL(x, NULL); 2054 PS_ASSERT_INT_NONNEGATIVE(order, NULL); 2055 PS_ASSERT_VECTORS_SIZE_EQUAL(domain, range, NULL); 2056 PS_ASSERT_PTR_TYPE_EQUAL(domain, range, NULL); 2057 PS_ASSERT_PTR_TYPE_EQUAL(domain, x, NULL); 2058 2058 2059 2059 psVector *range32 = NULL; … … 2131 2131 ) 2132 2132 { 2133 PS_ PTR_CHECK_NULL(spline, NAN);2134 PS_ INT_CHECK_NON_NEGATIVE(spline->n, NAN);2135 PS_ VECTOR_CHECK_TYPE(spline->knots, PS_TYPE_F32, NAN);2133 PS_ASSERT_PTR_NON_NULL(spline, NAN); 2134 PS_ASSERT_INT_NONNEGATIVE(spline->n, NAN); 2135 PS_ASSERT_VECTOR_TYPE(spline->knots, PS_TYPE_F32, NAN); 2136 2136 2137 2137 psS32 binNum; … … 2167 2167 ) 2168 2168 { 2169 PS_ PTR_CHECK_NULL(spline, NULL);2170 PS_ VECTOR_CHECK_NULL(x, NULL);2171 PS_ VECTOR_CHECK_TYPE_F32_OR_F64(x, NULL);2172 PS_ VECTOR_CHECK_TYPE(spline->knots, PS_TYPE_F32, NULL);2169 PS_ASSERT_PTR_NON_NULL(spline, NULL); 2170 PS_ASSERT_VECTOR_NON_NULL(x, NULL); 2171 PS_ASSERT_VECTOR_TYPE_F32_OR_F64(x, NULL); 2172 PS_ASSERT_VECTOR_TYPE(spline->knots, PS_TYPE_F32, NULL); 2173 2173 2174 2174 psS32 i; -
trunk/psLib/src/math/psStats.c
r4028 r4029 9 9 * @author GLG, MHPCC 10 10 * 11 * @version $Revision: 1.12 8$ $Name: not supported by cvs2svn $12 * @date $Date: 2005-05-25 19:25:29$11 * @version $Revision: 1.129 $ $Name: not supported by cvs2svn $ 12 * @date $Date: 2005-05-25 20:26:55 $ 13 13 * 14 14 * Copyright 2004 Maui High Performance Computing Center, University of Hawaii … … 424 424 psStats* stats) 425 425 { 426 PS_ VECTOR_CHECK_NULL(myVector, -1);427 PS_ PTR_CHECK_NULL(stats, -1);426 PS_ASSERT_VECTOR_NON_NULL(myVector, -1); 427 PS_ASSERT_PTR_NON_NULL(stats, -1); 428 428 psS32 i = 0; // Loop index variable 429 429 … … 472 472 psStats* stats) 473 473 { 474 PS_ VECTOR_CHECK_NULL(myVector, -1);475 PS_ PTR_CHECK_NULL(stats, -1);474 PS_ASSERT_VECTOR_NON_NULL(myVector, -1); 475 PS_ASSERT_PTR_NON_NULL(stats, -1); 476 476 psS32 i = 0; // Loop index variable 477 477 psS32 numData = 0; // The number of data points … … 619 619 psF32 sigma) 620 620 { 621 PS_ PTR_CHECK_NULL(robustHistogram, NULL);622 PS_ PTR_CHECK_NULL(robustHistogram->bounds, NULL);621 PS_ASSERT_PTR_NON_NULL(robustHistogram, NULL); 622 PS_ASSERT_PTR_NON_NULL(robustHistogram->bounds, NULL); 623 623 624 624 psS32 i = 0; // Loop index variable … … 1029 1029 1030 1030 // Ensure that stats->clipIter is within the proper range. 1031 PS_ INT_CHECK_RANGE(stats->clipIter,1032 PS_CLIPPED_NUM_ITER_LB,1033 PS_CLIPPED_NUM_ITER_UB, -1);1031 PS_ASSERT_INT_WITHIN_RANGE(stats->clipIter, 1032 PS_CLIPPED_NUM_ITER_LB, 1033 PS_CLIPPED_NUM_ITER_UB, -1); 1034 1034 1035 1035 // Ensure that stats->clipSigma is within the proper range. 1036 PS_ INT_CHECK_RANGE(stats->clipSigma,1037 PS_CLIPPED_SIGMA_LB,1038 PS_CLIPPED_SIGMA_UB, -1);1036 PS_ASSERT_INT_WITHIN_RANGE(stats->clipSigma, 1037 PS_CLIPPED_SIGMA_LB, 1038 PS_CLIPPED_SIGMA_UB, -1); 1039 1039 1040 1040 // Allocate a psStats structure for calculating the mean, median, and … … 1263 1263 psF32 getThisValue) 1264 1264 { 1265 PS_ POLY_CHECK_NULL(myPoly, NAN);1265 PS_ASSERT_POLY_NON_NULL(myPoly, NAN); 1266 1266 PS_FLOAT_COMPARE(rangeLow, rangeHigh, NAN); 1267 1267 // We ensure that the requested f(y) value, which is getThisValue, is … … 1332 1332 psF32 yVal) 1333 1333 { 1334 PS_ VECTOR_CHECK_NULL(xVec, NAN);1335 PS_ VECTOR_CHECK_NULL(yVec, NAN);1336 PS_ VECTOR_CHECK_TYPE(xVec, PS_TYPE_F32, NAN);1337 PS_ VECTOR_CHECK_TYPE(yVec, PS_TYPE_F32, NAN);1338 // PS_ VECTOR_CHECK_SIZE_EQUAL(xVec, yVec, NAN);1339 PS_ INT_CHECK_RANGE(binNum, 0, (xVec->n - 1), NAN);1340 PS_ INT_CHECK_RANGE(binNum, 0, (yVec->n - 1), NAN);1334 PS_ASSERT_VECTOR_NON_NULL(xVec, NAN); 1335 PS_ASSERT_VECTOR_NON_NULL(yVec, NAN); 1336 PS_ASSERT_VECTOR_TYPE(xVec, PS_TYPE_F32, NAN); 1337 PS_ASSERT_VECTOR_TYPE(yVec, PS_TYPE_F32, NAN); 1338 // PS_ASSERT_VECTORS_SIZE_EQUAL(xVec, yVec, NAN); 1339 PS_ASSERT_INT_WITHIN_RANGE(binNum, 0, (xVec->n - 1), NAN); 1340 PS_ASSERT_INT_WITHIN_RANGE(binNum, 0, (yVec->n - 1), NAN); 1341 1341 1342 1342 // PS_VECTOR_DECLARE_ALLOC_STATIC(x, 3, PS_TYPE_F64); … … 1827 1827 psHistogram* psHistogramAlloc(psF32 lower, psF32 upper, psS32 n) 1828 1828 { 1829 PS_ INT_CHECK_POSITIVE(n, NULL);1829 PS_ASSERT_INT_POSITIVE(n, NULL); 1830 1830 PS_FLOAT_COMPARE(lower, upper, NULL); 1831 1831 … … 1875 1875 psHistogram* psHistogramAllocGeneric(const psVector* bounds) 1876 1876 { 1877 PS_ VECTOR_CHECK_NULL(bounds, NULL);1878 PS_ VECTOR_CHECK_TYPE(bounds, PS_TYPE_F32, NULL);1877 PS_ASSERT_VECTOR_NON_NULL(bounds, NULL); 1878 PS_ASSERT_VECTOR_TYPE(bounds, PS_TYPE_F32, NULL); 1879 1879 PS_INT_COMPARE(2, bounds->n, NULL); 1880 1880 … … 1930 1930 psF32 error) 1931 1931 { 1932 PS_ PTR_CHECK_NULL(out, -1);1933 PS_ PTR_CHECK_NULL(out->bounds, -1);1934 PS_ PTR_CHECK_NULL(out->nums, -1);1935 PS_ INT_CHECK_RANGE(binNum, 0, ((out->nums->n)-1), -2);1932 PS_ASSERT_PTR_NON_NULL(out, -1); 1933 PS_ASSERT_PTR_NON_NULL(out->bounds, -1); 1934 PS_ASSERT_PTR_NON_NULL(out->nums, -1); 1935 PS_ASSERT_INT_WITHIN_RANGE(binNum, 0, ((out->nums->n)-1), -2); 1936 1936 PS_FLOAT_COMPARE(0.0, error, -3); 1937 PS_ FLOAT_CHECK_RANGE(data, out->bounds->data.F32[0], out->bounds->data.F32[(out->bounds->n)-1], -4);1937 PS_ASSERT_FLOAT_WITHIN_RANGE(data, out->bounds->data.F32[0], out->bounds->data.F32[(out->bounds->n)-1], -4); 1938 1938 1939 1939 psF32 boxcarWidth = 2.35 * error; … … 2019 2019 psU32 maskVal) 2020 2020 { 2021 PS_ PTR_CHECK_NULL(out, NULL);2022 PS_ VECTOR_CHECK_NULL(out->bounds, NULL);2023 PS_ VECTOR_CHECK_TYPE(out->bounds, PS_TYPE_F32, NULL);2024 PS_ INT_CHECK_NON_NEGATIVE(out->bounds->n, NULL);2025 PS_ VECTOR_CHECK_NULL(out->nums, NULL);2026 PS_ VECTOR_CHECK_TYPE(out->nums, PS_TYPE_F32, NULL);2027 PS_ INT_CHECK_NON_NEGATIVE(out->nums->n, NULL);2028 PS_ VECTOR_CHECK_NULL(in, out);2021 PS_ASSERT_PTR_NON_NULL(out, NULL); 2022 PS_ASSERT_VECTOR_NON_NULL(out->bounds, NULL); 2023 PS_ASSERT_VECTOR_TYPE(out->bounds, PS_TYPE_F32, NULL); 2024 PS_ASSERT_INT_NONNEGATIVE(out->bounds->n, NULL); 2025 PS_ASSERT_VECTOR_NON_NULL(out->nums, NULL); 2026 PS_ASSERT_VECTOR_TYPE(out->nums, PS_TYPE_F32, NULL); 2027 PS_ASSERT_INT_NONNEGATIVE(out->nums->n, NULL); 2028 PS_ASSERT_VECTOR_NON_NULL(in, out); 2029 2029 if (mask != NULL) { 2030 PS_ VECTOR_CHECK_SIZE_EQUAL(in, mask, NULL);2031 PS_ VECTOR_CHECK_TYPE(mask, PS_TYPE_U8, NULL);2030 PS_ASSERT_VECTORS_SIZE_EQUAL(in, mask, NULL); 2031 PS_ASSERT_VECTOR_TYPE(mask, PS_TYPE_U8, NULL); 2032 2032 } 2033 2033 if (errors != NULL) { 2034 PS_ VECTOR_CHECK_SIZE_EQUAL(in, errors, NULL);2035 PS_ VECTOR_CHECK_TYPE(errors, in->type.type, NULL);2034 PS_ASSERT_VECTORS_SIZE_EQUAL(in, errors, NULL); 2035 PS_ASSERT_VECTOR_TYPE(errors, in->type.type, NULL); 2036 2036 } 2037 2037 … … 2216 2216 psU32 maskVal) 2217 2217 { 2218 PS_ PTR_CHECK_NULL(stats, NULL);2219 PS_ VECTOR_CHECK_NULL(in, stats);2218 PS_ASSERT_PTR_NON_NULL(stats, NULL); 2219 PS_ASSERT_VECTOR_NON_NULL(in, stats); 2220 2220 if (mask != NULL) { 2221 PS_ VECTOR_CHECK_SIZE_EQUAL(mask, in, stats);2222 PS_ VECTOR_CHECK_TYPE(mask, PS_TYPE_U8, stats);2221 PS_ASSERT_VECTORS_SIZE_EQUAL(mask, in, stats); 2222 PS_ASSERT_VECTOR_TYPE(mask, PS_TYPE_U8, stats); 2223 2223 } 2224 2224 if (errors != NULL) { 2225 PS_ VECTOR_CHECK_SIZE_EQUAL(errors, in, stats);2226 PS_ VECTOR_CHECK_TYPE(errors, in->type.type, stats);2225 PS_ASSERT_VECTORS_SIZE_EQUAL(errors, in, stats); 2226 PS_ASSERT_VECTOR_TYPE(errors, in->type.type, stats); 2227 2227 } 2228 2228 -
trunk/psLib/src/math/psUnaryOp.c
r3887 r4029 30 30 * @author Robert DeSonia, MHPCC 31 31 * 32 * @version $Revision: 1. 2$ $Name: not supported by cvs2svn $33 * @date $Date: 2005-05- 12 00:54:49$32 * @version $Revision: 1.3 $ $Name: not supported by cvs2svn $ 33 * @date $Date: 2005-05-25 20:26:55 $ 34 34 * 35 35 * Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii … … 315 315 psType* psTypeIn = (psType* ) in; 316 316 317 PS_ PTR_CHECK_NULL_GENERAL(in, psUnaryOp_EXIT);318 PS_ PTR_CHECK_NULL_GENERAL(op, psUnaryOp_EXIT);317 PS_ASSERT_GENERAL_PTR_NON_NULL(in, psUnaryOp_EXIT); 318 PS_ASSERT_GENERAL_PTR_NON_NULL(op, psUnaryOp_EXIT); 319 319 320 320 psDimen dimIn = psTypeIn->dimen; -
trunk/psLib/src/types/psMetadata.c
r3945 r4029 12 12 * @author Ross Harman, MHPCC 13 13 * 14 * @version $Revision: 1.6 2$ $Name: not supported by cvs2svn $15 * @date $Date: 2005-05- 16 19:43:53$14 * @version $Revision: 1.63 $ $Name: not supported by cvs2svn $ 15 * @date $Date: 2005-05-25 20:26:55 $ 16 16 * 17 17 * Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii … … 179 179 180 180 181 PS_ PTR_CHECK_NULL(name,NULL);181 PS_ASSERT_PTR_NON_NULL(name,NULL); 182 182 183 183 // Allocate metadata item … … 275 275 psMetadataItem *existingEntry = NULL; 276 276 277 PS_ PTR_CHECK_NULL(md,NULL);278 PS_ PTR_CHECK_NULL(md->table,NULL);279 PS_ PTR_CHECK_NULL(md->list,NULL);280 PS_ PTR_CHECK_NULL(metadataItem,NULL);281 PS_ PTR_CHECK_NULL(metadataItem->name,NULL);277 PS_ASSERT_PTR_NON_NULL(md,NULL); 278 PS_ASSERT_PTR_NON_NULL(md->table,NULL); 279 PS_ASSERT_PTR_NON_NULL(md->list,NULL); 280 PS_ASSERT_PTR_NON_NULL(metadataItem,NULL); 281 PS_ASSERT_PTR_NON_NULL(metadataItem->name,NULL); 282 282 283 283 mdTable = md->table; … … 410 410 psBool psMetadataRemove(psMetadata *md, psS32 where, const char *key) 411 411 { 412 PS_ PTR_CHECK_NULL(md,NULL);413 414 PS_ PTR_CHECK_NULL(md->list,NULL);412 PS_ASSERT_PTR_NON_NULL(md,NULL); 413 414 PS_ASSERT_PTR_NON_NULL(md->list,NULL); 415 415 psList* mdList = md->list; 416 416 417 PS_ PTR_CHECK_NULL(md->table,NULL);417 PS_ASSERT_PTR_NON_NULL(md->table,NULL); 418 418 psHash* mdTable = md->table; 419 419 … … 482 482 483 483 484 PS_ PTR_CHECK_NULL(md,NULL);485 PS_ PTR_CHECK_NULL(md->table,NULL);486 PS_ PTR_CHECK_NULL(key,NULL);484 PS_ASSERT_PTR_NON_NULL(md,NULL); 485 PS_ASSERT_PTR_NON_NULL(md->table,NULL); 486 PS_ASSERT_PTR_NON_NULL(key,NULL); 487 487 488 488 mdTable = md->table; … … 583 583 psMetadataItem* entry = NULL; 584 584 585 PS_ PTR_CHECK_NULL(md,NULL);586 PS_ PTR_CHECK_NULL(md->list,NULL);585 PS_ASSERT_PTR_NON_NULL(md,NULL); 586 PS_ASSERT_PTR_NON_NULL(md->list,NULL); 587 587 588 588 entry = (psMetadataItem*) psListGet(md->list, where); … … 599 599 const char* regex) 600 600 { 601 PS_ PTR_CHECK_NULL(md,NULL);602 PS_ PTR_CHECK_NULL(md->list,NULL);601 PS_ASSERT_PTR_NON_NULL(md,NULL); 602 PS_ASSERT_PTR_NON_NULL(md->list,NULL); 603 603 604 604 psMetadataIterator* newIter = psAlloc(sizeof(psMetadataIterator)); … … 637 637 psMetadataItem* cursor; 638 638 639 PS_ PTR_CHECK_NULL(iterator,NULL);639 PS_ASSERT_PTR_NON_NULL(iterator,NULL); 640 640 641 641 psListIterator* iter = iterator->iter; 642 PS_ PTR_CHECK_NULL(iterator->iter,NULL);642 PS_ASSERT_PTR_NON_NULL(iterator->iter,NULL); 643 643 644 644 regex_t* preg = iterator->preg; … … 686 686 psMetadataItem* oldValue; 687 687 688 PS_ PTR_CHECK_NULL(iterator,NULL);688 PS_ASSERT_PTR_NON_NULL(iterator,NULL); 689 689 690 690 psListIterator* iter = iterator->iter; 691 PS_ PTR_CHECK_NULL(iterator->iter,NULL);691 PS_ASSERT_PTR_NON_NULL(iterator->iter,NULL); 692 692 693 693 regex_t* preg = iterator->preg; … … 714 714 psMetadataItem* oldValue; 715 715 716 PS_ PTR_CHECK_NULL(iterator,NULL);716 PS_ASSERT_PTR_NON_NULL(iterator,NULL); 717 717 718 718 psListIterator* iter = iterator->iter; 719 PS_ PTR_CHECK_NULL(iterator->iter,NULL);719 PS_ASSERT_PTR_NON_NULL(iterator->iter,NULL); 720 720 721 721 regex_t* preg = iterator->preg; -
trunk/psLib/src/types/psMetadataConfig.c
r3980 r4029 10 10 * @author Eric Van Alst, MHPCC 11 11 * 12 * @version $Revision: 1.2 7$ $Name: not supported by cvs2svn $13 * @date $Date: 2005-05- 19 20:48:28$12 * @version $Revision: 1.28 $ $Name: not supported by cvs2svn $ 13 * @date $Date: 2005-05-25 20:26:55 $ 14 14 * 15 15 * Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii … … 368 368 psBool success = true; 369 369 370 PS_ PTR_CHECK_NULL(fd, success);371 PS_ PTR_CHECK_NULL(format, success);372 PS_ PTR_CHECK_NULL(metadataItem, success);370 PS_ASSERT_PTR_NON_NULL(fd, success); 371 PS_ASSERT_PTR_NON_NULL(format, success); 372 PS_ASSERT_PTR_NON_NULL(metadataItem, success); 373 373 374 374 type = metadataItem->type; … … 469 469 fitsfile *fd = NULL; 470 470 471 PS_ PTR_CHECK_NULL(fileName,NULL);471 PS_ASSERT_PTR_NON_NULL(fileName,NULL); 472 472 473 473 fits_open_file(&fd, fileName, READONLY, &status); … … 1086 1086 1087 1087 // Check for NULL file name 1088 PS_ PTR_CHECK_NULL(fileName,NULL);1088 PS_ASSERT_PTR_NON_NULL(fileName,NULL); 1089 1089 1090 1090 // Check for NULL nFail 1091 PS_ PTR_CHECK_NULL(nFail,NULL);1091 PS_ASSERT_PTR_NON_NULL(nFail,NULL); 1092 1092 1093 1093 // Attempt to open specified file … … 1156 1156 // Get and check initial data pointers 1157 1157 ctxt = (xmlParserCtxtPtr)ctx; 1158 PS_ PTR_CHECK_NULL_GENERAL(ctxt, return);1158 PS_ASSERT_GENERAL_PTR_NON_NULL(ctxt, return); 1159 1159 md = (psMetadata*)ctxt->sax->_private; 1160 PS_ PTR_CHECK_NULL_GENERAL(md, return);1160 PS_ASSERT_GENERAL_PTR_NON_NULL(md, return); 1161 1161 input = (xmlParserInputPtr)ctxt->input; 1162 PS_ PTR_CHECK_NULL_GENERAL(input, return);1162 PS_ASSERT_GENERAL_PTR_NON_NULL(input, return); 1163 1163 1164 1164 // Copy XML strings to psStrings to avoid libxml2/psLib memory corruption problems … … 1173 1173 psHashAdd(htAtts, "tagName", psTagName); 1174 1174 } else { 1175 PS_ PTR_CHECK_NULL_GENERAL(psTagName, return);1175 PS_ASSERT_GENERAL_PTR_NON_NULL(psTagName, return); 1176 1176 psFree(htAtts); 1177 1177 psFree(psTagName); … … 1193 1193 psFree(psAttValue); 1194 1194 } else { 1195 PS_ PTR_CHECK_NULL_GENERAL(psAttValue, return);1195 PS_ASSERT_GENERAL_PTR_NON_NULL(psAttValue, return); 1196 1196 psFree(htAtts); 1197 1197 psFree(psTagName); … … 1237 1237 // Get and check initial data pointers 1238 1238 ctxt = (xmlParserCtxtPtr)ctx; 1239 PS_ PTR_CHECK_NULL_GENERAL(ctxt, return);1239 PS_ASSERT_GENERAL_PTR_NON_NULL(ctxt, return); 1240 1240 md = (psMetadata*)ctxt->sax->_private; 1241 PS_ PTR_CHECK_NULL_GENERAL(md, return);1241 PS_ASSERT_GENERAL_PTR_NON_NULL(md, return); 1242 1242 input = (xmlParserInputPtr)ctxt->input; 1243 PS_ PTR_CHECK_NULL_GENERAL(input, return);1243 PS_ASSERT_GENERAL_PTR_NON_NULL(input, return); 1244 1244 metadataItem = psMetadataLookup(md, "htAtts"); 1245 PS_ PTR_CHECK_NULL_GENERAL(metadataItem, return);1246 PS_ PTR_CHECK_NULL_GENERAL(metadataItem->data.list, return);1245 PS_ASSERT_GENERAL_PTR_NON_NULL(metadataItem, return); 1246 PS_ASSERT_GENERAL_PTR_NON_NULL(metadataItem->data.list, return); 1247 1247 metadataItem = (psMetadataItem*)psListGet(metadataItem->data.list,PS_LIST_TAIL); 1248 1248 htAtts = (psHash*)metadataItem->data.list; 1249 PS_ PTR_CHECK_NULL_GENERAL(htAtts, return);1249 PS_ASSERT_GENERAL_PTR_NON_NULL(htAtts, return); 1250 1250 fileName = (char*)input->filename; 1251 PS_ PTR_CHECK_NULL_GENERAL(fileName, return);1251 PS_ASSERT_GENERAL_PTR_NON_NULL(fileName, return); 1252 1252 lineNumber = input->line; 1253 1253 … … 1386 1386 // Get and check initial data pointers 1387 1387 ctxt = (xmlParserCtxtPtr)ctx; 1388 PS_ PTR_CHECK_NULL_GENERAL(ctxt, return);1388 PS_ASSERT_GENERAL_PTR_NON_NULL(ctxt, return); 1389 1389 md = (psMetadata*)ctxt->sax->_private; 1390 PS_ PTR_CHECK_NULL_GENERAL(md, return);1390 PS_ASSERT_GENERAL_PTR_NON_NULL(md, return); 1391 1391 input = (xmlParserInputPtr)ctxt->input; 1392 PS_ PTR_CHECK_NULL_GENERAL(input, return);1392 PS_ASSERT_GENERAL_PTR_NON_NULL(input, return); 1393 1393 tables = psMetadataLookup(md, "htAtts"); 1394 PS_ PTR_CHECK_NULL_GENERAL(tables, return);1395 PS_ PTR_CHECK_NULL_GENERAL(tables->data.list, return);1394 PS_ASSERT_GENERAL_PTR_NON_NULL(tables, return); 1395 PS_ASSERT_GENERAL_PTR_NON_NULL(tables->data.list, return); 1396 1396 table = (psMetadataItem*)psListGet(tables->data.list,PS_LIST_TAIL); 1397 1397 htAtts = (psHash*)table->data.list; 1398 PS_ PTR_CHECK_NULL_GENERAL(htAtts, return);1398 PS_ASSERT_GENERAL_PTR_NON_NULL(htAtts, return); 1399 1399 fileName = (char*)input->filename; 1400 PS_ PTR_CHECK_NULL_GENERAL(fileName, return);1400 PS_ASSERT_GENERAL_PTR_NON_NULL(fileName, return); 1401 1401 lineNumber = input->line; 1402 1402 … … 1427 1427 1428 1428 strValue = psHashLookup(htAtts, "value"); 1429 PS_ PTR_CHECK_NULL_GENERAL(strValue, return);1429 PS_ASSERT_GENERAL_PTR_NON_NULL(strValue, return); 1430 1430 1431 1431 … … 1482 1482 // Get and check initial data pointers 1483 1483 ctxt = (xmlParserCtxtPtr)ctx; 1484 PS_ PTR_CHECK_NULL_GENERAL(ctxt, return);1484 PS_ASSERT_GENERAL_PTR_NON_NULL(ctxt, return); 1485 1485 md = (psMetadata*)ctxt->sax->_private; 1486 PS_ PTR_CHECK_NULL_GENERAL(md, return);1486 PS_ASSERT_GENERAL_PTR_NON_NULL(md, return); 1487 1487 input = (xmlParserInputPtr)ctxt->input; 1488 PS_ PTR_CHECK_NULL_GENERAL(input, return);1488 PS_ASSERT_GENERAL_PTR_NON_NULL(input, return); 1489 1489 tables = psMetadataLookup(md, "htAtts"); 1490 PS_ PTR_CHECK_NULL_GENERAL(tables, return);1491 PS_ PTR_CHECK_NULL_GENERAL(tables->data.list, return);1490 PS_ASSERT_GENERAL_PTR_NON_NULL(tables, return); 1491 PS_ASSERT_GENERAL_PTR_NON_NULL(tables->data.list, return); 1492 1492 table = (psMetadataItem*)psListGet(tables->data.list,PS_LIST_TAIL); 1493 1493 htAtts = (psHash*)table->data.list; 1494 PS_ PTR_CHECK_NULL_GENERAL(htAtts, return);1494 PS_ASSERT_GENERAL_PTR_NON_NULL(htAtts, return); 1495 1495 1496 1496 // Copy XML strings to psStrings to avoid libxml2/psLib memory corruption problems … … 1499 1499 // Compare start and end tag names 1500 1500 psStartTagName = psHashLookup(htAtts, "tagName"); 1501 PS_ PTR_CHECK_NULL_GENERAL(psStartTagName, return);1501 PS_ASSERT_GENERAL_PTR_NON_NULL(psStartTagName, return); 1502 1502 if(strcmp(psEndTagName, psStartTagName)) { 1503 1503 psError(PS_ERR_IO, true, PS_ERRORTEXT_psMetadataIO_TAG_MISMATCH, psStartTagName, psEndTagName); … … 1527 1527 1528 1528 // Error checks 1529 PS_ PTR_CHECK_NULL(fileName, NULL);1529 PS_ASSERT_PTR_NON_NULL(fileName, NULL); 1530 1530 1531 1531 // Allocate metadata if necessary -
trunk/psLib/src/xml/psXML.c
r3980 r4029 10 10 * @author Eric Van Alst, MHPCC 11 11 * 12 * @version $Revision: 1.2 7$ $Name: not supported by cvs2svn $13 * @date $Date: 2005-05- 19 20:48:28$12 * @version $Revision: 1.28 $ $Name: not supported by cvs2svn $ 13 * @date $Date: 2005-05-25 20:26:55 $ 14 14 * 15 15 * Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii … … 368 368 psBool success = true; 369 369 370 PS_ PTR_CHECK_NULL(fd, success);371 PS_ PTR_CHECK_NULL(format, success);372 PS_ PTR_CHECK_NULL(metadataItem, success);370 PS_ASSERT_PTR_NON_NULL(fd, success); 371 PS_ASSERT_PTR_NON_NULL(format, success); 372 PS_ASSERT_PTR_NON_NULL(metadataItem, success); 373 373 374 374 type = metadataItem->type; … … 469 469 fitsfile *fd = NULL; 470 470 471 PS_ PTR_CHECK_NULL(fileName,NULL);471 PS_ASSERT_PTR_NON_NULL(fileName,NULL); 472 472 473 473 fits_open_file(&fd, fileName, READONLY, &status); … … 1086 1086 1087 1087 // Check for NULL file name 1088 PS_ PTR_CHECK_NULL(fileName,NULL);1088 PS_ASSERT_PTR_NON_NULL(fileName,NULL); 1089 1089 1090 1090 // Check for NULL nFail 1091 PS_ PTR_CHECK_NULL(nFail,NULL);1091 PS_ASSERT_PTR_NON_NULL(nFail,NULL); 1092 1092 1093 1093 // Attempt to open specified file … … 1156 1156 // Get and check initial data pointers 1157 1157 ctxt = (xmlParserCtxtPtr)ctx; 1158 PS_ PTR_CHECK_NULL_GENERAL(ctxt, return);1158 PS_ASSERT_GENERAL_PTR_NON_NULL(ctxt, return); 1159 1159 md = (psMetadata*)ctxt->sax->_private; 1160 PS_ PTR_CHECK_NULL_GENERAL(md, return);1160 PS_ASSERT_GENERAL_PTR_NON_NULL(md, return); 1161 1161 input = (xmlParserInputPtr)ctxt->input; 1162 PS_ PTR_CHECK_NULL_GENERAL(input, return);1162 PS_ASSERT_GENERAL_PTR_NON_NULL(input, return); 1163 1163 1164 1164 // Copy XML strings to psStrings to avoid libxml2/psLib memory corruption problems … … 1173 1173 psHashAdd(htAtts, "tagName", psTagName); 1174 1174 } else { 1175 PS_ PTR_CHECK_NULL_GENERAL(psTagName, return);1175 PS_ASSERT_GENERAL_PTR_NON_NULL(psTagName, return); 1176 1176 psFree(htAtts); 1177 1177 psFree(psTagName); … … 1193 1193 psFree(psAttValue); 1194 1194 } else { 1195 PS_ PTR_CHECK_NULL_GENERAL(psAttValue, return);1195 PS_ASSERT_GENERAL_PTR_NON_NULL(psAttValue, return); 1196 1196 psFree(htAtts); 1197 1197 psFree(psTagName); … … 1237 1237 // Get and check initial data pointers 1238 1238 ctxt = (xmlParserCtxtPtr)ctx; 1239 PS_ PTR_CHECK_NULL_GENERAL(ctxt, return);1239 PS_ASSERT_GENERAL_PTR_NON_NULL(ctxt, return); 1240 1240 md = (psMetadata*)ctxt->sax->_private; 1241 PS_ PTR_CHECK_NULL_GENERAL(md, return);1241 PS_ASSERT_GENERAL_PTR_NON_NULL(md, return); 1242 1242 input = (xmlParserInputPtr)ctxt->input; 1243 PS_ PTR_CHECK_NULL_GENERAL(input, return);1243 PS_ASSERT_GENERAL_PTR_NON_NULL(input, return); 1244 1244 metadataItem = psMetadataLookup(md, "htAtts"); 1245 PS_ PTR_CHECK_NULL_GENERAL(metadataItem, return);1246 PS_ PTR_CHECK_NULL_GENERAL(metadataItem->data.list, return);1245 PS_ASSERT_GENERAL_PTR_NON_NULL(metadataItem, return); 1246 PS_ASSERT_GENERAL_PTR_NON_NULL(metadataItem->data.list, return); 1247 1247 metadataItem = (psMetadataItem*)psListGet(metadataItem->data.list,PS_LIST_TAIL); 1248 1248 htAtts = (psHash*)metadataItem->data.list; 1249 PS_ PTR_CHECK_NULL_GENERAL(htAtts, return);1249 PS_ASSERT_GENERAL_PTR_NON_NULL(htAtts, return); 1250 1250 fileName = (char*)input->filename; 1251 PS_ PTR_CHECK_NULL_GENERAL(fileName, return);1251 PS_ASSERT_GENERAL_PTR_NON_NULL(fileName, return); 1252 1252 lineNumber = input->line; 1253 1253 … … 1386 1386 // Get and check initial data pointers 1387 1387 ctxt = (xmlParserCtxtPtr)ctx; 1388 PS_ PTR_CHECK_NULL_GENERAL(ctxt, return);1388 PS_ASSERT_GENERAL_PTR_NON_NULL(ctxt, return); 1389 1389 md = (psMetadata*)ctxt->sax->_private; 1390 PS_ PTR_CHECK_NULL_GENERAL(md, return);1390 PS_ASSERT_GENERAL_PTR_NON_NULL(md, return); 1391 1391 input = (xmlParserInputPtr)ctxt->input; 1392 PS_ PTR_CHECK_NULL_GENERAL(input, return);1392 PS_ASSERT_GENERAL_PTR_NON_NULL(input, return); 1393 1393 tables = psMetadataLookup(md, "htAtts"); 1394 PS_ PTR_CHECK_NULL_GENERAL(tables, return);1395 PS_ PTR_CHECK_NULL_GENERAL(tables->data.list, return);1394 PS_ASSERT_GENERAL_PTR_NON_NULL(tables, return); 1395 PS_ASSERT_GENERAL_PTR_NON_NULL(tables->data.list, return); 1396 1396 table = (psMetadataItem*)psListGet(tables->data.list,PS_LIST_TAIL); 1397 1397 htAtts = (psHash*)table->data.list; 1398 PS_ PTR_CHECK_NULL_GENERAL(htAtts, return);1398 PS_ASSERT_GENERAL_PTR_NON_NULL(htAtts, return); 1399 1399 fileName = (char*)input->filename; 1400 PS_ PTR_CHECK_NULL_GENERAL(fileName, return);1400 PS_ASSERT_GENERAL_PTR_NON_NULL(fileName, return); 1401 1401 lineNumber = input->line; 1402 1402 … … 1427 1427 1428 1428 strValue = psHashLookup(htAtts, "value"); 1429 PS_ PTR_CHECK_NULL_GENERAL(strValue, return);1429 PS_ASSERT_GENERAL_PTR_NON_NULL(strValue, return); 1430 1430 1431 1431 … … 1482 1482 // Get and check initial data pointers 1483 1483 ctxt = (xmlParserCtxtPtr)ctx; 1484 PS_ PTR_CHECK_NULL_GENERAL(ctxt, return);1484 PS_ASSERT_GENERAL_PTR_NON_NULL(ctxt, return); 1485 1485 md = (psMetadata*)ctxt->sax->_private; 1486 PS_ PTR_CHECK_NULL_GENERAL(md, return);1486 PS_ASSERT_GENERAL_PTR_NON_NULL(md, return); 1487 1487 input = (xmlParserInputPtr)ctxt->input; 1488 PS_ PTR_CHECK_NULL_GENERAL(input, return);1488 PS_ASSERT_GENERAL_PTR_NON_NULL(input, return); 1489 1489 tables = psMetadataLookup(md, "htAtts"); 1490 PS_ PTR_CHECK_NULL_GENERAL(tables, return);1491 PS_ PTR_CHECK_NULL_GENERAL(tables->data.list, return);1490 PS_ASSERT_GENERAL_PTR_NON_NULL(tables, return); 1491 PS_ASSERT_GENERAL_PTR_NON_NULL(tables->data.list, return); 1492 1492 table = (psMetadataItem*)psListGet(tables->data.list,PS_LIST_TAIL); 1493 1493 htAtts = (psHash*)table->data.list; 1494 PS_ PTR_CHECK_NULL_GENERAL(htAtts, return);1494 PS_ASSERT_GENERAL_PTR_NON_NULL(htAtts, return); 1495 1495 1496 1496 // Copy XML strings to psStrings to avoid libxml2/psLib memory corruption problems … … 1499 1499 // Compare start and end tag names 1500 1500 psStartTagName = psHashLookup(htAtts, "tagName"); 1501 PS_ PTR_CHECK_NULL_GENERAL(psStartTagName, return);1501 PS_ASSERT_GENERAL_PTR_NON_NULL(psStartTagName, return); 1502 1502 if(strcmp(psEndTagName, psStartTagName)) { 1503 1503 psError(PS_ERR_IO, true, PS_ERRORTEXT_psMetadataIO_TAG_MISMATCH, psStartTagName, psEndTagName); … … 1527 1527 1528 1528 // Error checks 1529 PS_ PTR_CHECK_NULL(fileName, NULL);1529 PS_ASSERT_PTR_NON_NULL(fileName, NULL); 1530 1530 1531 1531 // Allocate metadata if necessary
Note:
See TracChangeset
for help on using the changeset viewer.
