FastFX  1.1.0
LED Strip Animation and Effects Framework for Arduino
FlexTimer Class Reference

#include <FlexTimer.h>

+ Inheritance diagram for FlexTimer:

Public Member Functions

 FlexTimer (unsigned long minInterval, unsigned long maxInterval, unsigned long initInterval, boolean initStart)
 
 FlexTimer (unsigned long initInterval, boolean initStart)
 
 FlexTimer (unsigned long initInterval)
 
 FlexTimer (unsigned long minInterval, unsigned long maxInterval, bool initStart, uint8_t initSpeed)
 
virtual void onStart (unsigned long currMillis) override
 
virtual void onStep (unsigned long currMillis) override
 
void setStartExpired (boolean newVal)
 
boolean getStartExpired ()
 
unsigned long getRangeMin ()
 
unsigned long getRangeMax ()
 
void setRange (unsigned long minInterval, unsigned long maxInterval)
 
virtual void setSpeed (uint8_t newSpeed)
 
virtual uint8_t getSpeed ()
 
void addDelta (long delta)
 
virtual unsigned long getLastUp () override
 
virtual void setInterval (unsigned long newInterval) override
 
unsigned long getCurrInterval ()
 
unsigned long getSteps ()
 
- Public Member Functions inherited from StepTimer
 StepTimer ()
 
 StepTimer (unsigned long initInterval, boolean startImmediate)
 
 StepTimer (unsigned long initInterval)
 
virtual ~StepTimer ()
 
void start ()
 
void start (unsigned long currMillis)
 
void step ()
 
void step (unsigned long currMillis)
 
void stop ()
 
bool isStarted ()
 
bool isUp (unsigned long currMillis)
 
bool isUp ()
 
unsigned long nextUp ()
 
unsigned long timeRemaining (unsigned long currMillis)
 
unsigned long timeRemaining ()
 
unsigned long getRollovers ()
 
unsigned long timeSinceStarted (unsigned long currMillis)
 
unsigned long timeSinceStarted ()
 
unsigned long timeSinceTriggered (unsigned long currMillis)
 
unsigned long timeSinceTriggered ()
 
virtual void setIntervalImmediate (unsigned long newInterval)
 
unsigned long getInterval ()
 

Static Public Member Functions

static uint8_t intervalToSpeed (unsigned long intv, unsigned long rMin, unsigned long rMax)
 
static unsigned long speedToInterval (uint8_t speed, unsigned long rMin, unsigned long rMax)
 
- Static Public Member Functions inherited from StepTimer
static unsigned long addOffsetWithWrap (unsigned long index, unsigned long offset, unsigned long maximum)
 
static unsigned long addOffsetWithWrap (unsigned long index, unsigned long offset)
 
static unsigned long subtractOffsetWithWrap (unsigned long index, unsigned long offset, unsigned long maximum)
 

Static Public Attributes

static const unsigned long MIN_INTERVAL = 1
 
static const unsigned long MAX_INTERVAL = 5000U
 

Additional Inherited Members

- Protected Attributes inherited from StepTimer
unsigned long interval =DEFAULT_TIMER_INTERVAL
 
unsigned long started =0
 
unsigned long nextUpMillis =0
 
uint16_t rollovers = 0
 
unsigned long pendInterval = 0
 

Constructor & Destructor Documentation

◆ FlexTimer() [1/4]

FlexTimer::FlexTimer ( unsigned long  minInterval,
unsigned long  maxInterval,
unsigned long  initInterval,
boolean  initStart 
)
inline

◆ FlexTimer() [2/4]

FlexTimer::FlexTimer ( unsigned long  initInterval,
boolean  initStart 
)
inline

◆ FlexTimer() [3/4]

FlexTimer::FlexTimer ( unsigned long  initInterval)
inline

◆ FlexTimer() [4/4]

FlexTimer::FlexTimer ( unsigned long  minInterval,
unsigned long  maxInterval,
bool  initStart,
uint8_t  initSpeed 
)
inline

Member Function Documentation

◆ addDelta()

void FlexTimer::addDelta ( long  delta)
inline

◆ getCurrInterval()

unsigned long FlexTimer::getCurrInterval ( )
inline

◆ getLastUp()

virtual unsigned long FlexTimer::getLastUp ( )
inlineoverridevirtual

Reimplemented from StepTimer.

◆ getRangeMax()

unsigned long FlexTimer::getRangeMax ( )
inline

◆ getRangeMin()

unsigned long FlexTimer::getRangeMin ( )
inline

◆ getSpeed()

virtual uint8_t FlexTimer::getSpeed ( )
inlinevirtual

◆ getStartExpired()

boolean FlexTimer::getStartExpired ( )
inline

◆ getSteps()

unsigned long FlexTimer::getSteps ( )
inline

◆ intervalToSpeed()

static uint8_t FlexTimer::intervalToSpeed ( unsigned long  intv,
unsigned long  rMin,
unsigned long  rMax 
)
inlinestatic

◆ onStart()

void FlexTimer::onStart ( unsigned long  currMillis)
overridevirtual

Reimplemented from StepTimer.

◆ onStep()

void FlexTimer::onStep ( unsigned long  currMillis)
overridevirtual

Reimplemented from StepTimer.

◆ setInterval()

void FlexTimer::setInterval ( unsigned long  newInterval)
overridevirtual

Reimplemented from StepTimer.

Reimplemented in FFXBase.

◆ setRange()

void FlexTimer::setRange ( unsigned long  minInterval,
unsigned long  maxInterval 
)

◆ setSpeed()

virtual void FlexTimer::setSpeed ( uint8_t  newSpeed)
inlinevirtual

◆ setStartExpired()

void FlexTimer::setStartExpired ( boolean  newVal)
inline

◆ speedToInterval()

static unsigned long FlexTimer::speedToInterval ( uint8_t  speed,
unsigned long  rMin,
unsigned long  rMax 
)
inlinestatic

Member Data Documentation

◆ MAX_INTERVAL

const unsigned long FlexTimer::MAX_INTERVAL = 5000U
static

◆ MIN_INTERVAL

const unsigned long FlexTimer::MIN_INTERVAL = 1
static