Main Page | Modules | Alphabetical List | Data Structures | Directories | File List | Data Fields | Globals

psConstants.h File Reference


Detailed Description

This file will hold definitions of various constants as well as common macros used throughout psLib.

Author:
GLG, MHPCC
Version:
Revision
1.73
Name
rel6_0
Date:
Date
2005/06/08 23:40:45
Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii

XXX: Add parenthesis around all arguments so that these macros can be called with complex expressions.

XXX: All functions which use the PS_CHECK macros must be scrutinized so that we ensure that an argument which is expected to be output is psFree'ed before reurning NULL.

XXX: The macros have a name similar to PS_CHECK_CONDITION() and generally throw a psError if the CONDITION is true. However, some throw the error if the CONDITION is false. This should be consistant.

XXX: rename all these with form PS_ASSERT_CONDITION().

Definition in file psConstants.h.

#include <math.h>

Include dependency graph for psConstants.h:

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Defines

#define PS_DETERMINE_BRACKET_STEP_SIZE   0.10
#define PS_MAX_LMM_ITERATIONS   100
#define PS_MAX_MINIMIZE_ITERATIONS   100
#define PS_LEFT_SPLINE_DERIV   0.0
#define PS_RIGHT_SPLINE_DERIV   0.0
#define M_PI   3.1415926535897932384626433832795029
#define M_PI_2   1.5707963267948966192313216916397514
#define M_PI_4   0.7853981633974483096156608458198757
#define M_1_PI   0.3183098861837906715377675267450287
#define M_2_PI   0.6366197723675813430755350534900574
#define DEG_TO_RAD(DEGREES)   ((DEGREES) * M_PI / 180.0)
#define MIN_TO_RAD(MINUTES)   ((MINUTES) * M_PI / (180.0 * 60.0))
#define SEC_TO_RAD(SECONDS)   ((SECONDS) * M_PI / (180.0 * 60.0 * 60.0))
#define RAD_TO_DEG(RADIANS)   ((RADIANS) * 180.0 / M_PI)
#define RAD_TO_MIN(RADIANS)   ((RADIANS) * 180.0 * 60.0 / M_PI)
#define RAD_TO_SEC(RADIANS)   ((RADIANS) * 180.0 * 60.0 * 60.0 / M_PI)
#define PS_ASSERT_INT_UNEQUAL(NAME1, NAME2, RVAL)
#define PS_ASSERT_INT_EQUAL(NAME1, NAME2, RVAL)
#define PS_ASSERT_INT_NONNEGATIVE(NAME, RVAL)
#define PS_ASSERT_INT_POSITIVE(NAME, RVAL)
#define PS_ASSERT_INT_ZERO(NAME, RVAL)
#define PS_ASSERT_INT_NONZERO(NAME, RVAL)
#define PS_ASSERT_INT_WITHIN_RANGE(NAME, LOWER, UPPER, RVAL)
#define PS_ASSERT_INT_LARGER_THAN(NAME1, NAME2, RVAL)
#define PS_ASSERT_INT_LARGER_THAN_OR_EQUAL(NAME1, NAME2, RVAL)
#define PS_ASSERT_FLOAT_LARGER_THAN(NAME1, NAME2, RVAL)
#define PS_ASSERT_FLOAT_LARGER_THAN_OR_EQUAL(NAME1, NAME2, RVAL)
#define PS_INT_COMPARE(NAME1, NAME2, RVAL)
#define PS_FLOAT_COMPARE(NAME1, NAME2, RVAL)
#define PS_ASSERT_FLOAT_NON_EQUAL(NAME1, NAME2, RVAL)
#define PS_ASSERT_FLOAT_EQUAL(NAME1, NAME2, RVAL)
#define PS_ASSERT_FLOAT_WITHIN_RANGE(NAME, LOWER, UPPER, RVAL)
#define PS_ASSERT_LONG_WITHIN_RANGE(NAME, LOWER, UPPER, RVAL)
#define PS_ASSERT_PTR_NON_NULL(NAME, RVAL)   PS_ASSERT_GENERAL_PTR_NON_NULL(NAME, return RVAL)
#define PS_ASSERT_GENERAL_PTR_NON_NULL(NAME, CLEANUP)
#define PS_ASSERT_PTR_TYPE(NAME, TYPE, RVAL)
#define PS_ASSERT_PTR_DIMEN(NAME, DIMEN, RVAL)   PS_ASSERT_GENERAL_PTR_DIMEN(NAME, DIMEN, return RVAL)
#define PS_ASSERT_GENERAL_PTR_DIMEN(NAME, DIMEN, CLEANUP)
#define PS_ASSERT_PTR_DIMEN_GENERAL_NOT(NAME, DIMEN, CLEANUP)
#define PS_ASSERT_PTRS_SIZE_EQUAL(PTR1, PTR2, RVAL)
#define PS_ASSERT_PTR_TYPE_EQUAL(PTR1, PTR2, RVAL)   PS_ASSERT_PTRS_TYPE_EQUAL_GENERAL(PTR1, PTR2, return RVAL)
#define PS_ASSERT_PTRS_TYPE_EQUAL_GENERAL(PTR1, PTR2, CLEANUP)
#define PS_ASSERT_VECTOR_NON_NULL(NAME, RVAL)   PS_ASSERT_GENERAL_VECTOR_NON_NULL(NAME, return RVAL)
#define PS_ASSERT_GENERAL_VECTOR_NON_NULL(NAME, CLEANUP)
#define PS_ASSERT_VECTOR_NON_EMPTY(NAME, RVAL)   PS_ASSERT_GENERAL_VECTOR_NON_EMPTY(NAME, return RVAL)
#define PS_ASSERT_GENERAL_VECTOR_NON_EMPTY(NAME, CLEANUP)
#define PS_ASSERT_VECTOR_TYPE_F32_OR_F64(NAME, RVAL)
#define PS_ASSERT_VECTOR_TYPE_S16_S32_F32(NAME, RVAL)
#define PS_ASSERT_VECTOR_TYPE(NAME, TYPE, RVAL)
#define PS_ASSERT_VECTORS_SIZE_EQUAL(VEC1, VEC2, RVAL)
#define PS_ASSERT_VECTOR_SIZE(VEC, SIZE, RVAL)
#define PS_ASSERT_VECTOR_TYPE_EQUAL(VEC1, VEC2, RVAL)
#define PS_VECTOR_F64_TO_F32(X64, X32)
#define PS_VECTOR_F32_TO_F64(X32, X64)
#define PS_VECTOR_PRINT_F32(NAME)
#define PS_VECTOR_CONVERT_F64_TO_F32_STATIC(OLD, NEW_PTR32, NEW_STATIC32)
#define PS_VECTOR_CONVERT_F32_TO_F64_STATIC(OLD, NEW_PTR64, NEW_STATIC64)
#define PS_VECTOR_GEN_YERR_STATIC_F32(VEC, N)
#define PS_VECTOR_GEN_YERR_STATIC_F64(VEC, N)
#define PS_VECTOR_GEN_X_INDEX_STATIC_F32(VEC, N)
#define PS_VECTOR_GEN_X_INDEX_STATIC_F64(VEC, N)
#define PS_VECTOR_GEN_STATIC_RECYCLED(NAME, SIZE, TYPE)
#define PS_VECTOR_DECLARE_ALLOC_STATIC(NAME, SIZE, TYPE)
#define PS_VECTOR_SET_U8(NAME, VALUE)
#define PS_VECTOR_SET_U16(NAME, VALUE)
#define PS_VECTOR_SET_U32(NAME, VALUE)
#define PS_VECTOR_SET_U64(NAME, VALUE)
#define PS_VECTOR_SET_S8(NAME, VALUE)
#define PS_VECTOR_SET_S16(NAME, VALUE)
#define PS_VECTOR_SET_S32(NAME, VALUE)
#define PS_VECTOR_SET_S64(NAME, VALUE)
#define PS_VECTOR_SET_F64(NAME, VALUE)
#define PS_VECTOR_SET_F32(NAME, VALUE)
#define PS_ASSERT_POLY_NON_NULL(NAME, RVAL)
#define PS_ASSERT_POLY_TYPE(NAME, TYPE, RVAL)
#define PS_POLY_1D_DECLARE_ALLOC_STATIC(NAME, ORDER, TYPE)
#define PS_POLY_2D_DECLARE_ALLOC_STATIC(NAME, ORDER, TYPE)
#define PS_POLY_3D_DECLARE_ALLOC_STATIC(NAME, ORDER, TYPE)
#define PS_POLY_4D_DECLARE_ALLOC_STATIC(NAME, ORDER, TYPE)
#define PS_POLY_1D_D_DECLARE_ALLOC_STATIC(NAME, ORDER, TYPE)
#define PS_POLY_2D_D_DECLARE_ALLOC_STATIC(NAME, ORDER, TYPE)
#define PS_POLY_3D_D_DECLARE_ALLOC_STATIC(NAME, ORDER, TYPE)
#define PS_POLY_4D_D_DECLARE_ALLOC_STATIC(NAME, ORDER, TYPE)
#define PS_ASSERT_IMAGE_NON_NULL(NAME, RVAL)   PS_ASSERT_GENERAL_IMAGE_NON_NULL(NAME, return RVAL)
#define PS_ASSERT_GENERAL_IMAGE_NON_NULL(NAME, CLEANUP)
#define PS_ASSERT_IMAGE_NON_EMPTY(NAME, RVAL)   PS_ASSERT_GENERAL_IMAGE_NON_EMPTY(NAME, return RVAL)
#define PS_ASSERT_GENERAL_IMAGE_NON_EMPTY(NAME, CLEANUP)
#define PS_ASSERT_IMAGE_TYPE(NAME, TYPE, RVAL)
#define PS_ASSERT_IMAGES_SIZE_EQUAL(NAME1, NAME2, RVAL)
#define PS_ASSERT_IMAGE_SIZE(NAME1, NUM_COLS, NUM_ROWS, RVAL)
#define PS_IMAGE_PRINT_F32(NAME)
#define PS_IMAGE_SET_U8(NAME, VALUE)
#define PS_IMAGE_SET_U16(NAME, VALUE)
#define PS_IMAGE_SET_U32(NAME, VALUE)
#define PS_IMAGE_SET_U64(NAME, VALUE)
#define PS_IMAGE_SET_S8(NAME, VALUE)
#define PS_IMAGE_SET_S16(NAME, VALUE)
#define PS_IMAGE_SET_S32(NAME, VALUE)
#define PS_IMAGE_SET_S64(NAME, VALUE)
#define PS_IMAGE_SET_F32(NAME, VALUE)
#define PS_IMAGE_SET_F64(NAME, VALUE)
#define PS_ASSERT_READOUT_NON_NULL(NAME, RVAL)
#define PS_ASSERT_READOUT_NON_EMPTY(NAME, RVAL)
#define PS_ASSERT_READOUT_TYPE(NAME, TYPE, RVAL)
#define PS_MAX(A, B)   (((A) > (B)) ? (A) : (B))
#define PS_MIN(A, B)   (((A) < (B)) ? (A) : (B))
#define PS_SQR(A)   ((A) * (A))


Define Documentation

#define DEG_TO_RAD DEGREES   )     ((DEGREES) * M_PI / 180.0)
 

Definition at line 49 of file psConstants.h.

#define M_1_PI   0.3183098861837906715377675267450287
 

Definition at line 45 of file psConstants.h.

#define M_2_PI   0.6366197723675813430755350534900574
 

Definition at line 46 of file psConstants.h.

#define M_PI   3.1415926535897932384626433832795029
 

Definition at line 42 of file psConstants.h.

#define M_PI_2   1.5707963267948966192313216916397514
 

Definition at line 43 of file psConstants.h.

#define M_PI_4   0.7853981633974483096156608458198757
 

Definition at line 44 of file psConstants.h.

#define MIN_TO_RAD MINUTES   )     ((MINUTES) * M_PI / (180.0 * 60.0))
 

Definition at line 50 of file psConstants.h.

#define PS_ASSERT_FLOAT_EQUAL NAME1,
NAME2,
RVAL   ) 
 

Value:

if (fabs((NAME2) - (NAME1)) > FLT_EPSILON) { \
    psError(PS_ERR_BAD_PARAMETER_VALUE, true, \
            "Error: %s and %s are not equal.", \
            #NAME1, #NAME2); \
    return(RVAL); \
}

Definition at line 172 of file psConstants.h.

#define PS_ASSERT_FLOAT_LARGER_THAN NAME1,
NAME2,
RVAL   ) 
 

Value:

if (!((NAME1) > (NAME2))) { \
    psError(PS_ERR_BAD_PARAMETER_VALUE, true, \
            "Error: !(%s > %s) (%f %f).", \
            #NAME1, #NAME2, NAME1, NAME2); \
    return(RVAL); \
}

Definition at line 128 of file psConstants.h.

#define PS_ASSERT_FLOAT_LARGER_THAN_OR_EQUAL NAME1,
NAME2,
RVAL   ) 
 

Value:

if (!((NAME1) >= (NAME2))) { \
    psError(PS_ERR_BAD_PARAMETER_VALUE, true, \
            "Error: !(%s >= %s) (%f %f).", \
            #NAME1, #NAME2, NAME1, NAME2); \
    return(RVAL); \
}

Definition at line 136 of file psConstants.h.

#define PS_ASSERT_FLOAT_NON_EQUAL NAME1,
NAME2,
RVAL   ) 
 

Value:

if (fabs((NAME2) - (NAME1)) < FLT_EPSILON) { \
    psError(PS_ERR_BAD_PARAMETER_VALUE, true, \
            "Error: %s and %s are equal.", \
            #NAME1, #NAME2); \
    return(RVAL); \
}

Definition at line 164 of file psConstants.h.

#define PS_ASSERT_FLOAT_WITHIN_RANGE NAME,
LOWER,
UPPER,
RVAL   ) 
 

Value:

if ((NAME) < (LOWER) || (NAME) > (UPPER)) { \
    psError(PS_ERR_BAD_PARAMETER_VALUE, true, \
            "Error: %s, %f, is out of range.  Must be between %f and %f.", \
            #NAME, NAME, LOWER, UPPER); \
    return RVAL; \
}

Definition at line 181 of file psConstants.h.

#define PS_ASSERT_GENERAL_IMAGE_NON_EMPTY NAME,
CLEANUP   ) 
 

Value:

if ((NAME)->numCols < 1 || (NAME)->numRows < 1) { \
    psError(PS_ERR_BAD_PARAMETER_SIZE, true, \
            "Unallowable operation: psImage %s has zero rows or columns (%dx%d).", \
            #NAME, (NAME)->numCols, (NAME)->numRows); \
    CLEANUP; \
}

Definition at line 558 of file psConstants.h.

#define PS_ASSERT_GENERAL_IMAGE_NON_NULL NAME,
CLEANUP   ) 
 

Value:

if ((NAME) == NULL || (NAME)->data.V == NULL) { \
    psError(PS_ERR_BAD_PARAMETER_NULL, true, \
            "Unallowable operation: psImage %s or its data is NULL.", \
            #NAME); \
    CLEANUP; \
}

Definition at line 549 of file psConstants.h.

#define PS_ASSERT_GENERAL_PTR_DIMEN NAME,
DIMEN,
CLEANUP   ) 
 

Value:

if ((NAME)->type.dimen != DIMEN) { \
    psError(PS_ERR_BAD_PARAMETER_TYPE, true, \
            "Unallowable operation: %s has incorrect dimensionality.", \
            #NAME); \
    CLEANUP; \
}

Definition at line 220 of file psConstants.h.

#define PS_ASSERT_GENERAL_PTR_NON_NULL NAME,
CLEANUP   ) 
 

Value:

if ((NAME) == NULL) { \
    psError(PS_ERR_BAD_PARAMETER_NULL, true, \
            "Unallowable operation: %s is NULL.", \
            #NAME); \
    CLEANUP; \
}

Definition at line 203 of file psConstants.h.

#define PS_ASSERT_GENERAL_VECTOR_NON_EMPTY NAME,
CLEANUP   ) 
 

Value:

if ((NAME)->n < 1) { \
    psError(PS_ERR_BAD_PARAMETER_SIZE, true, \
            "Unallowable operation: psVector %s has no elements.", \
            #NAME); \
    CLEANUP; \
} \

Definition at line 268 of file psConstants.h.

#define PS_ASSERT_GENERAL_VECTOR_NON_NULL NAME,
CLEANUP   ) 
 

Value:

if ((NAME) == NULL || (NAME)->data.U8 == NULL) { \
    psError(PS_ERR_BAD_PARAMETER_NULL, true, \
            "Unallowable operation: psVector %s or its data is NULL.", \
            #NAME); \
    CLEANUP; \
} \

Definition at line 259 of file psConstants.h.

#define PS_ASSERT_IMAGE_NON_EMPTY NAME,
RVAL   )     PS_ASSERT_GENERAL_IMAGE_NON_EMPTY(NAME, return RVAL)
 

Definition at line 557 of file psConstants.h.

#define PS_ASSERT_IMAGE_NON_NULL NAME,
RVAL   )     PS_ASSERT_GENERAL_IMAGE_NON_NULL(NAME, return RVAL)
 

Definition at line 548 of file psConstants.h.

#define PS_ASSERT_IMAGE_SIZE NAME1,
NUM_COLS,
NUM_ROWS,
RVAL   ) 
 

Value:

if (((NAME1)->numCols != NUM_COLS) || \
        ((NAME1)->numRows != NUM_ROWS)) { \
    psError(PS_ERR_BAD_PARAMETER_SIZE, true, \
            "Unallowable operation: psImages %s is not the correct size.", \
            #NAME1); \
    return(RVAL); \
}

Definition at line 583 of file psConstants.h.

#define PS_ASSERT_IMAGE_TYPE NAME,
TYPE,
RVAL   ) 
 

Value:

if ((NAME)->type.type != TYPE) { \
    psError(PS_ERR_BAD_PARAMETER_TYPE, true, \
            "Unallowable operation: psImage %s has incorrect type.", \
            #NAME); \
    return(RVAL); \
}

Definition at line 566 of file psConstants.h.

#define PS_ASSERT_IMAGES_SIZE_EQUAL NAME1,
NAME2,
RVAL   ) 
 

Value:

if (((NAME1)->numCols != (NAME2)->numCols) || \
        ((NAME1)->numRows != (NAME2)->numRows)) { \
    psError(PS_ERR_BAD_PARAMETER_SIZE, true, \
            "Unallowable operation: psImages %s and %s are not the same size.", \
            #NAME1, #NAME2); \
    return(RVAL); \
}

Definition at line 574 of file psConstants.h.

#define PS_ASSERT_INT_EQUAL NAME1,
NAME2,
RVAL   ) 
 

Value:

if ((NAME1) != (NAME2)) { \
    psError(PS_ERR_BAD_PARAMETER_VALUE, true, \
            "Error: %s and %s are not equal.", \
            #NAME1, #NAME2); \
    return(RVAL); \
}

Definition at line 68 of file psConstants.h.

#define PS_ASSERT_INT_LARGER_THAN NAME1,
NAME2,
RVAL   ) 
 

Value:

if (!((NAME1) > (NAME2))) { \
    psError(PS_ERR_BAD_PARAMETER_VALUE, true, \
            "Error: !(%s > %s) (%d %d).", \
            #NAME1, #NAME2, NAME1, NAME2); \
    return(RVAL); \
}

Definition at line 113 of file psConstants.h.

#define PS_ASSERT_INT_LARGER_THAN_OR_EQUAL NAME1,
NAME2,
RVAL   ) 
 

Value:

if (!((NAME1) >= (NAME2))) { \
    psError(PS_ERR_BAD_PARAMETER_VALUE, true, \
            "Error: !(%s >= %s) (%d %d).", \
            #NAME1, #NAME2, NAME1, NAME2); \
    return(RVAL); \
}

Definition at line 121 of file psConstants.h.

#define PS_ASSERT_INT_NONNEGATIVE NAME,
RVAL   ) 
 

Value:

if ((NAME) < 0) { \
    psError(PS_ERR_BAD_PARAMETER_VALUE, true, \
            "Error: %s is less than 0.", #NAME); \
    return(RVAL); \
}

Definition at line 76 of file psConstants.h.

#define PS_ASSERT_INT_NONZERO NAME,
RVAL   ) 
 

Value:

if ((NAME) == 0) { \
    psError(PS_ERR_BAD_PARAMETER_VALUE, true, \
            "Error: %s is 0.", #NAME); \
    return(RVAL); \
}

Definition at line 97 of file psConstants.h.

#define PS_ASSERT_INT_POSITIVE NAME,
RVAL   ) 
 

Value:

if ((NAME) < 1) { \
    psError(PS_ERR_BAD_PARAMETER_VALUE, true, \
            "Error: %s is 0 or less.", #NAME); \
    return(RVAL); \
}

Definition at line 83 of file psConstants.h.

#define PS_ASSERT_INT_UNEQUAL NAME1,
NAME2,
RVAL   ) 
 

Value:

if ((NAME1) == (NAME2)) { \
    psError(PS_ERR_BAD_PARAMETER_VALUE, true, \
            "Error: %s and %s are equal.", \
            #NAME1, #NAME2); \
    return(RVAL); \
}

Definition at line 60 of file psConstants.h.

#define PS_ASSERT_INT_WITHIN_RANGE NAME,
LOWER,
UPPER,
RVAL   ) 
 

Value:

if ((int)(NAME) < LOWER || (int)(NAME) > UPPER) { \
    psError(PS_ERR_BAD_PARAMETER_VALUE, true, \
            "Error: %s, %d, is out of range.  Must be between %d and %d.", \
            #NAME,(int)NAME,LOWER,UPPER); \
    return RVAL; \
}

Definition at line 105 of file psConstants.h.

#define PS_ASSERT_INT_ZERO NAME,
RVAL   ) 
 

Value:

if ((NAME) != 0) { \
    psError(PS_ERR_BAD_PARAMETER_VALUE, true, \
            "Error: %s is 0.", #NAME); \
    return(RVAL); \
}

Definition at line 90 of file psConstants.h.

#define PS_ASSERT_LONG_WITHIN_RANGE NAME,
LOWER,
UPPER,
RVAL   ) 
 

Value:

if ((NAME) < (LOWER) || (NAME) > (UPPER)) { \
    psError(PS_ERR_BAD_PARAMETER_VALUE, true, \
            "Error: %s, %lld, is out of range.", \
            #NAME, NAME, LOWER, UPPER); \
    return RVAL; \
}

Definition at line 190 of file psConstants.h.

#define PS_ASSERT_POLY_NON_NULL NAME,
RVAL   ) 
 

Value:

if ((NAME) == NULL || (NAME)->coeff == NULL) { \
    psError(PS_ERR_BAD_PARAMETER_NULL, true, \
            "Unallowable operation: polynomial %s or its coeffs is NULL.", \
            #NAME); \
    return(RVAL); \
} \

Definition at line 468 of file psConstants.h.

#define PS_ASSERT_POLY_TYPE NAME,
TYPE,
RVAL   ) 
 

Value:

if ((NAME)->type != TYPE) { \
    psError(PS_ERR_BAD_PARAMETER_TYPE, true, \
            "Unallowable operation: polynomial %s has wrong type.", #NAME); \
    return(RVAL); \
} \

Definition at line 476 of file psConstants.h.

#define PS_ASSERT_PTR_DIMEN NAME,
DIMEN,
RVAL   )     PS_ASSERT_GENERAL_PTR_DIMEN(NAME, DIMEN, return RVAL)
 

Definition at line 219 of file psConstants.h.

#define PS_ASSERT_PTR_DIMEN_GENERAL_NOT NAME,
DIMEN,
CLEANUP   ) 
 

Value:

if ((NAME)->type.dimen == DIMEN) { \
    psError(PS_ERR_BAD_PARAMETER_TYPE, true, \
            "Unallowable operation: %s has incorrect dimensionality.", \
            #NAME); \
    CLEANUP; \
}

Definition at line 228 of file psConstants.h.

#define PS_ASSERT_PTR_NON_NULL NAME,
RVAL   )     PS_ASSERT_GENERAL_PTR_NON_NULL(NAME, return RVAL)
 

Definition at line 202 of file psConstants.h.

#define PS_ASSERT_PTR_TYPE NAME,
TYPE,
RVAL   ) 
 

Value:

if ((NAME)->type.type != TYPE) { \
    psError(PS_ERR_BAD_PARAMETER_TYPE, true, \
            "Unallowable operation: %s has incorrect type.", \
            #NAME); \
    return(RVAL); \
}

Definition at line 211 of file psConstants.h.

#define PS_ASSERT_PTR_TYPE_EQUAL PTR1,
PTR2,
RVAL   )     PS_ASSERT_PTRS_TYPE_EQUAL_GENERAL(PTR1, PTR2, return RVAL)
 

Definition at line 245 of file psConstants.h.

#define PS_ASSERT_PTRS_SIZE_EQUAL PTR1,
PTR2,
RVAL   ) 
 

Value:

if (PTR1->n != PTR2->n) { \
    psError(PS_ERR_BAD_PARAMETER_SIZE, true, \
            "ptr %s has size %d, ptr %s has size %d.", \
            #PTR1, PTR1->n, #PTR2, PTR2->n); \
    return(RVAL); \
}

Definition at line 237 of file psConstants.h.

#define PS_ASSERT_PTRS_TYPE_EQUAL_GENERAL PTR1,
PTR2,
CLEANUP   ) 
 

Value:

if (PTR1->type.type != PTR2->type.type) { \
    psError(PS_ERR_BAD_PARAMETER_TYPE, true, \
            "ptr %s has type %d, ptr %s has type %d.", \
            #PTR1, PTR1->type.type, #PTR2, PTR2->type.type); \
    CLEANUP; \
}

Definition at line 246 of file psConstants.h.

#define PS_ASSERT_READOUT_NON_EMPTY NAME,
RVAL   ) 
 

Value:

if ((NAME)->image->numCols < 1 || (NAME)->image->numRows < 1) { \
    psError(PS_ERR_BAD_PARAMETER_SIZE, true, \
            "Unallowable operation: psReadout %s or its data is NULL.", #NAME); \
    return(RVAL); \
}

Definition at line 682 of file psConstants.h.

#define PS_ASSERT_READOUT_NON_NULL NAME,
RVAL   ) 
 

Value:

if ((NAME) == NULL || (NAME)->image == NULL) { \
    psError(PS_ERR_BAD_PARAMETER_NULL, true, \
            "Unallowable operation: psReadout %s or its data is NULL.", \
            #NAME); \
    return(RVAL); \
}

Definition at line 674 of file psConstants.h.

#define PS_ASSERT_READOUT_TYPE NAME,
TYPE,
RVAL   ) 
 

Value:

if ((NAME)->image->type.type != TYPE) { \
    psError(PS_ERR_BAD_PARAMETER_TYPE, true, \
            "Unallowable operation: psImage %s has incorrect type.", #NAME); \
    return(RVAL); \
}

Definition at line 689 of file psConstants.h.

#define PS_ASSERT_VECTOR_NON_EMPTY NAME,
RVAL   )     PS_ASSERT_GENERAL_VECTOR_NON_EMPTY(NAME, return RVAL)
 

Definition at line 267 of file psConstants.h.

#define PS_ASSERT_VECTOR_NON_NULL NAME,
RVAL   )     PS_ASSERT_GENERAL_VECTOR_NON_NULL(NAME, return RVAL)
 

Definition at line 258 of file psConstants.h.

#define PS_ASSERT_VECTOR_SIZE VEC,
SIZE,
RVAL   ) 
 

Value:

if (VEC->n != SIZE) { \
    psError(PS_ERR_BAD_PARAMETER_SIZE, true, \
            "psVector %s has size %d, should be %d." \
            #VEC, VEC->n, SIZE); \
    return(RVAL); \
}

Definition at line 308 of file psConstants.h.

#define PS_ASSERT_VECTOR_TYPE NAME,
TYPE,
RVAL   ) 
 

Value:

if ((NAME)->type.type != TYPE) { \
    psError(PS_ERR_BAD_PARAMETER_TYPE, true, \
            "Unallowable operation: psVector %s has incorrect type.", \
            #NAME); \
    return(RVAL); \
}

Definition at line 292 of file psConstants.h.

#define PS_ASSERT_VECTOR_TYPE_EQUAL VEC1,
VEC2,
RVAL   ) 
 

Value:

if (VEC1->type.type != VEC2->type.type) { \
    psError(PS_ERR_BAD_PARAMETER_SIZE, true, \
            "psVector %s has size %d, psVector %s has size %d.", \
            #VEC1, VEC1->type.type, #VEC2, VEC2->type.type); \
    return(RVAL); \
}

Definition at line 316 of file psConstants.h.

#define PS_ASSERT_VECTOR_TYPE_F32_OR_F64 NAME,
RVAL   ) 
 

Value:

if (((NAME)->type.type != PS_TYPE_F32) && ((NAME)->type.type != PS_TYPE_F64)) { \
    psError(PS_ERR_BAD_PARAMETER_TYPE, true, \
            "psVector %s: bad type(%d)", \
            #NAME, NAME->type.type); \
    return(RVAL); \
} \

Definition at line 276 of file psConstants.h.

#define PS_ASSERT_VECTOR_TYPE_S16_S32_F32 NAME,
RVAL   ) 
 

Value:

if (((NAME)->type.type != PS_TYPE_S16) && ((NAME)->type.type != PS_TYPE_S32) && ((NAME)->type.type != PS_TYPE_F32)) { \
    psError(PS_ERR_BAD_PARAMETER_TYPE, true, \
            "psVector %s: bad type(%d)", \
            #NAME, NAME->type.type); \
    return(RVAL); \
} \

Definition at line 284 of file psConstants.h.

#define PS_ASSERT_VECTORS_SIZE_EQUAL VEC1,
VEC2,
RVAL   ) 
 

Value:

if (VEC1->n != VEC2->n) { \
    psError(PS_ERR_BAD_PARAMETER_SIZE, true, \
            "psVector %s has size %d, psVector %s has size %d.", \
            #VEC1, VEC1->n, #VEC2, VEC2->n); \
    return(RVAL); \
}

Definition at line 300 of file psConstants.h.

#define PS_DETERMINE_BRACKET_STEP_SIZE   0.10
 

Definition at line 33 of file psConstants.h.

#define PS_FLOAT_COMPARE NAME1,
NAME2,
RVAL   ) 
 

Value:

if ((NAME1) > (NAME2)) { \
    psError(PS_ERR_BAD_PARAMETER_VALUE, true, \
            "Error: (%s > %s) (%f %f)", \
            #NAME1, #NAME2, NAME1, NAME2); \
    return(RVAL); \
}

Definition at line 156 of file psConstants.h.

#define PS_IMAGE_PRINT_F32 NAME   ) 
 

Value:

printf("======== printing %s ========\n", #NAME); \
for (int i = 0 ; i < (NAME)->numRows ; i++) { \
    for (int j = 0 ; j < (NAME)->numCols ; j++) { \
        printf("%.2f ", (NAME)->data.F32[i][j]); \
    } \
    printf("\n"); \
}\

Definition at line 592 of file psConstants.h.

#define PS_IMAGE_SET_F32 NAME,
VALUE   ) 
 

Value:

for (int i = 0 ; i < (NAME)->numRows ; i++) { \
    for (int j = 0 ; j < (NAME)->numCols ; j++) { \
        (NAME)->data.F32[i][j] = (VALUE); \
    } \
}\

Definition at line 657 of file psConstants.h.

#define PS_IMAGE_SET_F64 NAME,
VALUE   ) 
 

Value:

for (int i = 0 ; i < (NAME)->numRows ; i++) { \
    for (int j = 0 ; j < (NAME)->numCols ; j++) { \
        (NAME)->data.F64[i][j] = (VALUE); \
    } \
}\

Definition at line 664 of file psConstants.h.

#define PS_IMAGE_SET_S16 NAME,
VALUE   ) 
 

Value:

for (int i = 0 ; i < (NAME)->numRows ; i++) { \
    for (int j = 0 ; j < (NAME)->numCols ; j++) { \
        (NAME)->data.S16[i][j] = (VALUE); \
    } \
}\

Definition at line 636 of file psConstants.h.

#define PS_IMAGE_SET_S32 NAME,
VALUE   ) 
 

Value:

for (int i = 0 ; i < (NAME)->numRows ; i++) { \
    for (int j = 0 ; j < (NAME)->numCols ; j++) { \
        (NAME)->data.S32[i][j] = (VALUE); \
    } \
}\

Definition at line 643 of file psConstants.h.

#define PS_IMAGE_SET_S64 NAME,
VALUE   ) 
 

Value:

for (int i = 0 ; i < (NAME)->numRows ; i++) { \
    for (int j = 0 ; j < (NAME)->numCols ; j++) { \
        (NAME)->data.S64[i][j] = (VALUE); \
    } \
}\

Definition at line 650 of file psConstants.h.

#define PS_IMAGE_SET_S8 NAME,
VALUE   ) 
 

Value:

for (int i = 0 ; i < (NAME)->numRows ; i++) { \
    for (int j = 0 ; j < (NAME)->numCols ; j++) { \
        (NAME)->data.S8[i][j] = (VALUE); \
    } \
}\

Definition at line 629 of file psConstants.h.

#define PS_IMAGE_SET_U16 NAME,
VALUE   ) 
 

Value:

for (int i = 0 ; i < (NAME)->numRows ; i++) { \
    for (int j = 0 ; j < (NAME)->numCols ; j++) { \
        (NAME)->data.U16[i][j] = (VALUE); \
    } \
}\

Definition at line 608 of file psConstants.h.

#define PS_IMAGE_SET_U32 NAME,
VALUE   ) 
 

Value:

for (int i = 0 ; i < (NAME)->numRows ; i++) { \
    for (int j = 0 ; j < (NAME)->numCols ; j++) { \
        (NAME)->data.U32[i][j] = (VALUE); \
    } \
}\

Definition at line 615 of file psConstants.h.

#define PS_IMAGE_SET_U64 NAME,
VALUE   ) 
 

Value:

for (int i = 0 ; i < (NAME)->numRows ; i++) { \
    for (int j = 0 ; j < (NAME)->numCols ; j++) { \
        (NAME)->data.U64[i][j] = (VALUE); \
    } \
}\

Definition at line 622 of file psConstants.h.

#define PS_IMAGE_SET_U8 NAME,
VALUE   ) 
 

Value:

for (int i = 0 ; i < (NAME)->numRows ; i++) { \
    for (int j = 0 ; j < (NAME)->numCols ; j++) { \
        (NAME)->data.U8[i][j] = (VALUE); \
    } \
}\

Definition at line 601 of file psConstants.h.

#define PS_INT_COMPARE NAME1,
NAME2,
RVAL   ) 
 

Value:

if ((NAME1) > (NAME2)) { \
    psError(PS_ERR_BAD_PARAMETER_VALUE, true, \
            "Error: (%s > %s) (%d %d).", \
            #NAME1, #NAME2, NAME1, NAME2); \
    return(RVAL); \
}

Definition at line 146 of file psConstants.h.

#define PS_LEFT_SPLINE_DERIV   0.0
 

Definition at line 36 of file psConstants.h.

#define PS_MAX A,
 )     (((A) > (B)) ? (A) : (B))
 

Definition at line 699 of file psConstants.h.

#define PS_MAX_LMM_ITERATIONS   100
 

Definition at line 34 of file psConstants.h.

#define PS_MAX_MINIMIZE_ITERATIONS   100
 

Definition at line 35 of file psConstants.h.

#define PS_MIN A,
 )     (((A) < (B)) ? (A) : (B))
 

Definition at line 702 of file psConstants.h.

#define PS_POLY_1D_D_DECLARE_ALLOC_STATIC NAME,
ORDER,
TYPE   ) 
 

Value:

static psPolynomial1D *(NAME) = NULL; \
if ((NAME) == NULL) { \
    (NAME) = psPolynomial1DAlloc(ORDER, TYPE); \
    p_psMemSetPersistent((NAME), true); \
} \

Definition at line 517 of file psConstants.h.

#define PS_POLY_1D_DECLARE_ALLOC_STATIC NAME,
ORDER,
TYPE   ) 
 

Value:

static psPolynomial1D *(NAME) = NULL; \
if ((NAME) == NULL) { \
    (NAME) = psPolynomial1DAlloc(ORDER, TYPE); \
    p_psMemSetPersistent((NAME), true); \
    p_psMemSetPersistent((NAME)->coeff, true); \
    p_psMemSetPersistent((NAME)->coeffErr, true); \
    p_psMemSetPersistent((NAME)->mask, true); \
} \

Definition at line 486 of file psConstants.h.

#define PS_POLY_2D_D_DECLARE_ALLOC_STATIC NAME,
ORDER,
TYPE   ) 
 

Value:

static psPolynomial2D *(NAME) = NULL; \
if ((NAME) == NULL) { \
    (NAME) = psPolynomial2DAlloc(ORDER, TYPE); \
    p_psMemSetPersistent((NAME), true); \
} \

Definition at line 524 of file psConstants.h.

#define PS_POLY_2D_DECLARE_ALLOC_STATIC NAME,
ORDER,
TYPE   ) 
 

Value:

static psPolynomial2D *(NAME) = NULL; \
if ((NAME) == NULL) { \
    (NAME) = psPolynomial2DAlloc(ORDER, TYPE); \
    p_psMemSetPersistent((NAME), true); \
} \

Definition at line 496 of file psConstants.h.

#define PS_POLY_3D_D_DECLARE_ALLOC_STATIC NAME,
ORDER,
TYPE   ) 
 

Value:

static psPolynomial3D *(NAME) = NULL; \
if ((NAME) == NULL) { \
    (NAME) = psPolynomial3DAlloc(ORDER, TYPE); \
    p_psMemSetPersistent((NAME), true); \
} \

Definition at line 531 of file psConstants.h.

#define PS_POLY_3D_DECLARE_ALLOC_STATIC NAME,
ORDER,
TYPE   ) 
 

Value:

static psPolynomial3D *(NAME) = NULL; \
if ((NAME) == NULL) { \
    (NAME) = psPolynomial3DAlloc(ORDER, TYPE); \
    p_psMemSetPersistent((NAME), true); \
} \

Definition at line 503 of file psConstants.h.

#define PS_POLY_4D_D_DECLARE_ALLOC_STATIC NAME,
ORDER,
TYPE   ) 
 

Value:

static psPolynomial4D *(NAME) = NULL; \
if ((NAME) == NULL) { \
    (NAME) = psPolynomial4DAlloc(ORDER, TYPE); \
    p_psMemSetPersistent((NAME), true); \
} \

Definition at line 538 of file psConstants.h.

#define PS_POLY_4D_DECLARE_ALLOC_STATIC NAME,
ORDER,
TYPE   ) 
 

Value:

static psPolynomial4D *(NAME) = NULL; \
if ((NAME) == NULL) { \
    (NAME) = psPolynomial4DAlloc(ORDER, TYPE); \
    p_psMemSetPersistent((NAME), true); \
} \

Definition at line 510 of file psConstants.h.

#define PS_RIGHT_SPLINE_DERIV   0.0
 

Definition at line 37 of file psConstants.h.

#define PS_SQR  )     ((A) * (A))
 

Definition at line 705 of file psConstants.h.

#define PS_VECTOR_CONVERT_F32_TO_F64_STATIC OLD,
NEW_PTR64,
NEW_STATIC64   ) 
 

Value:

if (OLD->type.type == PS_TYPE_F64) { \
    NEW_PTR64 = (psVector *) OLD; \
} else if (OLD->type.type == PS_TYPE_F32) { \
    NEW_STATIC64 = psVectorRecycle(NEW_STATIC64, OLD->n, PS_TYPE_F64); \
    p_psMemSetPersistent(NEW_STATIC64, true); \
    p_psMemSetPersistent(NEW_STATIC64->data.U8, true); \
    for (i=0; i < OLD->n ; i++) { \
        NEW_STATIC64->data.F64[i] = (double) OLD->data.F32[i]; \
    } \
    NEW_PTR64 = NEW_STATIC64; \
} \

Definition at line 356 of file psConstants.h.

#define PS_VECTOR_CONVERT_F64_TO_F32_STATIC OLD,
NEW_PTR32,
NEW_STATIC32   ) 
 

Value:

if (OLD->type.type == PS_TYPE_F32) { \
    NEW_PTR32 = (psVector *) OLD; \
} else if (OLD->type.type == PS_TYPE_F64) { \
    NEW_STATIC32 = psVectorRecycle(NEW_STATIC32, OLD->n, PS_TYPE_F32); \
    p_psMemSetPersistent(NEW_STATIC32, true); \
    p_psMemSetPersistent(NEW_STATIC32->data.U8, true); \
    for (i=0; i < OLD->n ; i++) { \
        NEW_STATIC32->data.F32[i] = (float) OLD->data.F64[i]; \
    } \
    NEW_PTR32 = NEW_STATIC32; \
} \

Definition at line 343 of file psConstants.h.

#define PS_VECTOR_DECLARE_ALLOC_STATIC NAME,
SIZE,
TYPE   ) 
 

Value:

static psVector *(NAME) = NULL; \
if ((NAME) == NULL) { \
    (NAME) = psVectorAlloc(SIZE, TYPE); \
    p_psMemSetPersistent((NAME), true); \
} \

Definition at line 407 of file psConstants.h.

#define PS_VECTOR_F32_TO_F64 X32,
X64   ) 
 

Value:

psVector *X64 = psVectorAlloc(X32->n, PS_TYPE_F64); \
for (int i=0;i<X32->n;i++) { \
    X64->data.F64[i] = (float) X32->data.F32[i]; \
} \

Definition at line 330 of file psConstants.h.

#define PS_VECTOR_F64_TO_F32 X64,
X32   ) 
 

Value:

psVector *X32 = psVectorAlloc(X64->n, PS_TYPE_F32); \
for (int i=0;i<X64->n;i++) { \
    X32->data.F32[i] = (float) X64->data.F64[i]; \
} \

Definition at line 324 of file psConstants.h.

#define PS_VECTOR_GEN_STATIC_RECYCLED NAME,
SIZE,
TYPE   ) 
 

Value:

static psVector *NAME = NULL; \
(NAME) = psVectorRecycle((NAME), SIZE, TYPE); \
p_psMemSetPersistent((NAME), true); \
p_psMemSetPersistent((NAME)->data.U8, true); \

Definition at line 401 of file psConstants.h.

#define PS_VECTOR_GEN_X_INDEX_STATIC_F32 VEC,
 ) 
 

Value:

VEC = psVectorRecycle(VEC, N, PS_TYPE_F32); \
p_psMemSetPersistent(VEC, true); \
p_psMemSetPersistent(VEC->data.U8, true); \
for (int i=0;i<N;i++) { \
    VEC->data.F32[i] = (float) i; \
} \

Definition at line 385 of file psConstants.h.

#define PS_VECTOR_GEN_X_INDEX_STATIC_F64 VEC,
 ) 
 

Value:

VEC = psVectorRecycle(VEC, N, PS_TYPE_F64); \
p_psMemSetPersistent(VEC, true); \
p_psMemSetPersistent(VEC->data.U8, true); \
for (int i=0;i<N;i++) { \
    VEC->data.F64[i] = (float) i; \
} \

Definition at line 393 of file psConstants.h.

#define PS_VECTOR_GEN_YERR_STATIC_F32 VEC,
 ) 
 

Value:

VEC = psVectorRecycle(VEC, N, PS_TYPE_F32); \
p_psMemSetPersistent(VEC, true); \
p_psMemSetPersistent(VEC->data.U8, true); \
for (int i=0;i<N;i++) { \
    VEC->data.F32[i] = 1.0; \
} \

Definition at line 369 of file psConstants.h.

#define PS_VECTOR_GEN_YERR_STATIC_F64 VEC,
 ) 
 

Value:

VEC = psVectorRecycle(VEC, N, PS_TYPE_F64); \
p_psMemSetPersistent(VEC, true); \
p_psMemSetPersistent(VEC->data.U8, true); \
for (int i=0;i<N;i++) { \
    VEC->data.F64[i] = 1.0; \
} \

Definition at line 377 of file psConstants.h.

#define PS_VECTOR_PRINT_F32 NAME   ) 
 

Value:

for (int my_i=0;my_i<(NAME)->n;my_i++) { \
    printf("%s->data.F32[%d] is %f\n", #NAME, my_i, (NAME)->data.F32[my_i]); \
} \
printf("\n"); \

Definition at line 336 of file psConstants.h.

#define PS_VECTOR_SET_F32 NAME,
VALUE   ) 
 

Value:

for (int i = 0 ; i < (NAME)->n ; i++) { \
    (NAME)->data.F32[i] = VALUE; \
}\

Definition at line 459 of file psConstants.h.

#define PS_VECTOR_SET_F64 NAME,
VALUE   ) 
 

Value:

for (int i = 0 ; i < (NAME)->n ; i++) { \
    (NAME)->data.F64[i] = VALUE; \
}\

Definition at line 454 of file psConstants.h.

#define PS_VECTOR_SET_S16 NAME,
VALUE   ) 
 

Value:

for (int i = 0 ; i < (NAME)->n ; i++) { \
    (NAME)->data.S16[i] = VALUE; \
}\

Definition at line 439 of file psConstants.h.

#define PS_VECTOR_SET_S32 NAME,
VALUE   ) 
 

Value:

for (int i = 0 ; i < (NAME)->n ; i++) { \
    (NAME)->data.S32[i] = VALUE; \
}\

Definition at line 444 of file psConstants.h.

#define PS_VECTOR_SET_S64 NAME,
VALUE   ) 
 

Value:

for (int i = 0 ; i < (NAME)->n ; i++) { \
    (NAME)->data.S64[i] = VALUE; \
}\

Definition at line 449 of file psConstants.h.

#define PS_VECTOR_SET_S8 NAME,
VALUE   ) 
 

Value:

for (int i = 0 ; i < (NAME)->n ; i++) { \
    (NAME)->data.S8[i] = VALUE; \
}\

Definition at line 434 of file psConstants.h.

#define PS_VECTOR_SET_U16 NAME,
VALUE   ) 
 

Value:

for (int i = 0 ; i < (NAME)->n ; i++) { \
    (NAME)->data.U16[i] = VALUE; \
}\

Definition at line 419 of file psConstants.h.

#define PS_VECTOR_SET_U32 NAME,
VALUE   ) 
 

Value:

for (int i = 0 ; i < (NAME)->n ; i++) { \
    (NAME)->data.U32[i] = VALUE; \
}\

Definition at line 424 of file psConstants.h.

#define PS_VECTOR_SET_U64 NAME,
VALUE   ) 
 

Value:

for (int i = 0 ; i < (NAME)->n ; i++) { \
    (NAME)->data.U64[i] = VALUE; \
}\

Definition at line 429 of file psConstants.h.

#define PS_VECTOR_SET_U8 NAME,
VALUE   ) 
 

Value:

for (int i = 0 ; i < (NAME)->n ; i++) { \
    (NAME)->data.U8[i] = VALUE; \
}\

Definition at line 414 of file psConstants.h.

#define RAD_TO_DEG RADIANS   )     ((RADIANS) * 180.0 / M_PI)
 

Definition at line 52 of file psConstants.h.

#define RAD_TO_MIN RADIANS   )     ((RADIANS) * 180.0 * 60.0 / M_PI)
 

Definition at line 53 of file psConstants.h.

#define RAD_TO_SEC RADIANS   )     ((RADIANS) * 180.0 * 60.0 * 60.0 / M_PI)
 

Definition at line 54 of file psConstants.h.

#define SEC_TO_RAD SECONDS   )     ((SECONDS) * M_PI / (180.0 * 60.0 * 60.0))
 

Definition at line 51 of file psConstants.h.


Generated on Wed Jun 15 11:00:59 2005 for Pan-STARRS Foundation Library by  doxygen 1.4.1