Lumiera
0.pre.03
»edit your freedom«
|
Functions | |
FSecs | _FSecs (TimeValue const &timeVal) |
double | approx (Rat r) |
bool | isMicroGridAligned (FSecs duration) |
TimeVar | operator+ (Time const &tval, TimeVar const &tvar) |
TimeVar | operator- (Time const &tval, TimeVar const &tvar) |
int | toxicDegree (Rat poison, const int64_t THRESHOLD=HAZARD_DEGREE) |
Variables | |
const FSecs | DEFAULT_CANVAS {23} |
const Rat | DEFAULT_METRIC {25} |
const int64_t | HAZARD_DEGREE {util::ilog2(LIM_HAZARD)} |
const int64_t | LIM_HAZARD {int64_t{1} << 40 } |
Maximum quantiser to be handled in fractional arithmetics without hazard. More... | |
const uint | MAX_PX_WIDTH {100000} |
const FSecs | MAX_TIMESPAN {_FSecs(Duration::MAX)} |
const int64_t | MAXDIM {util::ilog2 (std::numeric_limits<int64_t>::max())} |
const FSecs | MICRO_TICK {1_r/Time::SCALE} |
|
inline |
RSec
) should be a light-weight wrapper on top of util::Rat = boost::rational<int64_t>
Definition at line 135 of file zoom-window.hpp.
References TimeValue::SCALE.
Referenced by ZoomWindow::expandVisibleRange(), and ZoomWindow::setVisibleDuration().
|
inline |
true
if the given duration can be represented cleanly as µ-ticks. n/d = i + r/d
; when expanding with *u/u
, result is clean if u/d
is non-fractional. Definition at line 147 of file zoom-window.hpp.
References TimeValue::SCALE.
|
inline |
Definition at line 164 of file zoom-window.hpp.
const int64_t LIM_HAZARD {int64_t{1} << 40 } |
Maximum quantiser to be handled in fractional arithmetics without hazard.
Definition at line 190 of file zoom-window.hpp.
Referenced by ZoomWindow_test::safeguard_verySmall().