blob: 2ded4ec8b26cf44eeeed890c1cb1a0719759c4b4 [file] [log] [blame]
Ben Fredricksond69f38b2015-01-28 20:06:15 -08001#ifndef FRC971_ACTIONS_DRIVETRAIN_ACTION_H_
2#define FRC971_ACTIONS_DRIVETRAIN_ACTION_H_
3
4#include <memory>
5
Daniel Petti3b1e48f2015-02-15 15:57:53 -08006#include "frc971/actors/drivetrain_action.q.h"
Ben Fredricksond69f38b2015-01-28 20:06:15 -08007#include "aos/common/actions/actor.h"
8#include "aos/common/actions/actions.h"
9
10namespace frc971 {
Daniel Petti3b1e48f2015-02-15 15:57:53 -080011namespace actors {
Ben Fredricksond69f38b2015-01-28 20:06:15 -080012
13class DrivetrainActor
14 : public aos::common::actions::ActorBase<DrivetrainActionQueueGroup> {
15 public:
16 explicit DrivetrainActor(DrivetrainActionQueueGroup* s);
17
Daniel Petti3b1e48f2015-02-15 15:57:53 -080018 bool RunAction() override;
Ben Fredricksond69f38b2015-01-28 20:06:15 -080019};
20
21// Makes a new DrivetrainActor action.
22::std::unique_ptr<aos::common::actions::TypedAction<DrivetrainActionQueueGroup>>
23 MakeDrivetrainAction();
24
Daniel Petti3b1e48f2015-02-15 15:57:53 -080025} // namespace actors
Ben Fredricksond69f38b2015-01-28 20:06:15 -080026} // namespace frc971
27
28#endif