tempoch-cpp 0.5.3
Header-only C++ wrapper for tempoch
Loading...
Searching...
No Matches
time_base.hpp File Reference

Core Time<S>, EncodedTime<S, F>, and TimeContext types. More...

#include "civil_time.hpp"
#include "ffi_core.hpp"
#include "formats/formats.hpp"
#include "scales/scales.hpp"
#include <cmath>
#include <memory>
#include <optional>
#include <ostream>
#include <type_traits>
#include <utility>
Include dependency graph for time_base.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  tempoch::detail::ContextDeleter
 
class  tempoch::TimeContext
 Immutable conversion context for UT1 and historical UTC routes. More...
 
class  tempoch::Time< S >
 A point in time on scale S, stored as a split J2000-second pair. More...
 
class  tempoch::EncodedTime< S, F >
 A typed external encoding of a time instant on scale S. More...
 

Namespaces

namespace  tempoch
 
namespace  tempoch::detail
 

Functions

std::shared_ptr< tempoch_context_ttempoch::detail::make_default_context ()
 
std::shared_ptr< tempoch_context_ttempoch::detail::make_builtin_eop_context ()
 
std::shared_ptr< tempoch_context_ttempoch::detail::make_pre_definition_context (const tempoch_context_t *parent)
 
tempoch_time_t tempoch::detail::make_time (double hi_seconds, double lo_seconds)
 
template<typename From , typename To >
tempoch_time_t tempoch::detail::scale_convert (const tempoch_time_t &value, const tempoch_context_t *ctx)
 
template<typename S , typename F >
double tempoch::detail::encode_time (const tempoch_time_t &value, const tempoch_context_t *ctx)
 
template<typename S , typename F >
tempoch_time_t tempoch::detail::decode_time (double raw, const tempoch_context_t *ctx)
 
tempoch_time_t tempoch::detail::time_from_civil (const CivilTime &civil, const tempoch_context_t *ctx)
 
CivilTime tempoch::detail::time_to_civil (const tempoch_time_t &value, const tempoch_context_t *ctx)
 
template<typename Q >
tempoch_time_t tempoch::detail::add_seconds (const tempoch_time_t &value, const Q &qty)
 
qtty::Second tempoch::detail::difference_seconds (const tempoch_time_t &lhs, const tempoch_time_t &rhs)
 
template<typename F >
FormatTraits< F >::quantity_type tempoch::detail::quantity_from_raw (double raw)
 
template<typename F >
void tempoch::detail::ensure_finite_encoded (double raw, const char *operation)
 
template<typename S >
std::ostream & tempoch::operator<< (std::ostream &os, const Time< S > &time)
 
template<typename S , typename F >
std::ostream & tempoch::operator<< (std::ostream &os, const EncodedTime< S, F > &time)
 

Detailed Description

Core Time<S>, EncodedTime<S, F>, and TimeContext types.

Definition in file time_base.hpp.