Changeset 17894 for trunk/pstamp/src
- Timestamp:
- Jun 3, 2008, 9:38:48 AM (18 years ago)
- Location:
- trunk/pstamp/src
- Files:
-
- 2 edited
-
pstamp.h (modified) (1 diff)
-
pstamprequest.c (modified) (6 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/pstamp/src/pstamp.h
r16593 r17894 34 34 35 35 #define STAMP_REQUEST_EXTNAME "PS1_PS_REQUEST" 36 #define STAMP_REQUEST_VERSION "1 .0"36 #define STAMP_REQUEST_VERSION "1" 37 37 38 38 #define STAMP_RESULTS_EXTNAME "PS1_PS_RESULTS" 39 #define STAMP_RESULTS_VERSION "1 .0"39 #define STAMP_RESULTS_VERSION "1" 40 40 41 41 #endif -
trunk/pstamp/src/pstamprequest.c
r17029 r17894 10 10 psMetadata *md; 11 11 psString fileName; 12 psString requestName; 12 13 } psrOptions; 13 14 … … 109 110 bool gotCenter = false; 110 111 bool gotRange = false; 111 bool needROI = true;112 bool makeStamps = true;112 bool needROI = false; 113 bool makeStamps= false; 113 114 114 115 options->md = md; 115 116 116 psMetadataAdd (md, PS_LIST_TAIL, "VERSION", PS_DATA_STRING, "", STAMP_REQUEST_VERSION); 117 118 // These mode arguments should be consistent with pstampparse 119 if ((argnum = psArgumentGet(argc, argv, "-list"))) { 120 psMetadataAdd (md, PS_LIST_TAIL, "CMD_MODE", PS_DATA_STRING, "", "list_uri"); 121 psArgumentRemove(argnum, &argc, argv); 122 // we don't need coordinates if we're listing unless mode is -bycoord. May be set true below. 123 needROI = false; 124 makeStamps = false; 125 } 126 117 // Job type. This is normally "stamp" for postage stamp. 118 // "get_image" requests that whole images to be retrieved (in PS case magic masked) 119 // "list_uri" results in a list of matching images 127 120 if ((argnum = psArgumentGet(argc, argv, "-get_image"))) { 128 psMetadataAdd (md, PS_LIST_TAIL, "JOB_TYPE", PS_DATA_STRING, "", "get_image"); 129 psArgumentRemove(argnum, &argc, argv); 130 // we don't need coordinates if we're listing unless mode is -bycoord. May be set true below. 131 needROI = false; 132 makeStamps = false; 133 } else { 134 psMetadataAdd (md, PS_LIST_TAIL, "JOB_TYPE", PS_DATA_STRING, "", "stamp"); 135 } 136 137 138 // get project from command line 121 psMetadataAdd (md, PS_LIST_TAIL, "REQ_TYPE", PS_DATA_STRING, "", "get_image"); 122 psArgumentRemove(argnum, &argc, argv); 123 } else if ((argnum = psArgumentGet(argc, argv, "-list_uri"))) { 124 psMetadataAdd (md, PS_LIST_TAIL, "REQ_TYPE", PS_DATA_STRING, "", "get_image"); 125 psArgumentRemove(argnum, &argc, argv); 126 } else { 127 psMetadataAdd (md, PS_LIST_TAIL, "REQ_TYPE", PS_DATA_STRING, "", "stamp"); 128 needROI = true; 129 makeStamps = true; 130 } 131 132 if ((argnum = psArgumentGet(argc, argv, "-name"))) { 133 psArgumentRemove(argnum, &argc, argv); 134 if (argc < 2) { 135 psError(PS_ERR_BAD_PARAMETER_VALUE, true, "no request name specified"); 136 usage(); 137 } 138 options->requestName = argv[argnum]; 139 psArgumentRemove(argnum, &argc, argv); 140 } else { 141 psError(PS_ERR_BAD_PARAMETER_VALUE, true, "request name is required\n"); 142 usage(); 143 } 144 139 145 if ((argnum = psArgumentGet(argc, argv, "-project"))) { 140 146 psArgumentRemove(argnum, &argc, argv); … … 150 156 } 151 157 152 // get user tag (base name for the postage stamp files158 // user tag will be used as the base name for the postage stamp images 153 159 if ((argnum = psArgumentGet(argc, argv, "-user_tag"))) { 154 160 psArgumentRemove(argnum, &argc, argv); … … 159 165 psMetadataAdd(md, PS_LIST_TAIL, "USER_TAG", PS_DATA_STRING, "", argv[argnum]); 160 166 psArgumentRemove(argnum, &argc, argv); 161 } else if (makeStamps){162 psError(PS_ERR_BAD_PARAMETER_NULL, true, "no user_tag specified");163 usage();164 } 165 166 // find style & type167 } else { 168 // default user tag to requestName 169 psMetadataAdd(md, PS_LIST_TAIL, "USER_TAG", PS_DATA_STRING, "", options->requestName); 170 } 171 172 // find style & image type 167 173 if ((argnum = psArgumentGet(argc, argv, "-bycoord"))) { 168 174 gotStyle = true; … … 212 218 if (needROI) { 213 219 if (roiParam.celestialCenter) { 214 psMetadataAdd (md, PS_LIST_TAIL, "RA", PS_DATA_STRING, "", roiParam.center[0]);220 psMetadataAdd (md, PS_LIST_TAIL, "RA", PS_DATA_STRING, "", roiParam.center[0]); 215 221 psMetadataAdd (md, PS_LIST_TAIL, "DEC", PS_DATA_STRING, "", roiParam.center[1]); 216 222 } else { 217 223 if (needCoord) { 218 fprintf(stderr, "need to specify ROI in sky coordinates \n");224 fprintf(stderr, "need to specify ROI in sky coordinates with -bycoord\n"); 219 225 usage(); 220 226 } … … 258 264 return false; 259 265 } 266 psMetadata *header = psMetadataAlloc(); 267 268 psMetadataAdd(header, PS_LIST_TAIL, "REQ_NAME", PS_DATA_STRING, "", options->requestName); 269 psMetadataAdd(header, PS_LIST_TAIL, "EXTVER", PS_DATA_STRING, "", STAMP_REQUEST_VERSION); 260 270 261 271 psArray *table = psArrayAlloc(1); 262 263 272 table->data[0] = options->md; 264 273 265 if (!psFitsWriteTable(fitsFile, NULL, table, STAMP_REQUEST_EXTNAME)) {274 if (!psFitsWriteTable(fitsFile, header, table, STAMP_REQUEST_EXTNAME)) { 266 275 psError(PS_ERR_IO, false, "failed to write fits table"); 267 276 return false; 268 277 } 269 278 270 if (! psFitsClose(fitsFile)) {279 if (! psFitsClose(fitsFile)) { 271 280 psError(PS_ERR_IO, false, "failed to close fits table"); 272 281 return false;
Note:
See TracChangeset
for help on using the changeset viewer.
