fix keywords updating from permanent and current list
This commit is contained in:
parent
ea9b099d81
commit
69bba48ce1
@ -327,11 +327,16 @@ void RaptorEagleCCD::AcquisitionProcess::start(const std::shared_ptr<acq_params_
|
|||||||
}
|
}
|
||||||
|
|
||||||
// permanent keywords (may update keywords from template file!)
|
// permanent keywords (may update keywords from template file!)
|
||||||
char card[80];
|
char card[81];
|
||||||
char kname[8];
|
char kname[9] = " ";
|
||||||
int k_type;
|
int k_type;
|
||||||
|
|
||||||
for (auto& s : _manager->_permanentFitsKeywords) {
|
if (_acqParams->permanentKeywords.size()) {
|
||||||
|
_manager->logDebug("Copy {} permanent keywords", _acqParams->permanentKeywords.size());
|
||||||
|
} else {
|
||||||
|
_manager->logDebug("There is no one permanent keyword! Skip!");
|
||||||
|
}
|
||||||
|
for (auto& s : _acqParams->permanentKeywords) {
|
||||||
fits_parse_template(s.data(), card, &k_type, &status);
|
fits_parse_template(s.data(), card, &k_type, &status);
|
||||||
if (status) { // ignore possible errors
|
if (status) { // ignore possible errors
|
||||||
fits_get_errstatus(status, err_str);
|
fits_get_errstatus(status, err_str);
|
||||||
@ -346,11 +351,29 @@ void RaptorEagleCCD::AcquisitionProcess::start(const std::shared_ptr<acq_params_
|
|||||||
kname[i] = card[i];
|
kname[i] = card[i];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
_manager->logTrace("Try to update [{}] FITS card (name = '{}')", card, kname);
|
||||||
|
|
||||||
fits_update_card(fitsFilePtr, kname, card, &status);
|
fits_update_card(fitsFilePtr, kname, card, &status);
|
||||||
|
|
||||||
|
if (status) {
|
||||||
|
fits_get_errstatus(status, err_str);
|
||||||
|
_manager->logWarn(
|
||||||
|
"An error occured while updating FITS card (name = '{}') (err = {}, msg = {})! Skip!", kname,
|
||||||
|
status, err_str);
|
||||||
|
} else {
|
||||||
|
_manager->logTrace("The FITS card (name = '{}') was updated successfully", kname);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
// keyword from user (may update template file and permanent keywords!)
|
// keyword from user (may update template file and permanent keywords!)
|
||||||
for (auto& s : _manager->_currentFitsKeywords) {
|
if (_acqParams->currentKeywords.size()) {
|
||||||
|
_manager->logDebug("Copy {} current keywords", _acqParams->currentKeywords.size());
|
||||||
|
} else {
|
||||||
|
_manager->logDebug("There is no one current keyword! Skip!");
|
||||||
|
}
|
||||||
|
for (auto& s : _acqParams->currentKeywords) {
|
||||||
fits_parse_template(s.data(), card, &k_type, &status);
|
fits_parse_template(s.data(), card, &k_type, &status);
|
||||||
if (status) { // ignore possible errors
|
if (status) { // ignore possible errors
|
||||||
fits_get_errstatus(status, err_str);
|
fits_get_errstatus(status, err_str);
|
||||||
@ -365,7 +388,19 @@ void RaptorEagleCCD::AcquisitionProcess::start(const std::shared_ptr<acq_params_
|
|||||||
kname[i] = card[i];
|
kname[i] = card[i];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
_manager->logTrace("Try to update [{}] FITS card (name = '{}')", card, kname);
|
||||||
|
|
||||||
fits_update_card(fitsFilePtr, kname, card, &status);
|
fits_update_card(fitsFilePtr, kname, card, &status);
|
||||||
|
|
||||||
|
if (status) {
|
||||||
|
fits_get_errstatus(status, err_str);
|
||||||
|
_manager->logWarn(
|
||||||
|
"An error occured while updating FITS card (name = '{}') (err = {}, msg = {})! Skip!", kname,
|
||||||
|
status, err_str);
|
||||||
|
} else {
|
||||||
|
_manager->logTrace("The FITS card (name = '{}') was updated successfully", kname);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user