Interface for loopable objects.
Definition: ILoopable.h:9
Interface for processable objects.
Definition: IProcessable.h:8
Scheduler that wil run its ILoopables in concurrency.
Definition: ConcurrentScheduler.h:18
void OnLoop()
Process all ILoopables.
void OnStart()
Start all ILoopables.
void StartAll()
Start all ILoopables.
void OnStop()
Stop all ILoopables.
void Stop(ILoopable *toStop)
Stop an ILoopable.
std::vector< ILoopable * > _loops
Should be private.
Definition: ConcurrentScheduler.h:21
void RemoveAll()
Remove all ILoopables from scheduler.
void Add(ILoopable *aLoop, bool enable=true)
Add ILoopable to schedule.
virtual ~ConcurrentScheduler()
std::vector< bool > _enabs
Should be private.
Definition: ConcurrentScheduler.h:23
void Process()
Process every ILoopable.
void StopAll()
Stop all ILoopables.
void Start(ILoopable *toStart)
Start an ILoopable.
namespace ctre
Definition: paramEnum.h:5