IPP Software Navigation Tools IPP Links Communication Pan-STARRS Links

Ignore:
Timestamp:
Dec 7, 2004, 9:09:18 AM (22 years ago)
Author:
harman
Message:

Added new functions in SDRS 10

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/psLib/src/collections/psMetadata.c

    r2607 r2648  
    1212*  @author Ross Harman, MHPCC
    1313*
    14 *  @version $Revision: 1.39 $ $Name: not supported by cvs2svn $
    15 *  @date $Date: 2004-12-03 23:14:28 $
     14*  @version $Revision: 1.40 $ $Name: not supported by cvs2svn $
     15*  @date $Date: 2004-12-07 19:09:05 $
    1616*
    1717*  Copyright 2004 Maui High Performance Computing Center, University of Hawaii
     
    218218}
    219219
    220 psBool psMetadataAddItem(psMetadata *restrict md, psMetadataItem *restrict metadataItem, psS32 location)
     220psBool psMetadataAddItem(psMetadata *md, psMetadataItem *metadataItem, psS32 location)
    221221{
    222222    char * key = NULL;
     
    328328}
    329329
    330 psBool psMetadataAdd(psMetadata* restrict md, psS32 where, const char *name, psElemType pType,
     330psBool psMetadataAdd(psMetadata *md, psS32 where, const char *name, psElemType pType,
    331331                     psMetadataType type, const char *comment, ...)
    332332{
     
    349349}
    350350
    351 psBool psMetadataRemove(psMetadata* restrict md, psS32 where, const char *restrict key)
     351psBool psMetadataRemove(psMetadata *md, psS32 where, const char *key)
    352352{
    353353    psList* mdList = NULL;
     
    421421}
    422422
    423 psMetadataItem* psMetadataLookup(psMetadata* restrict md, const char *restrict key)
     423psMetadataItem* psMetadataLookup(psMetadata *md, const char *key)
    424424{
    425425    psHash* mdTable = NULL;
     
    432432
    433433    mdTable = md->table;
    434 
    435434    entry = (psMetadataItem*)psHashLookup(mdTable, key);
    436     if (entry == NULL) {
    437         return NULL;
    438     }
    439435
    440436    return entry;
    441437}
    442438
    443 psMetadataItem* psMetadataGet(psMetadata* restrict md, psS32 where)
     439void* psMetadataLookupPtr(psMetadata *md, const char *key)
     440{
     441    void *value = NULL;
     442    psElemType pType;
     443    psMetadataItem *metadataItem = NULL;
     444
     445
     446    metadataItem = psMetadataLookup(md, key);
     447    PS_PTR_CHECK_NULL(metadataItem,NULL);
     448    pType = metadataItem->pType;
     449    value = metadataItem->data.V;
     450    if(pType != PS_TYPE_PTR) {
     451        psError(PS_ERR_BAD_PARAMETER_VALUE, true, PS_ERRORTEXT_psMetadata_METATYPE_MISMATCH, pType,
     452                PS_TYPE_PTR);
     453    }
     454
     455    return value;
     456}
     457
     458psS32 psMetadataLookupS32(psMetadata *md, const char *key)
     459{
     460    psS32 value = 0;
     461    psElemType pType;
     462    psMetadataItem *metadataItem = NULL;
     463
     464
     465    metadataItem = psMetadataLookup(md, key);
     466    PS_PTR_CHECK_NULL(metadataItem,0);
     467    pType = metadataItem->pType;
     468    value = metadataItem->data.S32;
     469    if(pType != PS_TYPE_S32) {
     470        psError(PS_ERR_BAD_PARAMETER_VALUE, true, PS_ERRORTEXT_psMetadata_METATYPE_MISMATCH, pType,
     471                PS_TYPE_S32);
     472    }
     473
     474    return value;
     475}
     476
     477psF64 psMetadataLookupF64(psMetadata *md, const char *key)
     478{
     479    psF64 value = 0.0;
     480    psElemType pType;
     481    psMetadataItem *metadataItem = NULL;
     482
     483
     484    metadataItem = psMetadataLookup(md, key);
     485    PS_PTR_CHECK_NULL(metadataItem,0.0);
     486    pType = metadataItem->pType;
     487    value = metadataItem->data.F64;
     488    if(pType != PS_TYPE_F64) {
     489        psError(PS_ERR_BAD_PARAMETER_VALUE, true, PS_ERRORTEXT_psMetadata_METATYPE_MISMATCH, pType,
     490                PS_TYPE_F64);
     491    }
     492
     493    return value;
     494}
     495
     496psMetadataItem* psMetadataGet(psMetadata *md, psS32 where)
    444497{
    445498    psMetadataItem* entry = NULL;
     
    457510}
    458511
    459 psBool psMetadataSetIterator(psMetadata* restrict md, psS32 where)
     512psBool psMetadataSetIterator(psMetadata *md, psS32 where)
    460513{
    461514    PS_PTR_CHECK_NULL(md,NULL);
     
    467520}
    468521
    469 psMetadataItem* psMetadataGetNext(psMetadata* restrict md, const char *restrict match, psS32 which)
     522psMetadataItem* psMetadataGetNext(psMetadata *md, const char *match, psS32 which)
    470523{
    471524    psList* mdList = NULL;
     
    497550}
    498551
    499 psMetadataItem* psMetadataGetPrevious(psMetadata* restrict md, const char *restrict match, psS32 which)
     552psMetadataItem* psMetadataGetPrevious(psMetadata *md, const char *match, psS32 which)
    500553{
    501554    psList* mdList = NULL;
Note: See TracChangeset for help on using the changeset viewer.