IPP Software Navigation Tools IPP Links Communication Pan-STARRS Links

Ignore:
Timestamp:
Nov 4, 2021, 6:10:51 PM (5 years ago)
Author:
eugene
Message:

merge changes from eam_branches/ipp-dev-20210817 (fix chebyshevs 1D, 2D, set DB field to NULL for inf, psFitsTableNew)

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/psLib/src/db/psDB.c

    r40290 r41896  
    28752875
    28762876    switch (pType) {
    2877     case PS_DATA_S8:
     2877      case PS_DATA_S8:
    28782878        isNaN = PS_IS_NAN(psS8, data, PS_MAX_S8);
    28792879        break;
    2880     case PS_DATA_S16:
     2880      case PS_DATA_S16:
    28812881        isNaN = PS_IS_NAN(psS16, data, PS_MAX_S16);
    28822882        break;
    2883     case PS_DATA_S32:
     2883      case PS_DATA_S32:
    28842884        isNaN = PS_IS_NAN(psS32, data, PS_MAX_S32);
    28852885        break;
    2886     case PS_DATA_S64:
     2886      case PS_DATA_S64:
    28872887        isNaN = PS_IS_NAN(psS64, data, PS_MAX_S64);
    28882888        break;
    2889     case PS_DATA_U8:
     2889      case PS_DATA_U8:
    28902890        isNaN = PS_IS_NAN(psU8, data, PS_MAX_U8);
    28912891        break;
    2892     case PS_DATA_U16:
     2892      case PS_DATA_U16:
    28932893        isNaN = PS_IS_NAN(psU16, data, PS_MAX_U16);
    28942894        break;
    2895     case PS_DATA_U32:
     2895      case PS_DATA_U32:
    28962896        isNaN = PS_IS_NAN(psU32, data, PS_MAX_U32);
    28972897        break;
    2898     case PS_DATA_U64:
     2898      case PS_DATA_U64:
    28992899        isNaN = PS_IS_NAN(psU64, data, PS_MAX_U64);
    29002900        break;
    2901     case PS_DATA_F32:
    2902       isNaN = isnan(*((psF32 *) data));
    2903       break;
    2904     case PS_DATA_F64:
    2905       isNaN = isnan(*((psF64 *) data));
    2906       break;
    2907     case PS_DATA_BOOL:
    2908         // XXX: what is NaN for a bool?
    2909         isNaN = PS_IS_NAN(psU8, data, PS_MAX_U8);
     2901      case PS_DATA_F32:
     2902        isNaN = !isfinite(*((psF32 *) data)); // trap nan, +inf, -inf
     2903        break;
     2904      case PS_DATA_F64:
     2905        isNaN = !isfinite(*((psF64 *) data)); // trap nan, +inf, -inf
     2906        break;
     2907      case PS_DATA_BOOL:
     2908        isNaN = PS_IS_NAN(psU8, data, PS_MAX_U8); // probably meaningless
    29102909        break;
    29112910    }
Note: See TracChangeset for help on using the changeset viewer.