acme
Foundational cross-platform layer of the ca2 framework
Loading...
Searching...
No Matches
_impl.h
1//
2// Created by camilo on 2022-10-24 15:03 <3ThomasBorregaardSorensen!!
3//
4#pragma once
5
6
7//inline timeclass ::time(const ::integral_nanosecond & integral) : time((const class ::time &)integral) {}
8//inline timeclass ::time(const ::floating_nanosecond & floating) : time((const class ::time &)floating) {}
9//inline timeclass ::time(const ::integral_microsecond & integral) : time((const class ::time &)integral) {}
10//inline timeclass ::time(const ::floating_microsecond & floating) : time((const class ::time &)floating) {}
11//inline timeclass ::time(const ::integral_millisecond & integral) : time((const class ::time &)integral) {}
12//inline timeclass ::time(const ::floating_millisecond & floating) : time((const class ::time &)floating) {}
13//inline timeclass ::time(const ::integral_second & integral) : time((const class ::time &)integral) {}
14//inline timeclass ::time(const ::floating_second & floating) : time((const class ::time &)floating) {}
15//inline timeclass ::time(const ::integral_minute & integral) : time((const class ::time &)integral) {}
16//inline timeclass ::time(const ::floating_minute & floating) : time((const class ::time &)floating) {}
17//inline timeclass ::time(const ::integral_hour & integral) : time((const class ::time &)integral) {}
18//inline timeclass ::time(const ::floating_hour & floating) : time((const class ::time &)floating) {}
19//inline timeclass ::time(const ::integral_day & integral) : time((const class ::time &)integral) {}
20//inline timeclass ::time(const ::floating_day & floating) : time((const class ::time &)floating) {}
21
22
23constexpr class time& time::operator = (const class time & time)
24{
25
26 if(this != &time)
27 {
28
29 m_iSecond = time.m_iSecond;
30 m_iNanosecond = time.m_iNanosecond;
31
32 }
33
34 return *this;
35
36}
37
38
39constexpr class ::time & time::operator = (const ::earth::time_span & timespan)
40{
41
42 m_iSecond = timespan.m_iSecond;
43 m_iNanosecond = 0;
44
45 return *this;
46
47}
48
49constexpr ::f64 time::ramp_up(const class time & timePeriod, const class time & time) const
50{
51
52 auto elapsed = this->elapsed(time);
53
54 return elapsed < 0_s ? 0.0 : (elapsed > timePeriod ? 1.0 : ((elapsed % timePeriod) / timePeriod));
55
56}
57
58
Definition aaa_time.h:13