Changeset 1295 in Sophya
- Timestamp:
- Nov 6, 2000, 9:41:56 PM (25 years ago)
- Location:
- trunk/SophyaProg/PMixer
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/SophyaProg/PMixer/skymixer.cc
r1282 r1295 30 30 RadSpectra * getEmissionSpectra(DataCards & dc, int nc); 31 31 void SKM_MergeFITSKeywords(char * flnm); 32 void SKM_MergeFITSKeywords2(DVList & dvl); 32 33 void RadSpec2Nt(RadSpectra & rs, POutPersist & so, string name); 33 34 void SpectralResponse2Nt(SpectralResponse& sr, POutPersist & so, string name); … … 138 139 fios.Read(ifnm,2); 139 140 // Getting FITS keywords in primary header 140 SKM_MergeFITSKeywords(ifnm); 141 // SKM_MergeFITSKeywords(ifnm); 142 // Getting FITS keywords in data object header 143 SKM_MergeFITSKeywords2(outgs.Info()); 141 144 } 142 145 if(printlev>0) … … 203 206 fiosIn.Read(flnm,2); 204 207 // Getting FITS keywords in primary header 205 SKM_MergeFITSKeywords(flnm); 208 // SKM_MergeFITSKeywords(flnm); 209 // Getting FITS keywords in data object header 210 SKM_MergeFITSKeywords2(ings.Info()); 206 211 } 207 212 if (debuglev > 4) { // Writing the input map to the outppf … … 242 247 fiosBM.Read(flnm,2); 243 248 // Getting FITS keywords in primary header 244 SKM_MergeFITSKeywords(flnm); 249 // SKM_MergeFITSKeywords(flnm); 250 // Getting FITS keywords in data object header 251 SKM_MergeFITSKeywords2(betaMap.Info()); 245 252 } 246 253 if (printlev > 2) { … … 311 318 dvl["SKYMVER"] = skm_version; 312 319 dvl.SetComment("SKYMVER", "skymixer Version number"); 313 fios.DVListIntoPrimaryHeader(dvl); 320 // fios.DVListIntoPrimaryHeader(dvl); 321 outgs.Info() = dvl; 314 322 fios << outgs ; 315 323 } … … 502 510 fiis >> mtx ; 503 511 // Getting FITS keywords in primary header 504 SKM_MergeFITSKeywords(ifnm); 512 // SKM_MergeFITSKeywords(ifnm); 513 // Getting FITS keywords in data object header 514 SKM_MergeFITSKeywords2(mtx.Info()); 505 515 double numin = dc.DParam(key, 2, 1.); 506 516 double numax = dc.DParam(key, 3, 9999.); … … 556 566 fiis >> mtx ; 557 567 // Getting FITS keywords in primary header 558 SKM_MergeFITSKeywords(ifnm); 568 // SKM_MergeFITSKeywords(ifnm); 569 // Getting FITS keywords in data object header 570 SKM_MergeFITSKeywords2(mtx.Info()); 559 571 double numin = dc.DParam(key, 2, 1.); 560 572 double numax = dc.DParam(key, 3, 9999.); … … 799 811 800 812 /* Nouvelle-Fonction */ 813 void SKM_MergeFITSKeywords2(DVList & dvl) 814 { 815 // Cleaning the keywords 816 #define SZexlst 21 817 char *exlst[SZexlst]= 818 {"SIMPLE","BITPIX" ,"NAXIS" ,"NAXIS#" ,"PCOUNT","GCOUNT", 819 "EXTEND","ORIGIN" ,"DATE*" ,"TFIELDS","TTYPE#","TFORM#", 820 "TUNIT#","EXTNAME","CTYPE#","CRVAL#" ,"CRPIX#","CDELT#", 821 "XTENSION","INSTRUME","TELESCOP"}; 822 char kwex[32]; 823 int i,l; 824 for (i=0; i<SZexlst; i++) { 825 strncpy(kwex, exlst[i], 32); 826 l = strlen(kwex)-1; 827 if ((kwex[l] != '*') && (kwex[l] != '#')) { 828 dvl.DeleteKey(kwex); 829 } 830 else { 831 bool fgd = (kwex[l] == '#') ? true : false; 832 list<string> lstsup; 833 kwex[l] = '\0'; 834 DVList::ValList::const_iterator it; 835 for (it = dvl.Begin(); it != dvl.End(); it++) { 836 if ((*it).first.substr(0,l) != kwex) continue; 837 if (fgd && !isdigit((*it).first[l])) continue; 838 lstsup.push_back((*it).first); 839 } 840 list<string>::iterator it2; 841 for (it2 = lstsup.begin(); it2 != lstsup.end(); it2++) 842 dvl.DeleteKey(*it2); 843 } 844 } 845 dvl_fitskw->Merge(dvl); 846 } 847 848 /* Nouvelle-Fonction */ 801 849 void RadSpec2Nt(RadSpectra & rs, POutPersist & so, string name) 802 850 { -
trunk/SophyaProg/PMixer/tgsky.cc
r1252 r1295 118 118 dvl["TGSKYKW"] = "Test Keyword from tgsky.cc"; 119 119 fios.DVListIntoPrimaryHeader(dvl); 120 sph.Info() = dvl; 120 121 fios << sph; 121 122 cout << "SphereHEALPix<float> written to FITS file " << (string)(arg[4]) << endl;
Note:
See TracChangeset
for help on using the changeset viewer.