CTRE Phoenix C++ 5.33.1
|
Scheduler that will run its ILoopables in sequence. More...
#include <ctre/phoenix/tasking/Schedulers/SequentialScheduler.h>
Public Member Functions | |
SequentialScheduler () | |
virtual | ~SequentialScheduler () |
void | Add (ILoopable *aLoop) |
Add ILoopable to scheduler. More... | |
ILoopable * | GetCurrent () |
Get the currently running ILoopable. More... | |
void | RemoveAll () |
Remove all ILoopables. More... | |
void | Start () |
Start next ILoopable. More... | |
void | Stop () |
Stop every ILoopable. More... | |
void | Process () |
Process the currently active ILoopable. More... | |
void | OnStart () |
Start next ILoopable. More... | |
void | OnLoop () |
Process currently active ILoopable. More... | |
void | OnStop () |
Stop all ILoopables. More... | |
bool | IsDone () |
Public Member Functions inherited from ctre::phoenix::tasking::ILoopable | |
virtual | ~ILoopable () |
virtual void | OnStart ()=0 |
Function called when object starts. More... | |
virtual void | OnLoop ()=0 |
Function called every loop. More... | |
virtual bool | IsDone ()=0 |
virtual void | OnStop ()=0 |
Function called when object stops. More... | |
Public Member Functions inherited from ctre::phoenix::tasking::IProcessable | |
virtual | ~IProcessable () |
virtual void | Process ()=0 |
This function is called when a process occurs. More... | |
Public Attributes | |
bool | _running = false |
should be private More... | |
std::vector< ILoopable * > | _loops |
should be private More... | |
unsigned int | _idx = 0 |
should be private More... | |
bool | _iterated = false |
should be private More... | |
Scheduler that will run its ILoopables in sequence.
ctre::phoenix::tasking::schedulers::SequentialScheduler::SequentialScheduler | ( | ) |
|
virtual |
void ctre::phoenix::tasking::schedulers::SequentialScheduler::Add | ( | ILoopable * | aLoop | ) |
ILoopable * ctre::phoenix::tasking::schedulers::SequentialScheduler::GetCurrent | ( | ) |
Get the currently running ILoopable.
|
virtual |
Implements ctre::phoenix::tasking::ILoopable.
|
virtual |
Process currently active ILoopable.
Implements ctre::phoenix::tasking::ILoopable.
|
virtual |
Start next ILoopable.
Implements ctre::phoenix::tasking::ILoopable.
|
virtual |
Stop all ILoopables.
Implements ctre::phoenix::tasking::ILoopable.
|
virtual |
Process the currently active ILoopable.
Call this every loop
Implements ctre::phoenix::tasking::IProcessable.
void ctre::phoenix::tasking::schedulers::SequentialScheduler::RemoveAll | ( | ) |
Remove all ILoopables.
void ctre::phoenix::tasking::schedulers::SequentialScheduler::Start | ( | ) |
Start next ILoopable.
void ctre::phoenix::tasking::schedulers::SequentialScheduler::Stop | ( | ) |
Stop every ILoopable.
unsigned int ctre::phoenix::tasking::schedulers::SequentialScheduler::_idx = 0 |
should be private
bool ctre::phoenix::tasking::schedulers::SequentialScheduler::_iterated = false |
should be private
std::vector<ILoopable*> ctre::phoenix::tasking::schedulers::SequentialScheduler::_loops |
should be private
bool ctre::phoenix::tasking::schedulers::SequentialScheduler::_running = false |
should be private