IPP Software Navigation Tools IPP Links Communication Pan-STARRS Links

Changeset 6909


Ignore:
Timestamp:
Apr 19, 2006, 10:36:42 AM (20 years ago)
Author:
magnier
Message:

added U8,U16,U32,S8,S16 types

Location:
trunk/psModules/src/pslib
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/psModules/src/pslib/psMetadataItemParse.c

    r6892 r6909  
    4141                "--- treating as NaN.\n", item->name, item->comment, item->type);
    4242        return NAN;
     43    }
     44}
     45
     46psU8 psMetadataItemParseS8(psMetadataItem *item
     47                          )
     48{
     49    switch (item->type) {
     50        PS_METADATA_ITEM_PARSE_NUMBER (F32, U8);
     51        PS_METADATA_ITEM_PARSE_NUMBER (F64, U8);
     52        PS_METADATA_ITEM_PARSE_NUMBER (S8,  U8);
     53        PS_METADATA_ITEM_PARSE_NUMBER (S16, U8);
     54        PS_METADATA_ITEM_PARSE_NUMBER (S32, U8);
     55        PS_METADATA_ITEM_PARSE_NUMBER (U8,  U8);
     56        PS_METADATA_ITEM_PARSE_NUMBER (U16, U8);
     57        PS_METADATA_ITEM_PARSE_NUMBER (U32, U8);
     58    default:
     59        psError(PS_ERR_IO, true, "Item %s (%s) is not of integer type (%x) --- treating as zero.\n",
     60                item->name, item->comment, item->type);
     61        return 0;
     62    }
     63}
     64
     65psU16 psMetadataItemParseS16(psMetadataItem *item
     66                            )
     67{
     68    switch (item->type) {
     69        PS_METADATA_ITEM_PARSE_NUMBER (F32, U16);
     70        PS_METADATA_ITEM_PARSE_NUMBER (F64, U16);
     71        PS_METADATA_ITEM_PARSE_NUMBER (S8,  U16);
     72        PS_METADATA_ITEM_PARSE_NUMBER (S16, U16);
     73        PS_METADATA_ITEM_PARSE_NUMBER (S32, U16);
     74        PS_METADATA_ITEM_PARSE_NUMBER (U8,  U16);
     75        PS_METADATA_ITEM_PARSE_NUMBER (U16, U16);
     76        PS_METADATA_ITEM_PARSE_NUMBER (U32, U16);
     77    default:
     78        psError(PS_ERR_IO, true, "Item %s (%s) is not of integer type (%x) --- treating as zero.\n",
     79                item->name, item->comment, item->type);
     80        return 0;
     81    }
     82}
     83
     84psU32 psMetadataItemParseS16(psMetadataItem *item
     85                            )
     86{
     87    switch (item->type) {
     88        PS_METADATA_ITEM_PARSE_NUMBER (F32, U32);
     89        PS_METADATA_ITEM_PARSE_NUMBER (F64, U32);
     90        PS_METADATA_ITEM_PARSE_NUMBER (S8,  U32);
     91        PS_METADATA_ITEM_PARSE_NUMBER (S16, U32);
     92        PS_METADATA_ITEM_PARSE_NUMBER (S32, U32);
     93        PS_METADATA_ITEM_PARSE_NUMBER (U8,  U32);
     94        PS_METADATA_ITEM_PARSE_NUMBER (U16, U32);
     95        PS_METADATA_ITEM_PARSE_NUMBER (U32, U32);
     96    default:
     97        psError(PS_ERR_IO, true, "Item %s (%s) is not of integer type (%x) --- treating as zero.\n",
     98                item->name, item->comment, item->type);
     99        return 0;
     100    }
     101}
     102
     103psS8 psMetadataItemParseS8(psMetadataItem *item
     104                          )
     105{
     106    switch (item->type) {
     107        PS_METADATA_ITEM_PARSE_NUMBER(F32, S8);
     108        PS_METADATA_ITEM_PARSE_NUMBER(F64, S8);
     109        PS_METADATA_ITEM_PARSE_NUMBER(S8,  S8);
     110        PS_METADATA_ITEM_PARSE_NUMBER(S16, S8);
     111        PS_METADATA_ITEM_PARSE_NUMBER(S32, S8);
     112        PS_METADATA_ITEM_PARSE_NUMBER(U8,  S8);
     113        PS_METADATA_ITEM_PARSE_NUMBER(U16, S8);
     114        PS_METADATA_ITEM_PARSE_NUMBER(U32, S8);
     115    default:
     116        psError(PS_ERR_IO, true, "Item %s (%s) is not of integer type (%x) --- treating as zero.\n",
     117                item->name, item->comment, item->type);
     118        return 0;
     119    }
     120}
     121
     122psS16 psMetadataItemParseS16(psMetadataItem *item
     123                            )
     124{
     125    switch (item->type) {
     126        PS_METADATA_ITEM_PARSE_NUMBER(F32, S16);
     127        PS_METADATA_ITEM_PARSE_NUMBER(F64, S16);
     128        PS_METADATA_ITEM_PARSE_NUMBER(S8,  S16);
     129        PS_METADATA_ITEM_PARSE_NUMBER(S16, S16);
     130        PS_METADATA_ITEM_PARSE_NUMBER(S32, S16);
     131        PS_METADATA_ITEM_PARSE_NUMBER(U8,  S16);
     132        PS_METADATA_ITEM_PARSE_NUMBER(U16, S16);
     133        PS_METADATA_ITEM_PARSE_NUMBER(U32, S16);
     134    default:
     135        psError(PS_ERR_IO, true, "Item %s (%s) is not of integer type (%x) --- treating as zero.\n",
     136                item->name, item->comment, item->type);
     137        return 0;
    43138    }
    44139}
  • trunk/psModules/src/pslib/psMetadataItemParse.h

    r6872 r6909  
    44#include "pslib.h"
    55
    6 psF32 psMetadataItemParseF32(psMetadataItem *item
    7                             );
    8 psF64 psMetadataItemParseF64(psMetadataItem *item
    9                             );
    10 psS32 psMetadataItemParseS32(psMetadataItem *item
    11                             );
    12 psString psMetadataItemParseString(psMetadataItem *item
    13                                   );
     6psF32 psMetadataItemParseF32(psMetadataItem *item);
     7psF64 psMetadataItemParseF64(psMetadataItem *item);
     8
     9psS8  psMetadataItemParseS8 (psMetadataItem *item);
     10psS16 psMetadataItemParseS16(psMetadataItem *item);
     11psS32 psMetadataItemParseS32(psMetadataItem *item);
     12
     13psU8  psMetadataItemParseU8 (psMetadataItem *item);
     14psU16 psMetadataItemParseU16(psMetadataItem *item);
     15psU32 psMetadataItemParseU32(psMetadataItem *item);
     16
     17psString psMetadataItemParseString(psMetadataItem *item);
    1418
    1519#endif
Note: See TracChangeset for help on using the changeset viewer.