IPP Software Navigation Tools IPP Links Communication Pan-STARRS Links

Ignore:
Timestamp:
Jul 5, 2005, 5:04:35 PM (21 years ago)
Author:
drobbin
Message:

made changes based on revisions in psLib SDRS rev. 15

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/psLib/src/dataIO/psLookupTable.c

    r4392 r4457  
    77*  @author Ross Harman, MHPCC
    88*
    9 *  @version $Revision: 1.21 $ $Name: not supported by cvs2svn $
    10 *  @date $Date: 2005-06-25 02:02:05 $
     9*  @version $Revision: 1.22 $ $Name: not supported by cvs2svn $
     10*  @date $Date: 2005-07-06 03:04:35 $
    1111*
    1212*  Copyright 2004-2005 Maui High Performance Computing Center, Univ. of Hawaii
     
    275275
    276276    // Valid ranges. Automatically set by table read if both zero.
    277     outTable->validFrom = 0;
    278     outTable->validTo = 0;
     277    *(double *)&outTable->validFrom = 0;
     278    *(double *)&outTable->validTo = 0;
    279279    outTable->indexCol = indexCol;
    280280
     
    291291switch (TABLE->index->type.type) {                                              \
    292292case PS_TYPE_U8:                                                                \
    293     TABLE->validFrom = (psF64)TABLE->index->data.U8[0];                         \
    294     TABLE->validTo   = (psF64)TABLE->index->data.U8[TABLE->index->n-1];         \
     293    *(double *)&TABLE->validFrom = (psF64)TABLE->index->data.U8[0];                         \
     294    *(double *)&TABLE->validTo   = (psF64)TABLE->index->data.U8[TABLE->index->n-1];         \
    295295    break;                                                                      \
    296296case PS_TYPE_S8:                                                                \
    297     TABLE->validFrom = (psF64)TABLE->index->data.S8[0];                         \
    298     TABLE->validTo   = (psF64)TABLE->index->data.S8[TABLE->index->n-1];         \
     297    *(double *)&TABLE->validFrom = (psF64)TABLE->index->data.S8[0];                         \
     298    *(double *)&TABLE->validTo   = (psF64)TABLE->index->data.S8[TABLE->index->n-1];         \
    299299    break;                                                                      \
    300300case PS_TYPE_U16:                                                               \
    301     TABLE->validFrom = (psF64)TABLE->index->data.U16[0];                        \
    302     TABLE->validTo   = (psF64)TABLE->index->data.U16[TABLE->index->n-1];        \
     301    *(double *)&TABLE->validFrom = (psF64)TABLE->index->data.U16[0];                        \
     302    *(double *)&TABLE->validTo   = (psF64)TABLE->index->data.U16[TABLE->index->n-1];        \
    303303    break;                                                                      \
    304304case PS_TYPE_S16:                                                               \
    305     TABLE->validFrom = (psF64)TABLE->index->data.S16[0];                        \
    306     TABLE->validTo   = (psF64)TABLE->index->data.S16[TABLE->index->n-1];        \
     305    *(double *)&TABLE->validFrom = (psF64)TABLE->index->data.S16[0];                        \
     306    *(double *)&TABLE->validTo   = (psF64)TABLE->index->data.S16[TABLE->index->n-1];        \
    307307    break;                                                                      \
    308308case PS_TYPE_U32:                                                               \
    309     TABLE->validFrom = (psF64)TABLE->index->data.U32[0];                        \
    310     TABLE->validTo   = (psF64)TABLE->index->data.U32[TABLE->index->n-1];        \
     309    *(double *)&TABLE->validFrom = (psF64)TABLE->index->data.U32[0];                        \
     310    *(double *)&TABLE->validTo   = (psF64)TABLE->index->data.U32[TABLE->index->n-1];        \
    311311    break;                                                                      \
    312312case PS_TYPE_S32:                                                               \
    313     TABLE->validFrom = (psF64)TABLE->index->data.S32[0];                        \
    314     TABLE->validTo   = (psF64)TABLE->index->data.S32[TABLE->index->n-1];        \
     313    *(double *)&TABLE->validFrom = (psF64)TABLE->index->data.S32[0];                        \
     314    *(double *)&TABLE->validTo   = (psF64)TABLE->index->data.S32[TABLE->index->n-1];        \
    315315    break;                                                                      \
    316316case PS_TYPE_U64:                                                               \
    317     TABLE->validFrom = (psF64)TABLE->index->data.U64[0];                        \
    318     TABLE->validTo   = (psF64)TABLE->index->data.U64[TABLE->index->n-1];        \
     317    *(double *)&TABLE->validFrom = (psF64)TABLE->index->data.U64[0];                        \
     318    *(double *)&TABLE->validTo   = (psF64)TABLE->index->data.U64[TABLE->index->n-1];        \
    319319    break;                                                                      \
    320320case PS_TYPE_S64:                                                               \
    321     TABLE->validFrom = (psF64)TABLE->index->data.S64[0];                        \
    322     TABLE->validTo   = (psF64)TABLE->index->data.S64[TABLE->index->n-1];        \
     321    *(double *)&TABLE->validFrom = (psF64)TABLE->index->data.S64[0];                        \
     322    *(double *)&TABLE->validTo   = (psF64)TABLE->index->data.S64[TABLE->index->n-1];        \
    323323    break;                                                                      \
    324324case PS_TYPE_F32:                                                               \
    325     TABLE->validFrom = (psF64)TABLE->index->data.F32[0];                        \
    326     TABLE->validTo   = (psF64)TABLE->index->data.F32[TABLE->index->n-1];        \
     325    *(double *)&TABLE->validFrom = (psF64)TABLE->index->data.F32[0];                        \
     326    *(double *)&TABLE->validTo   = (psF64)TABLE->index->data.F32[TABLE->index->n-1];        \
    327327    break;                                                                      \
    328328case PS_TYPE_F64:                                                               \
    329     TABLE->validFrom = (psF64)TABLE->index->data.F64[0];                        \
    330     TABLE->validTo   = (psF64)TABLE->index->data.F64[TABLE->index->n-1];        \
     329    *(double *)&TABLE->validFrom = (psF64)TABLE->index->data.F64[0];                        \
     330    *(double *)&TABLE->validTo   = (psF64)TABLE->index->data.F64[TABLE->index->n-1];        \
    331331    break;                                                                      \
    332332default:                                                                        \
    333     TABLE->validFrom = (psF64)0;                                                \
    334     TABLE->validTo   = (psF64)0;                                                \
     333    *(double *)&TABLE->validFrom = (psF64)0;                                                \
     334    *(double *)&TABLE->validTo   = (psF64)0;                                                \
    335335    break;                                                                      \
    336336}
     
    641641long psLookupTableRead(psLookupTable* table)
    642642{
    643     psS32           numRows  = 0;
     643    long            numRows  = 0;
    644644    psArray*        vectors  = NULL;
    645645    psLookupTable*  outTable = NULL;
     
    745745}
    746746
    747 psF64 psLookupTableInterpolate(const psLookupTable *table, psF64 index, psS32 column)
     747double psLookupTableInterpolate(const psLookupTable *table, double index, long column)
    748748{
    749749    psU64 hiIdx = 0;
    750750    psU64 loIdx = 0;
    751     psU64 numRows = 0;
    752     psU64 numCols = 0;
     751    long numRows = 0;
     752    long numCols = 0;
    753753    psF64 out = 0.0;
    754754    psF64 denom = 0.0;
     
    818818}
    819819
    820 psVector* psLookupTableInterpolateAll(psLookupTable *table, psF64 index)
    821 {
    822     psU64 numCols = 0;
     820psVector* psLookupTableInterpolateAll(const psLookupTable *table, double index)
     821{
     822    long numCols = 0;
    823823    psVector *outVector = NULL;
    824824
Note: See TracChangeset for help on using the changeset viewer.