...
This commit is contained in:
@@ -142,6 +142,8 @@ static constexpr ErrT mcc_deduce_error(const DErrT& err, const ErrT& default_err
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
/* ATMOSPHERIC REFRACTION MODEL CLASS CONCEPT */
|
||||
|
||||
template <typename T>
|
||||
@@ -179,7 +181,8 @@ static constexpr void mcc_copy_celestial_point(mcc_celestial_point_c auto const&
|
||||
}
|
||||
|
||||
to_pt->pair_kind = from_pt.pair_kind;
|
||||
to_pt->time_point = std::chrono::time_point_cast<typename decltype(to_pt->time_point)::duration>(from_pt);
|
||||
to_pt->time_point =
|
||||
std::chrono::time_point_cast<typename decltype(to_pt->time_point)::duration>(from_pt.time_point);
|
||||
to_pt->X = (double)from_pt.X;
|
||||
to_pt->Y = (double)from_pt.Y;
|
||||
}
|
||||
@@ -214,7 +217,8 @@ static constexpr void mcc_copy_eqt_hrz_coord(mcc_eqt_hrz_coord_c auto const& fro
|
||||
}
|
||||
|
||||
to_pt->pair_kind = from_pt.pair_kind;
|
||||
to_pt->time_point = std::chrono::time_point_cast<typename decltype(to_pt->time_point)::duration>(from_pt);
|
||||
to_pt->time_point =
|
||||
std::chrono::time_point_cast<typename decltype(to_pt->time_point)::duration>(from_pt.time_point);
|
||||
to_pt->X = (double)from_pt.X;
|
||||
to_pt->Y = (double)from_pt.Y;
|
||||
|
||||
@@ -321,7 +325,8 @@ static constexpr void mcc_copy_pointing_target_coord(mcc_pointing_target_coord_c
|
||||
}
|
||||
|
||||
to_pt->pair_kind = from_pt.pair_kind;
|
||||
to_pt->time_point = std::chrono::time_point_cast<typename decltype(to_pt->time_point)::duration>(from_pt);
|
||||
to_pt->time_point =
|
||||
std::chrono::time_point_cast<typename decltype(to_pt->time_point)::duration>(from_pt.time_point);
|
||||
to_pt->X = (double)from_pt.X;
|
||||
to_pt->Y = (double)from_pt.Y;
|
||||
|
||||
@@ -374,7 +379,8 @@ static constexpr void mcc_copy_telemetry_data(mcc_telemetry_data_c auto const& f
|
||||
}
|
||||
|
||||
to_pt->pair_kind = from_pt.pair_kind;
|
||||
to_pt->time_point = std::chrono::time_point_cast<typename decltype(to_pt->time_point)::duration>(from_pt);
|
||||
to_pt->time_point =
|
||||
std::chrono::time_point_cast<typename decltype(to_pt->time_point)::duration>(from_pt.time_point);
|
||||
|
||||
to_pt->X = (double)from_pt.X;
|
||||
to_pt->Y = (double)from_pt.Y;
|
||||
@@ -571,10 +577,10 @@ struct mcc_pzone_container_interface_t {
|
||||
|
||||
|
||||
template <std::derived_from<mcc_pzone_container_interface_t> SelfT, typename InputT>
|
||||
RetT inPZone(this SelfT&& self, InputT coords, std::ranges::output_range<bool> auto* result)
|
||||
RetT inPZone(this SelfT&& self, InputT coords, bool* common_result, std::ranges::output_range<bool> auto* result)
|
||||
requires(mcc_eqt_hrz_coord_c<InputT> || mcc_celestial_point_c<InputT>)
|
||||
{
|
||||
return std::forward<SelfT>(self).InPZone(std::move(coords), result);
|
||||
return std::forward<SelfT>(self).InPZone(std::move(coords), common_result, result);
|
||||
}
|
||||
|
||||
|
||||
@@ -592,6 +598,14 @@ struct mcc_pzone_container_interface_t {
|
||||
return std::forward<SelfT>(self).timeFromPZone(std::move(coords), res_time);
|
||||
}
|
||||
|
||||
|
||||
template <std::derived_from<mcc_pzone_container_interface_t> SelfT, typename InputT, mcc_celestial_point_c CPT>
|
||||
RetT intersectPZone(this SelfT&& self, InputT coords, std::ranges::output_range<CPT> auto* result)
|
||||
requires(mcc_eqt_hrz_coord_c<InputT> || mcc_celestial_point_c<InputT>)
|
||||
{
|
||||
return std::forward<SelfT>(self).intersectPZone(std::move(coords), result);
|
||||
}
|
||||
|
||||
protected:
|
||||
mcc_pzone_container_interface_t() = default;
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user