9 #ifndef LARDATAALG_UTILITIES_INTERVALS_FHICL_H 10 #define LARDATAALG_UTILITIES_INTERVALS_FHICL_H 23 #include <string_view> 45 template <
typename... Args>
46 void decode(std::any
const& src, Interval<Args...>& iv);
60 template <
typename... Args>
61 void decode(std::any
const& src, Point<Args...>& p);
74 template <
typename... Args>
88 template <
typename... Args>
99 template <
typename... Args>
102 using interval_t =
Interval<Args...>;
103 using quantity_t =
typename interval_t::quantity_t;
112 template <
typename... Args>
116 using quantity_t =
typename point_t::quantity_t;
125 template <
typename... Args>
132 template <
typename... Args>
140 #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.