Changeset 19502
- Timestamp:
- Sep 11, 2008, 2:22:48 PM (18 years ago)
- Location:
- trunk/psLib/src/mathtypes
- Files:
-
- 2 edited
-
psVector.c (modified) (3 diffs)
-
psVector.h (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/psLib/src/mathtypes/psVector.c
r18311 r19502 10 10 * @author Joshua Hoblitt, University of Hawaii 11 11 * 12 * @version $Revision: 1.10 2$ $Name: not supported by cvs2svn $13 * @date $Date: 2008-0 6-24 21:32:52$12 * @version $Revision: 1.103 $ $Name: not supported by cvs2svn $ 13 * @date $Date: 2008-09-12 00:22:48 $ 14 14 * 15 15 * Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii … … 27 27 28 28 #include "psMemory.h" 29 #include "psAbort.h" 29 30 #include "psError.h" 30 31 #include "psVector.h" … … 204 205 205 206 return vector; 207 } 208 209 bool psVectorAppend(psVector *vector,...) { 210 211 va_list argPtr; 212 213 int N = vector->n; 214 if (vector->nalloc == vector->n) { 215 psVectorRealloc (vector, vector->nalloc + 100); 216 } 217 218 // Get the variable list parameters to pass to allocation function 219 va_start(argPtr, vector); 220 221 switch(vector->type.type) { 222 case PS_DATA_S8: 223 vector->data.S8[N] = (psS8)va_arg(argPtr, psS32); 224 break; 225 case PS_DATA_S16: 226 vector->data.S16[N] = (psS16)va_arg(argPtr, psS32); 227 break; 228 case PS_DATA_S32: 229 vector->data.S32[N] = (psS32)va_arg(argPtr, psS32); 230 break; 231 case PS_DATA_S64: 232 vector->data.S64[N] = (psS64)va_arg(argPtr, psS64); 233 break; 234 case PS_DATA_U8: 235 vector->data.U8[N] = (psU8)va_arg(argPtr, psU32); 236 break; 237 case PS_DATA_U16: 238 vector->data.U16[N] = (psU16)va_arg(argPtr, psU32); 239 break; 240 case PS_DATA_U32: 241 vector->data.U32[N] = (psU32)va_arg(argPtr, psU32); 242 break; 243 case PS_DATA_U64: 244 vector->data.U64[N] = (psU64)va_arg(argPtr, psU64); 245 break; 246 case PS_DATA_F32: 247 vector->data.F32[N] = (psF32)va_arg(argPtr, psF64); 248 break; 249 case PS_DATA_F64: 250 vector->data.F64[N] = (psF64)va_arg(argPtr, psF64); 251 break; 252 default: 253 psAbort ("invalid data type for vector"); 254 } 255 256 vector->n ++; 257 va_end(argPtr); 258 259 return true; 206 260 } 207 261 -
trunk/psLib/src/mathtypes/psVector.h
r19056 r19502 10 10 * @author Joshua Hoblitt, University of Hawaii 11 11 * 12 * @version $Revision: 1.7 2$ $Name: not supported by cvs2svn $13 * @date $Date: 2008-0 8-14 03:18:41$12 * @version $Revision: 1.73 $ $Name: not supported by cvs2svn $ 13 * @date $Date: 2008-09-12 00:22:48 $ 14 14 * Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii 15 15 */ … … 153 153 154 154 155 // add one more element of the vector type, extend as needed 156 bool psVectorAppend(psVector *vector,...); 157 155 158 /** Recycle a vector. 156 159 *
Note:
See TracChangeset
for help on using the changeset viewer.
