7 #ifndef __SCHEDULER_H__
8 #define __SCHEDULER_H__
10 #include "Commands/Command.h"
11 #include "ErrorBase.h"
12 #include "SmartDashboard/NamedSendable.h"
13 #include "networktables/NetworkTable.h"
14 #include "networktables2/type/NumberArray.h"
15 #include "networktables2/type/StringArray.h"
16 #include "SmartDashboard/SmartDashboard.h"
36 void SetEnabled(
bool enabled);
43 std::string GetType();
49 void ProcessCommandAddition(
Command *command);
52 Command::SubsystemSet m_subsystems;
54 typedef std::vector<ButtonScheduler *> ButtonVector;
55 ButtonVector m_buttons;
56 typedef std::vector<Command *> CommandVector;
57 SEM_ID m_additionsLock;
58 CommandVector m_additions;
59 typedef std::set<Command *> CommandSet;
60 CommandSet m_commands;
67 bool m_runningCommandsChanged;
void AddCommand(Command *command)
std::string GetSmartDashboardType()
void InitTable(ITable *subTable)
void Remove(Command *command)
void RegisterSubsystem(Subsystem *subsystem)
static Scheduler * GetInstance()