rewrite to use of the new implementation of mount config
(asibfm700_config.h: Asibfm700MountConfiguration class)
This commit is contained in:
@@ -10,7 +10,8 @@ namespace asibfm700
|
||||
|
||||
/* CONSTRUCTOR AND DESTRUCTOR */
|
||||
|
||||
Asibfm700Mount::Asibfm700Mount(Asibfm700MountConfig const& config, std::shared_ptr<spdlog::logger> logger)
|
||||
// Asibfm700Mount::Asibfm700Mount(Asibfm700MountConfig const& config, std::shared_ptr<spdlog::logger> logger)
|
||||
Asibfm700Mount::Asibfm700Mount(Asibfm700MountConfiguration const& config, std::shared_ptr<spdlog::logger> logger)
|
||||
: _servolController(config.servoControllerConfig()),
|
||||
_pcm(config.pcmData()),
|
||||
gm_class_t(std::make_tuple(&_servolController, &_pcm),
|
||||
@@ -106,17 +107,36 @@ Asibfm700Mount::error_t Asibfm700Mount::initMount()
|
||||
clearPZones();
|
||||
logInfo("Add prohibited zones ...");
|
||||
|
||||
// logInfo(" Add MccAltLimitPZ zone: min alt = {}, lat = {} (pzone type: '{}')",
|
||||
// _mountConfig.pzMinAltitude().degrees(), _mountConfig.siteLatitude().degrees(),
|
||||
// "Minimal altitude prohibited zone");
|
||||
// addPZone(mcc::impl::MccAltLimitPZ<mcc::impl::MccAltLimitKind::MIN_ALT_LIMIT>{_mountConfig.pzMinAltitude(),
|
||||
// _mountConfig.siteLatitude()});
|
||||
|
||||
// logInfo(" Add MccAxisLimitSwitchPZ zone: min value = {}, max value = {} (pzone type: '{}')",
|
||||
// _mountConfig.pzLimitSwitchHAMin().degrees(), _mountConfig.pzLimitSwitchHAMax().degrees(),
|
||||
// "HA-axis limit switch");
|
||||
// size_t pz_num = addPZone(mcc::impl::MccAxisLimitSwitchPZ<mcc::impl::MccCoordKind::COORDS_KIND_HA_OBS>{
|
||||
// _mountConfig.pzLimitSwitchHAMin(), _mountConfig.pzLimitSwitchHAMax(), &_pcm});
|
||||
|
||||
size_t pz_num = addPZone(_mountConfig.minAltPZone());
|
||||
logInfo(" Add MccAltLimitPZ zone: min alt = {}, lat = {} (pzone type: '{}')",
|
||||
_mountConfig.pzMinAltitude().degrees(), _mountConfig.siteLatitude().degrees(),
|
||||
_mountConfig.minAltPZone().altLimit().degrees(), _mountConfig.minAltPZone().latitude().sexagesimal(),
|
||||
"Minimal altitude prohibited zone");
|
||||
addPZone(mcc::impl::MccAltLimitPZ<mcc::impl::MccAltLimitKind::MIN_ALT_LIMIT>{_mountConfig.pzMinAltitude(),
|
||||
_mountConfig.siteLatitude()});
|
||||
|
||||
auto haPZone = _mountConfig.axisLimitSwitchHA();
|
||||
haPZone.setPCM(&_pcm);
|
||||
|
||||
logInfo(" Add MccAxisLimitSwitchPZ zone: min value = {}, max value = {} (pzone type: '{}')",
|
||||
_mountConfig.pzLimitSwitchHAMin().degrees(), _mountConfig.pzLimitSwitchHAMax().degrees(),
|
||||
"HA-axis limit switch");
|
||||
size_t pz_num = addPZone(mcc::impl::MccAxisLimitSwitchPZ<mcc::impl::MccCoordKind::COORDS_KIND_HA_OBS>{
|
||||
_mountConfig.pzLimitSwitchHAMin(), _mountConfig.pzLimitSwitchHAMax(), &_pcm});
|
||||
haPZone.maxLimit().degrees(), haPZone.maxLimit().degrees(), "HA-axis limit switch");
|
||||
pz_num = addPZone(std::move(haPZone));
|
||||
|
||||
auto decPZone = _mountConfig.axisLimitSwitchDEC();
|
||||
decPZone.setPCM(&_pcm);
|
||||
|
||||
logInfo(" Add MccAxisLimitSwitchPZ zone: min value = {}, max value = {} (pzone type: '{}')",
|
||||
decPZone.maxLimit().degrees(), decPZone.maxLimit().degrees(), "DEC-axis limit switch");
|
||||
pz_num = addPZone(std::move(decPZone));
|
||||
|
||||
logInfo("{} prohibited zones were added successfully", pz_num);
|
||||
|
||||
@@ -149,12 +169,12 @@ Asibfm700Mount::error_t Asibfm700Mount::initMount()
|
||||
logInfo(" PIDRefreshDt: {}", to_msecs(hw_cfg.devConfig.PIDRefreshDt));
|
||||
logInfo(" PIDCycleDt: {}", to_msecs(hw_cfg.devConfig.PIDCycleDt));
|
||||
|
||||
logInfo(" XPIDC: [P: {}, I: {}, D: {}]", hw_cfg.devConfig.XPIDC.P, hw_cfg.devConfig.XPIDC.I,
|
||||
hw_cfg.devConfig.XPIDC.D);
|
||||
// logInfo(" XPIDC: [P: {}, I: {}, D: {}]", hw_cfg.devConfig.XPIDC.P, hw_cfg.devConfig.XPIDC.I,
|
||||
// hw_cfg.devConfig.XPIDC.D);
|
||||
logInfo(" XPIDV: [P: {}, I: {}, D: {}]", hw_cfg.devConfig.XPIDV.P, hw_cfg.devConfig.XPIDV.I,
|
||||
hw_cfg.devConfig.XPIDV.D);
|
||||
logInfo(" YPIDC: [P: {}, I: {}, D: {}]", hw_cfg.devConfig.YPIDC.P, hw_cfg.devConfig.YPIDC.I,
|
||||
hw_cfg.devConfig.YPIDC.D);
|
||||
// logInfo(" YPIDC: [P: {}, I: {}, D: {}]", hw_cfg.devConfig.YPIDC.P, hw_cfg.devConfig.YPIDC.I,
|
||||
// hw_cfg.devConfig.YPIDC.D);
|
||||
logInfo(" YPIDV: [P: {}, I: {}, D: {}]", hw_cfg.devConfig.YPIDV.P, hw_cfg.devConfig.YPIDV.I,
|
||||
hw_cfg.devConfig.YPIDV.D);
|
||||
logInfo(" XEncZero: {}", hw_cfg.devConfig.XEncZero);
|
||||
@@ -359,7 +379,8 @@ Asibfm700Mount::error_t Asibfm700Mount::initMount()
|
||||
}
|
||||
|
||||
|
||||
Asibfm700Mount::error_t Asibfm700Mount::updateMountConfig(const Asibfm700MountConfig& cfg)
|
||||
// Asibfm700Mount::error_t Asibfm700Mount::updateMountConfig(const Asibfm700MountConfig& cfg)
|
||||
Asibfm700Mount::error_t Asibfm700Mount::updateMountConfig(const Asibfm700MountConfiguration& cfg)
|
||||
{
|
||||
std::lock_guard lock{*_mountConfigMutex};
|
||||
|
||||
@@ -375,7 +396,8 @@ Asibfm700Mount::error_t Asibfm700Mount::updateMountConfig(const Asibfm700MountCo
|
||||
|
||||
Asibfm700Mount::error_t Asibfm700Mount::updateMountConfig(const std::string& cfg_filename)
|
||||
{
|
||||
Asibfm700MountConfig new_config;
|
||||
// Asibfm700MountConfig new_config;
|
||||
Asibfm700MountConfiguration new_config;
|
||||
auto err =
|
||||
new_config.load(cfg_filename.empty() ? _mountConfig.configFilename() : std::filesystem::path{cfg_filename});
|
||||
if (err) {
|
||||
|
||||
Reference in New Issue
Block a user