7 #ifndef _INC_cValueLerp_H
8 #define _INC_cValueLerp_H
20 template <
typename TYPE>
57 TYPE nDiff = nValEnd - nValCur;
62 float fChange = fValPerSec * fTimePassed;
64 if (fChange >= nDiffA)
74 nValNext = (
TYPE)(nValCur + fChange);
78 nValNext = (
TYPE)(nValCur - fChange);
80 if (nValCur == nValNext)
98 if (m_nValCur == nValEnd)
120 m_TimeLast = TimeNow;
#define TYPE
Definition: StrT.cpp:38
#define ASSERT(exp)
Definition: cDebugAssert.h:87
Definition: cValueLerp.h:22
void put_Val(TYPE nValCur) noexcept
Definition: cValueLerp.h:39
bool TickCap(float fValPerSec, TYPE nValEnd, TIMESYS_t TimeNow=cTimeSys::k_CLEAR)
Definition: cValueLerp.h:86
TYPE get_Val() const noexcept
Definition: cValueLerp.h:35
static bool TickX(TYPE &nValCur, TYPE nValEnd, TIMESECF_t fTimePassed, float fValPerSec)
Definition: cValueLerp.h:46
UNITTEST_FRIEND(cValueLerp)
cValueLerp(TYPE nValCur=0) noexcept
Definition: cValueLerp.h:30
Definition: cTimeSys.h:93
static const TIMESYS_t k_CLEAR
Definition: cTimeSys.h:99
static const TIMESYS_t k_FREQ
milliSec per Sec
Definition: cTimeSys.h:100
static TIMESYS_t GetTimeNow() noexcept
Definition: cTimeSys.h:121
UNITTEST2_PREDEF(cQuadtree)
INT32 TIMESYSD_t
Time delta. signed milli-Seconds Span. cTimeSys::k_DMAX, cTimeSys::k_INF = MAILSLOT_WAIT_FOREVER.
Definition: cTimeSys.h:28
float TIMESECF_t
delta float seconds.
Definition: cTimeSys.h:20
UINT32 TIMESYS_t
TIMESYS_t = The normal system tick timer. milli-seconds since start of system/app ?
Definition: cTimeSys.h:27
static TYPE Abs(TYPE a) noexcept
similar to ABS(n) macro. Does nothing for unsigned types.