...
This commit is contained in:
@@ -1,6 +1,7 @@
|
||||
#pragma once
|
||||
|
||||
#include <mcc/mcc_generic_mount.h>
|
||||
#include <mcc/mcc_generic_movecontrols.h>
|
||||
#include <mcc/mcc_movement_controls.h>
|
||||
#include <mcc/mcc_pzone_container.h>
|
||||
#include <mcc/mcc_spdlog.h>
|
||||
@@ -14,19 +15,29 @@ namespace asibfm700
|
||||
|
||||
|
||||
|
||||
class Asibfm700Mount : public mcc::impl::MccGenericMount<mcc::impl::MccTelemetry<AsibFM700ServoController>,
|
||||
Asibfm700PZoneContainer,
|
||||
mcc::impl::MccSimpleMovementControls,
|
||||
Asibfm700Logger>
|
||||
class Asibfm700Mount
|
||||
: public mcc::impl::MccGenericMount<mcc::impl::MccTelemetry<AsibFM700ServoController>,
|
||||
Asibfm700PZoneContainer,
|
||||
// mcc::impl::MccSimpleMovementControls,
|
||||
mcc::impl::MccGenericAsyncMovementControls<details::movement_pars_t>,
|
||||
Asibfm700Logger>
|
||||
{
|
||||
typedef mcc::impl::MccGenericMount<mcc::impl::MccTelemetry<AsibFM700ServoController>,
|
||||
Asibfm700PZoneContainer,
|
||||
mcc::impl::MccSimpleMovementControls,
|
||||
// mcc::impl::MccSimpleMovementControls,
|
||||
mcc::impl::MccGenericAsyncMovementControls<details::movement_pars_t>,
|
||||
Asibfm700Logger>
|
||||
gm_class_t;
|
||||
|
||||
|
||||
public:
|
||||
using gm_class_t::error_t;
|
||||
typedef mcc::impl::MccTelemetry<AsibFM700ServoController> telemetry_t;
|
||||
|
||||
typedef mcc::impl::MccGenericAsyncMovementControls<details::movement_pars_t> movement_controls_t;
|
||||
|
||||
using typename gm_class_t::error_t;
|
||||
using typename movement_controls_t::movement_params_t;
|
||||
|
||||
|
||||
// using Asibfm700CCTE::setStateERFA;
|
||||
// using Asibfm700CCTE::updateBulletinA;
|
||||
@@ -70,6 +81,20 @@ protected:
|
||||
Asibfm700PCM _pcm;
|
||||
|
||||
void errorLogging(const std::string&, const std::error_code&);
|
||||
|
||||
// movement methods
|
||||
mcc::impl::MccMovementPathFile _pathFile{};
|
||||
|
||||
error_t slewingImpl(bool);
|
||||
error_t trackingImpl();
|
||||
error_t stoppingImpl();
|
||||
|
||||
error_t sendToHardware(AsibFM700ServoController::hardware_state_t const& hw_state);
|
||||
error_t checkPZone(typename telemetry_t::telemetry_data_t const& tdata);
|
||||
void logMountPos(telemetry_t::telemetry_data_t const& tdata);
|
||||
|
||||
std::unique_ptr<std::atomic<error_t>> _lastMountError{
|
||||
new std::atomic<error_t>{mcc::impl::MccGenericMountErrorCode::ERROR_OK}};
|
||||
};
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user