blob: 1f09718eaaf2aa02419953a377341f187df5b8ff [file] [log] [blame]
Brian Silvermanb691f5e2015-08-02 11:37:55 -07001#ifndef Y2015_ACTORS_PICKUP_ACTOR_H_
2#define Y2015_ACTORS_PICKUP_ACTOR_H_
Austin Schuh6ab08b82015-02-22 21:41:05 -08003
4#include "aos/common/actions/actions.h"
5#include "aos/common/actions/actor.h"
Brian Silvermanb691f5e2015-08-02 11:37:55 -07006#include "y2015/actors/pickup_action.q.h"
Austin Schuh6ab08b82015-02-22 21:41:05 -08007
8namespace frc971 {
9namespace actors {
10
11class PickupActor
12 : public aos::common::actions::ActorBase<PickupActionQueueGroup> {
13 public:
14 explicit PickupActor(PickupActionQueueGroup *queues);
15
16 bool RunAction(const PickupParams &params) override;
17};
18
19typedef aos::common::actions::TypedAction<PickupActionQueueGroup> PickupAction;
20
21// Makes a new PickupActor action.
22::std::unique_ptr<PickupAction> MakePickupAction(const PickupParams &params);
23
24} // namespace actors
25} // namespace frc971
26
Brian Silvermanb691f5e2015-08-02 11:37:55 -070027#endif // Y2015_ACTORS_PICKUP_ACTOR_H_