IPP Software Navigation Tools IPP Links Communication Pan-STARRS Links

Ignore:
Timestamp:
Aug 6, 2004, 2:06:06 PM (22 years ago)
Author:
desonia
Message:

another attempt to get astyle to get it right.

File:
1 edited

Legend:

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

    r1406 r1407  
     1
    12/** @file  psArray.c
    23 *
     
    89 *  @author Ross Harman, MHPCC
    910 *
    10  *  @version $Revision: 1.11 $ $Name: not supported by cvs2svn $
    11  *  @date $Date: 2004-08-06 22:34:05 $
     11 *  @version $Revision: 1.12 $ $Name: not supported by cvs2svn $
     12 *  @date $Date: 2004-08-07 00:06:06 $
    1213 *
    1314 *  Copyright 2004 Maui High Performance Computing Center, University of Hawaii
     
    1516
    1617/******************************************************************************/
     18
    1719/*  INCLUDE FILES                                                             */
     20
    1821/******************************************************************************/
    19 #include<stdlib.h>            // for qsort, etc.
     22#include<stdlib.h>                         // for qsort, etc.
    2023
    2124#include "psMemory.h"
     
    2427#include "psLogMsg.h"
    2528
     29/*****************************************************************************/
     30
     31/*  FUNCTION IMPLEMENTATION - LOCAL                                          */
    2632
    2733/*****************************************************************************/
    28 /*  FUNCTION IMPLEMENTATION - LOCAL                                          */
    29 /*****************************************************************************/
    30 static void arrayFree(psArray *restrict psArr);
     34static void arrayFree(psArray * restrict psArr);
    3135
    3236/*****************************************************************************/
     37
    3338/* FUNCTION IMPLEMENTATION - PUBLIC                                          */
     39
    3440/*****************************************************************************/
    35 psArray* psArrayAlloc(unsigned int nalloc)
     41psArray *psArrayAlloc(unsigned int nalloc)
    3642{
    3743    psArray *psArr = NULL;
    3844
    3945    // Invalid nalloc
    40     if(nalloc < 1) {
     46    if (nalloc < 1) {
    4147        psError(__func__, "Invalid value for nalloc. nalloc: %d\n", nalloc);
    4248        return NULL;
    4349    }
    44 
    4550    // Create vector struct
    46     psArr = (psArray *)psAlloc(sizeof(psArray));
    47     p_psMemSetDeallocator(psArr,(psFreeFcn)arrayFree);
     51    psArr = (psArray *) psAlloc(sizeof(psArray));
     52    p_psMemSetDeallocator(psArr, (psFreeFcn) arrayFree);
    4853
    4954    psArr->nalloc = nalloc;
     
    5156
    5257    // Create vector data array
    53     psArr->data = psAlloc(nalloc*sizeof(psPTR));
     58    psArr->data = psAlloc(nalloc * sizeof(psPTR));
    5459
    5560    return psArr;
    5661}
    5762
    58 psArray *psArrayRealloc(unsigned int nalloc, psArray *restrict in)
     63psArray *psArrayRealloc(unsigned int nalloc, psArray * restrict in)
    5964{
    6065    // Invalid nalloc
    61     if(nalloc < 1) {
     66    if (nalloc < 1) {
    6267        psError(__func__, "Invalid value for realloc (%d)\n", nalloc);
    6368        return NULL;
    6469    }
    6570
    66     if(in == NULL) {
     71    if (in == NULL) {
    6772        psError(__func__, "Null input vector\n");
    6873        return NULL;
    69     } else
    70         if(in->nalloc != nalloc) {                    // No need to realloc to same size
    71             if(nalloc < in->n) {
    72                 for (int i = nalloc; i < in->n; i++) {   // For reduction in vector size
    73                     psFree(in->data[i]);
    74                 }
    75                 in->n = nalloc;
     74    } else if (in->nalloc != nalloc) {     // No need to realloc to same size
     75        if (nalloc < in->n) {
     76            for (int i = nalloc; i < in->n; i++) {      // For reduction in vector size
     77                psFree(in->data[i]);
    7678            }
    77 
    78             // Realloc after decrementation to avoid accessing freed array elements
    79             in->data = psRealloc(in->data,nalloc*sizeof(psPTR));
    80             in->nalloc = nalloc;
     79            in->n = nalloc;
    8180        }
     81        // Realloc after decrementation to avoid accessing freed array elements
     82        in->data = psRealloc(in->data, nalloc * sizeof(psPTR));
     83        in->nalloc = nalloc;
     84    }
    8285
    8386    return in;
    8487}
    8588
    86 static void arrayFree(psArray *restrict psArr)
     89static void arrayFree(psArray * restrict psArr)
    8790{
    8891    if (psArr == NULL) {
     
    9598}
    9699
    97 void psArrayElementFree(psArray *restrict psArr)
     100void psArrayElementFree(psArray * restrict psArr)
    98101{
    99102
    100     if(psArr == NULL) {
     103    if (psArr == NULL) {
    101104        return;
    102105    }
    103106
    104     for(int i = 0; i < psArr->n; i++) {
     107    for (int i = 0; i < psArr->n; i++) {
    105108        psFree(psArr->data[i]);
    106109        psArr->data[i] = NULL;
     
    108111}
    109112
    110 psArray* psArraySort(psArray* in, psComparePtrFcn compare)
     113psArray *psArraySort(psArray * in, psComparePtrFcn compare)
    111114{
    112115    if (in == NULL) {
     
    114117    }
    115118
    116     qsort(in->data, in->n, sizeof(psPTR),
    117           (int(*)(const void *, const void *))compare);
    118 
     119    qsort(in->data, in->n, sizeof(psPTR), (int (*)(const void *, const void *))compare);
    119120
    120121    return in;
Note: See TracChangeset for help on using the changeset viewer.