49 lines
1.8 KiB
C++
49 lines
1.8 KiB
C++
#pragma once
|
|
|
|
/* AstroSIB-FM700 FORK MOUNT CONTROL LIBRARY */
|
|
|
|
|
|
#include "asibfm700_common.h"
|
|
#include "asibfm700_config.h"
|
|
|
|
#include "mcc_generic_mount.h"
|
|
#include "mcc_spdlog.h"
|
|
|
|
namespace asibfm700
|
|
{
|
|
|
|
|
|
class AsibFM700Mount : public mcc::utils::MccSpdlogLogger,
|
|
public mcc::MccGenericMount<AsibFM700AstromEngine,
|
|
AsibFM700Hardware,
|
|
AsibFM700PointingErrorCorrection,
|
|
AsibFM700Telemetry,
|
|
AsibFM700SlewModel<mcc::utils::MccSpdlogLogger>,
|
|
AsibFM700GuidingModel<mcc::utils::MccSpdlogLogger>>
|
|
{
|
|
using base_gm_t = mcc::MccGenericMount<AsibFM700AstromEngine,
|
|
AsibFM700Hardware,
|
|
AsibFM700PointingErrorCorrection,
|
|
AsibFM700Telemetry,
|
|
AsibFM700SlewModel<mcc::utils::MccSpdlogLogger>,
|
|
AsibFM700GuidingModel<mcc::utils::MccSpdlogLogger>>;
|
|
|
|
public:
|
|
typedef AsibFM700SlewModel<mcc::utils::MccSpdlogLogger> slew_model_t;
|
|
typedef AsibFM700GuidingModel<mcc::utils::MccSpdlogLogger> guiding_model_t;
|
|
|
|
template <mcc::traits::mcc_range_of_input_char_range R = decltype(LOGGER_DEFAULT_FORMAT)>
|
|
AsibFM700Mount(AsibFM700Config config,
|
|
std::shared_ptr<spdlog::logger> logger,
|
|
const R& pattern_range = LOGGER_DEFAULT_FORMAT);
|
|
|
|
~AsibFM700Mount();
|
|
|
|
|
|
private:
|
|
AsibFM700Config _currentConfig;
|
|
};
|
|
|
|
|
|
} // namespace asibfm700
|