...
This commit is contained in:
@@ -2,12 +2,26 @@
|
||||
|
||||
/* MOUNT CONTROL COMPONENTS LIBRARY */
|
||||
|
||||
#include "mcc_mount_astrom.h"
|
||||
#include "mcc_mount_coord.h"
|
||||
#include "mount_astrom.h"
|
||||
#include "mcc_mount_hardware.h"
|
||||
|
||||
namespace mcc
|
||||
{
|
||||
|
||||
|
||||
namespace traits
|
||||
{
|
||||
|
||||
template <typename T>
|
||||
concept mcc_mount_config_c = requires(T t) {
|
||||
{ t.astromEngine() } -> traits::mcc_astrom_engine_c;
|
||||
{ t.hardware() } -> traits::mcc_mount_hardware_c;
|
||||
};
|
||||
|
||||
} // namespace traits
|
||||
|
||||
|
||||
// meteo parameters (e.g. to compute refraction)
|
||||
struct MccMountMeteo {
|
||||
typedef double temp_t;
|
||||
@@ -45,15 +59,14 @@ static constexpr std::string_view MccMountTypeStr = TYPE == MccMountType::GERMAN
|
||||
: "UNKNOWN";
|
||||
|
||||
// mount configuration
|
||||
template <MccMountType MOUNT_TYPE>
|
||||
template <MccMountType MOUNT_TYPE,
|
||||
traits::mcc_astrom_engine_c ASTROM_ENGINE_TYPE,
|
||||
traits::mcc_mount_hardware_c HARDWARE_TYPE>
|
||||
struct MccMountConfig {
|
||||
static constexpr MccMountType mountType = MOUNT_TYPE;
|
||||
|
||||
virtual ~MccMountConfig() = default;
|
||||
|
||||
astrom::MccLeapSeconds leapSeconds;
|
||||
astrom::MccIersBulletinA iersBulletinA;
|
||||
|
||||
MccMountSiteInfo siteInfo{.latitude = 0.0, .longitude = 0.0, .elevation = 0.0, .name{"ALL-ZERO"}};
|
||||
|
||||
MccMountMeteo ambientMeteo{.temperature = 0.0, .humidity = 0.5, .pressure = 1010.0};
|
||||
|
||||
Reference in New Issue
Block a user