Changeset 6354
- Timestamp:
- Feb 7, 2006, 3:03:35 PM (20 years ago)
- Location:
- trunk/psLib
- Files:
-
- 8 edited
-
src/fits/psFits.c (modified) (2 diffs)
-
src/fits/psFits.h (modified) (2 diffs)
-
src/fits/psFitsHeader.c (modified) (2 diffs)
-
src/fits/psFitsHeader.h (modified) (2 diffs)
-
src/fits/psFitsTable.c (modified) (5 diffs)
-
src/imageops/psImageGeomManip.c (modified) (6 diffs)
-
src/imageops/psImageGeomManip.h (modified) (3 diffs)
-
test/fits/tst_psFits.c (modified) (6 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/psLib/src/fits/psFits.c
r5511 r6354 7 7 * @author Robert DeSonia, MHPCC 8 8 * 9 * @version $Revision: 1.5 1$ $Name: not supported by cvs2svn $10 * @date $Date: 200 5-11-14 22:18:30$9 * @version $Revision: 1.52 $ $Name: not supported by cvs2svn $ 10 * @date $Date: 2006-02-08 01:03:34 $ 11 11 * 12 12 * Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii … … 245 245 } 246 246 247 bool psFitsMoveLast( constpsFits* fits)247 bool psFitsMoveLast(psFits* fits) 248 248 { 249 249 if (fits == NULL) { -
trunk/psLib/src/fits/psFits.h
r5511 r6354 7 7 * @author Robert DeSonia, MHPCC 8 8 * 9 * @version $Revision: 1.2 2$ $Name: not supported by cvs2svn $10 * @date $Date: 200 5-11-14 22:18:30$9 * @version $Revision: 1.23 $ $Name: not supported by cvs2svn $ 10 * @date $Date: 2006-02-08 01:03:34 $ 11 11 * 12 12 * Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii … … 115 115 */ 116 116 bool psFitsMoveLast( 117 const psFits* fits///< the psFits object to move117 psFits* fits ///< the psFits object to move 118 118 ); 119 119 -
trunk/psLib/src/fits/psFitsHeader.c
r5511 r6354 7 7 * @author Robert DeSonia, MHPCC 8 8 * 9 * @version $Revision: 1. 1$ $Name: not supported by cvs2svn $10 * @date $Date: 200 5-11-14 22:18:30$9 * @version $Revision: 1.2 $ $Name: not supported by cvs2svn $ 10 * @date $Date: 2006-02-08 01:03:34 $ 11 11 * 12 12 * Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii … … 167 167 } 168 168 169 psMetadata* psFitsReadHeaderSet(psMetadata* out, 170 const psFits* fits) 169 psMetadata* psFitsReadHeaderSet(const psFits* fits) 171 170 { 172 171 if (fits == NULL) { 173 172 psError(PS_ERR_BAD_PARAMETER_NULL, true, 174 173 PS_ERRORTEXT_psFits_NULL); 175 psFree(out);176 174 return NULL; 177 175 } 178 176 179 if (out == NULL) { 180 out = psMetadataAlloc(); 181 if (out == NULL) { 182 psError(PS_ERR_UNKNOWN, false, 183 "Failed to allocate a new psMetadata container."); 184 return NULL; 185 } 186 } 177 psMetadata* out = psMetadataAlloc(); 187 178 188 179 int size = psFitsGetSize(fits); -
trunk/psLib/src/fits/psFitsHeader.h
r5511 r6354 7 7 * @author Robert DeSonia, MHPCC 8 8 * 9 * @version $Revision: 1. 1$ $Name: not supported by cvs2svn $10 * @date $Date: 200 5-11-14 22:18:30$9 * @version $Revision: 1.2 $ $Name: not supported by cvs2svn $ 10 * @date $Date: 2006-02-08 01:03:34 $ 11 11 * 12 12 * Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii … … 37 37 */ 38 38 psMetadata* psFitsReadHeaderSet( 39 psMetadata* out,40 ///< The psMetadata to add the header data via psMetadata items. If null, a41 ///< new psMetadata is created. The keys of the psMetadata are the extension names42 ///< of the cooresponding HDUs.43 44 39 const psFits* fits ///< the psFits object 45 40 ); -
trunk/psLib/src/fits/psFitsTable.c
r6314 r6354 7 7 * @author Robert DeSonia, MHPCC 8 8 * 9 * @version $Revision: 1. 3$ $Name: not supported by cvs2svn $10 * @date $Date: 2006-02-0 3 00:11:58$9 * @version $Revision: 1.4 $ $Name: not supported by cvs2svn $ 10 * @date $Date: 2006-02-08 01:03:34 $ 11 11 * 12 12 * Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii … … 23 23 #include "psTrace.h" 24 24 #include "psVector.h" 25 #include "config.h" 25 26 26 27 #define MAX_STRING_LENGTH 256 // maximum length string for FITS routines … … 309 310 if (status == 0) { 310 311 311 #define READ_TABLE_ROW_CASE(FITSTYPE, NATIVETYPE, TYPE ) \312 #define READ_TABLE_ROW_CASE(FITSTYPE, NATIVETYPE, TYPE, VECTYPE) \ 312 313 case FITSTYPE: { \ 313 314 if (repeat == 1) { \ … … 322 323 "", (ps##TYPE)value); \ 323 324 } else { \ 324 psVector* value = psVectorAlloc(repeat,PS_DATA_##TYPE); \ 325 NATIVETYPE* value = psAlloc(sizeof(NATIVETYPE)*repeat); \ 326 psVector* vec = psVectorAlloc(repeat,PS_TYPE_##VECTYPE); \ 325 327 int anynul = 0; \ 326 328 fits_read_col(fits->fd, FITSTYPE, col,row+1, \ 327 1, repeat, NULL, value->data.U8, &anynul, &status); \ 328 psMetadataAdd(data,PS_LIST_TAIL, name, \ 329 PS_DATA_VECTOR, \ 330 "", value); \ 329 1, repeat, NULL, value, &anynul, &status); \ 330 for (int lcv = 0; lcv < repeat; lcv++) { \ 331 vec->data.VECTYPE[lcv] = value[lcv]; \ 332 } \ 333 psMetadataAdd(data,PS_LIST_TAIL, name, PS_DATA_VECTOR, "", vec); \ 331 334 psFree(value); \ 335 psFree(vec); \ 332 336 } \ 333 337 break; \ … … 338 342 case TSHORT: 339 343 case TLONGLONG: 340 READ_TABLE_ROW_CASE(TLONG, long, S32 )341 READ_TABLE_ROW_CASE(TFLOAT, float, F32 )342 READ_TABLE_ROW_CASE(TDOUBLE, double, F64 )343 READ_TABLE_ROW_CASE(TLOGICAL, bool, BOOL );344 READ_TABLE_ROW_CASE(TLONG, long, S32,S32) 345 READ_TABLE_ROW_CASE(TFLOAT, float, F32,F32) 346 READ_TABLE_ROW_CASE(TDOUBLE, double, F64,F64) 347 READ_TABLE_ROW_CASE(TLOGICAL, bool, BOOL,S8); 344 348 case TSTRING: { 345 349 char* value = psAlloc(repeat+1); -
trunk/psLib/src/imageops/psImageGeomManip.c
r6227 r6354 10 10 * @author Ross Harman, MHPCC 11 11 * 12 * @version $Revision: 1.1 8$ $Name: not supported by cvs2svn $13 * @date $Date: 2006-0 1-28 01:12:11$12 * @version $Revision: 1.19 $ $Name: not supported by cvs2svn $ 13 * @date $Date: 2006-02-08 01:03:35 $ 14 14 * 15 15 * Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii … … 689 689 690 690 psImage* psImageTransform(psImage *output, 691 ps Array* blankPixels,691 psPixels** blankPixels, 692 692 const psImage *input, 693 693 const psImage *inputMask, … … 706 706 } 707 707 psElemType type = input->type.type; 708 psPixels* tempPixels = NULL; 709 710 if(blankPixels != NULL) { 711 tempPixels = psPixelsAlloc(blankPixels->nalloc); 712 tempPixels->n = blankPixels->n; 713 tempPixels->data = (psPixelCoord*)blankPixels->data; 708 709 if (blankPixels != NULL && *blankPixels == NULL) { 710 *blankPixels = psPixelsAlloc(0); 714 711 } 715 712 … … 786 783 psPlane outPosition; 787 784 psPlane* inPosition = NULL; 788 789 790 791 792 785 793 786 #define PSIMAGE_TRANSFORM_DOTRANSFORM(TYPE,MODE) \ … … 808 801 if (isnan(value)) { \ 809 802 if (blankPixels != NULL) { \ 810 p_psPixelsAppend( tempPixels, tempPixels->nalloc, outPosition.x, outPosition.y); \803 p_psPixelsAppend(*blankPixels, (*blankPixels)->nalloc, outPosition.x, outPosition.y); \ 811 804 } \ 812 805 value = exposedValue; \ … … 873 866 874 867 psFree(inPosition); 875 psFree(tempPixels);876 868 877 869 return output; -
trunk/psLib/src/imageops/psImageGeomManip.h
r6227 r6354 8 8 * @author Robert DeSonia, MHPCC 9 9 * 10 * @version $Revision: 1.1 3$ $Name: not supported by cvs2svn $11 * @date $Date: 2006-0 1-28 01:12:11$10 * @version $Revision: 1.14 $ $Name: not supported by cvs2svn $ 11 * @date $Date: 2006-02-08 01:03:35 $ 12 12 * 13 13 * Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii … … 144 144 psImage* psImageTransform( 145 145 psImage *output, ///< psImage to recycle, or NULL 146 ps Array* blankPixels,///< list of pixels in output image not set, or NULL if no list is desired.146 psPixels** blankPixels, ///< list of pixels in output image not set, or NULL if no list is desired. 147 147 const psImage *input, ///< psImage to apply transform to 148 148 const psImage *inputMask, ///< if not NULL, mask of input psImage … … 151 151 psRegion region, ///< the size of the transformed image 152 152 const psPixels* pixels, /**< if not NULL, consists of psPixelCoords and specifies which pixels in 153 * output image shall be transformed; otherwise, entire image generated*/153 * output image shall be transformed; otherwise, entire image generated*/ 154 154 psImageInterpolateMode mode, ///< the interpolation scheme to be used 155 155 double exposedValue ///< Exposed value to which non-corresponding pixels are set -
trunk/psLib/test/fits/tst_psFits.c
r6314 r6354 6 6 * @author Robert DeSonia, MHPCC 7 7 * 8 * @version $Revision: 1.1 5$ $Name: not supported by cvs2svn $9 * @date $Date: 2006-02-0 3 00:12:01$8 * @version $Revision: 1.16 $ $Name: not supported by cvs2svn $ 9 * @date $Date: 2006-02-08 01:03:35 $ 10 10 * 11 11 * Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii … … 818 818 psFitsMoveExtNum(fits,numHDUs/2, false); 819 819 820 psMetadata* headerSet = psFitsReadHeaderSet( NULL,fits);820 psMetadata* headerSet = psFitsReadHeaderSet(fits); 821 821 822 822 if (headerSet == NULL) { … … 859 859 } 860 860 861 psMetadata* set2 = psMetadataAlloc(); 862 set2 = psFitsReadHeaderSet(set2,NULL); 861 psMetadata* set2 = psFitsReadHeaderSet(NULL); 863 862 if (set2 != NULL) { 864 863 psError(PS_ERR_UNKNOWN, false, … … 867 866 } 868 867 869 psMetadata* set3 = psMetadataAlloc(); 870 set3 = psFitsReadHeaderSet(set3,fits); 871 868 psMetadata* set3 = psFitsReadHeaderSet(fits); 872 869 if (set3 == NULL) { 873 870 psError(PS_ERR_UNKNOWN, false, … … 1258 1255 "row K" 1259 1256 }; 1257 1260 1258 1261 1259 if (! makeTable()) { … … 1525 1523 mkdir("tmpImages",0777); 1526 1524 1527 testReadTypeSize(1,1,0,0,0,0,U8,"tmpImages/1x1_" "U8.fits");1528 testReadTypeSize(M,1,M/4,0,M*3/4,0,U8,"tmpImages/Mx1_" "U8.fits");1529 testReadTypeSize(1,N,0,N/4,0,N*3/4,U8,"tmpImages/1xN_" "U8.fits");1530 testReadTypeSize(M,N,M/4,N/4,M*3/4,N*3/4,U8,"tmpImages/MxN_" "U8.fits");1531 1532 1533 1525 testReadType(U8,"U8.fits"); 1534 1526 testReadType(S8,"S8.fits"); // Not a requirement
Note:
See TracChangeset
for help on using the changeset viewer.
