simparams.cc
00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034 #include "fitshandle.h"
00035 #include "simparams.h"
00036
00037 using namespace std;
00038
00039 void simparams::add_keys (ostream &os) const
00040 {
00041 for (unsigned int m=0; m<source_files.size(); ++m)
00042 {
00043 os << "ancestor"+dataToString(m+1)+"="+source_files[m] << endl;
00044 }
00045 vector<Param>::const_iterator iter = paramMap.begin();
00046 while (iter!=paramMap.end())
00047 {
00048 if (iter->comment != "")
00049 os << "# "+iter->comment << endl;
00050 if (iter->key != "")
00051 os << iter->key << "=" << iter->value << endl;
00052 ++iter;
00053 }
00054 }
00055
00056 void simparams::add_keys (fitshandle &out) const
00057 {
00058 fitshandle inp;
00059 for (unsigned int m=0; m<source_files.size(); ++m)
00060 {
00061 inp.open(source_files[m]);
00062 inp.goto_hdu(hdus[m]);
00063 out.add_comment("imported from HDU "+dataToString(hdus[m])+" of");
00064 out.add_comment(source_files[m]);
00065 out.copy_header(inp);
00066 out.add_comment("End of imported HDU");
00067 inp.close();
00068 }
00069
00070 vector<Param>::const_iterator iter = paramMap.begin();
00071 while (iter!=paramMap.end())
00072 {
00073 if (iter->shortkey != "")
00074 out.add_key (iter->shortkey, iter->value, iter->comment);
00075 else
00076 out.add_comment (iter->comment);
00077 ++iter;
00078 }
00079 }