Skip to content

Commit cded925

Browse files
authored
[commands] Improve documentation of addRequirements (NFC) (#5103)
1 parent 680e2a7 commit cded925

File tree

1 file changed

+28
-0
lines changed

1 file changed

+28
-0
lines changed

include/frc2/command/CommandBase.h

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,27 +28,55 @@ class CommandBase : public Command,
2828
/**
2929
* Adds the specified Subsystem requirements to the command.
3030
*
31+
* The scheduler will prevent two commands that require the same subsystem
32+
* from being scheduled simultaneously.
33+
*
34+
* Note that the scheduler determines the requirements of a command when it
35+
* is scheduled, so this method should normally be called from the command's
36+
* constructor.
37+
*
3138
* @param requirements the Subsystem requirements to add
3239
*/
3340
void AddRequirements(std::initializer_list<Subsystem*> requirements);
3441

3542
/**
3643
* Adds the specified Subsystem requirements to the command.
3744
*
45+
* The scheduler will prevent two commands that require the same subsystem
46+
* from being scheduled simultaneously.
47+
*
48+
* Note that the scheduler determines the requirements of a command when it
49+
* is scheduled, so this method should normally be called from the command's
50+
* constructor.
51+
*
3852
* @param requirements the Subsystem requirements to add
3953
*/
4054
void AddRequirements(std::span<Subsystem* const> requirements);
4155

4256
/**
4357
* Adds the specified Subsystem requirements to the command.
4458
*
59+
* The scheduler will prevent two commands that require the same subsystem
60+
* from being scheduled simultaneously.
61+
*
62+
* Note that the scheduler determines the requirements of a command when it
63+
* is scheduled, so this method should normally be called from the command's
64+
* constructor.
65+
*
4566
* @param requirements the Subsystem requirements to add
4667
*/
4768
void AddRequirements(wpi::SmallSet<Subsystem*, 4> requirements);
4869

4970
/**
5071
* Adds the specified Subsystem requirement to the command.
5172
*
73+
* The scheduler will prevent two commands that require the same subsystem
74+
* from being scheduled simultaneously.
75+
*
76+
* Note that the scheduler determines the requirements of a command when it
77+
* is scheduled, so this method should normally be called from the command's
78+
* constructor.
79+
*
5280
* @param requirement the Subsystem requirement to add
5381
*/
5482
void AddRequirements(Subsystem* requirement);

0 commit comments

Comments
 (0)