9 #ifndef LARDATAALG_UTILITIES_INTERVALS_FHICL_H 10 #define LARDATAALG_UTILITIES_INTERVALS_FHICL_H 21 #include <string_view> 46 template <
typename... Args>
47 void decode(std::any
const& src, Interval<Args...>& iv);
61 template <
typename... Args>
76 template <
typename... Args>
90 template <
typename... Args>
102 template <
typename... Args>
106 using interval_t =
Interval<Args...>;
107 using quantity_t =
typename interval_t::quantity_t;
111 iv = interval_t{ q };
117 template <
typename... Args>
122 using quantity_t =
typename point_t::quantity_t;
132 template <
typename... Args>
141 template <
typename... Args>
152 #endif // LARDATAALG_UTILITIES_INTERVALS_FHICL_H ::fhicl::detail::ps_atom_t encode(Point< Args... > const &pt)
Encodes a quantity point into a FHiCL parameter set atom.
::fhicl::detail::ps_atom_t encode(Interval< Args... > const &iv)
Encodes a quantity interval into a FHiCL parameter set atom.
Infrastructure for the quantities library.
Defines point and interval variables based on quantities.
Utilities to read and write quantities in FHiCL configuration.
decltype(auto) constexpr to_string(T &&obj)
ADL-aware version of std::to_string.
An interval (duration, length, distance) between two quantity points.
void decode(std::any const &src, Interval< Args... > &iv)
Decodes an interval.
Functions pulling in STL customization if available.