IPP Software Navigation Tools IPP Links Communication Pan-STARRS Links

Ignore:
Timestamp:
May 17, 2004, 7:53:16 AM (22 years ago)
Author:
rhl
Message:

Updated to match APIs in include/*.h

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/archive/pslib/src/Utils/dlist.c

    r446 r707  
    307307 * Convert a psDlist to/from a psVoidPtrArray
    308308 */
    309 psVoidPtrArray *psDlistToArray(psDlist *restrict dlist)
     309psVector *psDlistToArray(psDlist *restrict dlist)
    310310{
    311311    if (dlist == NULL) {
     
    313313    }
    314314   
    315     psVoidPtrArray *restrict arr = psVoidPtrArrayAlloc(dlist->n);
     315    psVector *restrict arr = psVectorAlloc(dlist->n, PS_TYPE_OTHER);
    316316
    317317    psDlistElem *ptr = dlist->head;
    318318    for (int i = 0, n = dlist->n; i < n; i++) {
    319         arr->arr[i] = ptr->data;
     319        arr->arr.arr_v[i] = ptr->data;
    320320
    321321        ptr->data = NULL;
     
    328328}
    329329
    330 psDlist *psArrayToDlist(psVoidPtrArray *arr)
     330psDlist *psArrayToDlist(psVector *arr)
    331331{
    332332    psDlist *list = psDlistAlloc(NULL); // list of elements
    333333
     334    assert (arr != NULL);
     335    if (arr->n > 0) {
     336       assert (arr->type.dimen == PS_DIMEN_VECTOR && arr->type.type == PS_TYPE_OTHER);
     337    }
     338   
    334339    for (int i = 0, n = arr->n; i < n; i++) {
    335340        psDlistAppend(list,
    336                       psMemDecrRefCounter(arr->arr[i])); // it's already Incr
    337         arr->arr[i] = NULL;
    338     }
    339 
    340     psVoidPtrArrayFree(arr, NULL);
     341                      psMemDecrRefCounter(arr->arr.arr_v[i])); // it\'s already Incr
     342        arr->arr.arr_v[i] = NULL;
     343    }
     344
     345    psVectorFree(arr, NULL);
    341346
    342347    return list;
Note: See TracChangeset for help on using the changeset viewer.