blob: 442a02c0bed1689db1b686666fc28b9a0ac19145 [file] [log] [blame]
Brian Silverman26e4e522015-12-17 01:56:40 -05001/*----------------------------------------------------------------------------*/
2/* Copyright (c) FIRST 2011. All Rights Reserved.
3 */
4/* Open Source Software - may be modified and shared by FRC teams. The code */
5/* must be accompanied by the FIRST BSD license file in $(WIND_BASE)/WPILib. */
6/*----------------------------------------------------------------------------*/
7
8#ifndef __COMMAND_GROUP_ENTRY_H__
9#define __COMMAND_GROUP_ENTRY_H__
10
11class Command;
12
13class CommandGroupEntry {
14 public:
15 typedef enum {
16 kSequence_InSequence,
17 kSequence_BranchPeer,
18 kSequence_BranchChild
19 } Sequence;
20
21 CommandGroupEntry() = default;
22 CommandGroupEntry(Command *command, Sequence state, double timeout = -1.0);
23 bool IsTimedOut() const;
24
25 double m_timeout = -1.0;
26 Command *m_command = nullptr;
27 Sequence m_state = kSequence_InSequence;
28};
29
30#endif