blob: aa8f0b3a150113f1c9d2250aac5b3536556b55e9 [file] [log] [blame]
Brian Silverman17f503e2015-08-02 18:17:18 -07001#ifndef Y2014_ACTIONS_DRIVETRAIN_ACTION_H_
2#define Y2014_ACTIONS_DRIVETRAIN_ACTION_H_
3
4#include <memory>
5
6#include "y2014/actors/drivetrain_action.q.h"
7#include "aos/common/actions/actor.h"
8#include "aos/common/actions/actions.h"
9
10namespace frc971 {
11namespace actors {
12
13class DrivetrainActor
14 : public aos::common::actions::ActorBase<DrivetrainActionQueueGroup> {
15 public:
16 explicit DrivetrainActor(DrivetrainActionQueueGroup* s);
17
18 bool RunAction(const actors::DrivetrainActionParams &params) override;
19};
20
21typedef aos::common::actions::TypedAction<DrivetrainActionQueueGroup>
22 DrivetrainAction;
23
24// Makes a new DrivetrainActor action.
25::std::unique_ptr<DrivetrainAction> MakeDrivetrainAction(
26 const ::frc971::actors::DrivetrainActionParams& params);
27
28} // namespace actors
29} // namespace frc971
30
31#endif