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!)
|
||||
char card[80];
|
||||
char kname[8];
|
||||
char card[81];
|
||||
char kname[9] = " ";
|
||||
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);
|
||||
if (status) { // ignore possible errors
|
||||
fits_get_errstatus(status, err_str);
|
||||
@ -346,11 +351,29 @@ void RaptorEagleCCD::AcquisitionProcess::start(const std::shared_ptr<acq_params_
|
||||
kname[i] = card[i];
|
||||
}
|
||||
}
|
||||
|
||||
_manager->logTrace("Try to update [{}] FITS card (name = '{}')", card, kname);
|
||||
|
||||
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!)
|
||||
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);
|
||||
if (status) { // ignore possible errors
|
||||
fits_get_errstatus(status, err_str);
|
||||
@ -365,7 +388,19 @@ void RaptorEagleCCD::AcquisitionProcess::start(const std::shared_ptr<acq_params_
|
||||
kname[i] = card[i];
|
||||
}
|
||||
}
|
||||
|
||||
_manager->logTrace("Try to update [{}] FITS card (name = '{}')", card, kname);
|
||||
|
||||
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