Changeset 486 for trunk/psLib/src/collections/psArray.c
- Timestamp:
- Apr 20, 2004, 2:40:32 PM (22 years ago)
- File:
-
- 1 edited
-
trunk/psLib/src/collections/psArray.c (modified) (8 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/psLib/src/collections/psArray.c
r485 r486 8 8 * @author Ross Harman, MHPCC 9 9 * 10 * @version $Revision: 1. 2$ $Name: not supported by cvs2svn $11 * @date $Date: 2004-04-21 00: 18:05$10 * @version $Revision: 1.3 $ $Name: not supported by cvs2svn $ 11 * @date $Date: 2004-04-21 00:40:32 $ 12 12 * 13 13 * Copyright 2004 Maui High Performance Computing Center, University of Hawaii … … 19 19 #include "psMemory.h" 20 20 #include "psArray.h" 21 #include "psLogMsg.h"22 21 23 22 /******************************************************************************/ … … 54 53 /* FUNCTION IMPLEMENTATION - PUBLIC */ 55 54 /*****************************************************************************/ 55 56 psIntArray* psIntArrayAlloc(int nalloc) 57 { 58 psIntArray *psArr = (psIntArray*)p_psAlloc(sizeof(psIntArray), __FILE__, __LINE__); 59 psArr->type.dimen = PS_DIMEN_VECTOR; 60 psArr->type.type = PS_TYPE_INT; 61 psArr->nalloc = nalloc; 62 psArr->n = 0; 63 64 if(nalloc == 0) { 65 psArr->arr = NULL; 66 } else { 67 psArr->arr = p_psAlloc(nalloc*sizeof(int), __FILE__, __LINE__); 68 } 69 70 return psArr; 71 } 72 73 psIntArray *psIntArrayRealloc(psIntArray *psArr, int nalloc) 74 { 75 if(psArr == NULL) { 76 return psIntArrayAlloc(nalloc); 77 } 78 if(nalloc <= psArr->nalloc) { 79 if (psArr->n < nalloc) { 80 psArr->n = nalloc; 81 } 82 } else { 83 psArr->arr = p_psRealloc(psArr->arr, nalloc*sizeof(int), __FILE__, __LINE__); 84 psArr->nalloc = nalloc; 85 } 86 return psArr; 87 } 88 89 void psIntArrayFree(psIntArray *restrict psArr) 90 { 91 if (psArr == NULL) { 92 return; 93 } 94 p_psFree(psArr->arr, __FILE__, __LINE__); 95 p_psFree(psArr, __FILE__, __LINE__); 96 } 56 97 57 98 psFloatArray* psFloatArrayAlloc(int nalloc) … … 97 138 } 98 139 99 ps IntArray* psIntArrayAlloc(int nalloc)140 psDoubleArray* psDoubleArrayAlloc(int nalloc) 100 141 { 101 ps IntArray *psArr = (psIntArray*)p_psAlloc(sizeof(psIntArray), __FILE__, __LINE__);142 psDoubleArray *psArr = (psDoubleArray*)p_psAlloc(sizeof(psDoubleArray), __FILE__, __LINE__); 102 143 psArr->type.dimen = PS_DIMEN_VECTOR; 103 psArr->type.type = PS_TYPE_ INT;144 psArr->type.type = PS_TYPE_DOUBLE; 104 145 psArr->nalloc = nalloc; 105 146 psArr->n = 0; … … 108 149 psArr->arr = NULL; 109 150 } else { 110 psArr->arr = p_psAlloc(nalloc*sizeof( int), __FILE__, __LINE__);151 psArr->arr = p_psAlloc(nalloc*sizeof(double), __FILE__, __LINE__); 111 152 } 112 153 … … 114 155 } 115 156 116 ps IntArray *psIntArrayRealloc(psIntArray *psArr, int nalloc)157 psDoubleArray *psDoubleArrayRealloc(psDoubleArray *psArr, int nalloc) 117 158 { 118 159 if(psArr == NULL) { 119 return ps IntArrayAlloc(nalloc);160 return psDoubleArrayAlloc(nalloc); 120 161 } 121 162 if(nalloc <= psArr->nalloc) { … … 124 165 } 125 166 } else { 126 psArr->arr = p_psRealloc(psArr->arr, nalloc*sizeof( int), __FILE__, __LINE__);167 psArr->arr = p_psRealloc(psArr->arr, nalloc*sizeof(double), __FILE__, __LINE__); 127 168 psArr->nalloc = nalloc; 128 169 } … … 130 171 } 131 172 132 void ps IntArrayFree(psIntArray *restrict psArr)173 void psDoubleArrayFree(psDoubleArray *restrict psArr) 133 174 { 134 175 if (psArr == NULL) {
Note:
See TracChangeset
for help on using the changeset viewer.
