M1M3 Support System
Loading...
Searching...
No Matches
ActiveEngineeringState.h
1/*
2 * This file is part of LSST M1M3 support system package.
3 *
4 * Developed for the Vera C. Rubin Telescope and Site System.
5 * This product includes software developed by the LSST Project
6 * (https://www.lsst.org).
7 * See the COPYRIGHT file at the top-level directory of this distribution
8 * for details of code ownership.
9 *
10 * This program is free software: you can redistribute it and/or modify
11 * it under the terms of the GNU General Public License as published by
12 * the Free Software Foundation, either version 3 of the License, or
13 * (at your option) any later version.
14 *
15 * This program is distributed in the hope that it will be useful,
16 * but WITHOUT ANY WARRANTY; without even the implied warranty of
17 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18 * GNU General Public License for more details.
19 *
20 * You should have received a copy of the GNU General Public License
21 * along with this program. If not, see <https://www.gnu.org/licenses/>.
22 */
23
24#ifndef ACTIVEENGINEERINGSTATE_H_
25#define ACTIVEENGINEERINGSTATE_H_
26
27#include <EnabledActiveState.h>
28#include <EngineeringState.h>
29
30namespace LSST {
31namespace M1M3 {
32namespace SS {
33
40public:
42
43 States::Type update(UpdateCommand *command) override;
44 States::Type setSlewFlag(SetSlewFlagCommand *command) override;
45 States::Type clearSlewFlag(ClearSlewFlagCommand *command) override;
46 States::Type exitEngineering(ExitEngineeringCommand *command) override;
47 States::Type lowerM1M3(LowerM1M3Command *command) override;
48 States::Type translateM1M3(TranslateM1M3Command *command) override;
49 States::Type positionM1M3(PositionM1M3Command *command) override;
50 States::Type runMirrorForceProfile(RunMirrorForceProfileCommand *command) override;
51 States::Type updatePID(UpdatePIDCommand *command) override;
52 States::Type resetPID(ResetPIDCommand *command) override;
53 States::Type enableDisableForceComponent(EnableDisableForceComponentCommand *command) override;
54
55protected:
56 States::Type getLoweringState() override { return States::LoweringEngineeringState; }
57};
58
59} /* namespace SS */
60} /* namespace M1M3 */
61} /* namespace LSST */
62
63#endif /* ACTIVEENGINEERINGSTATE_H_ */
Active Engineering state.
Definition ActiveEngineeringState.h:39
States::Type update(UpdateCommand *command) override
Called to retrieve telemetry data.
Definition ActiveEngineeringState.cpp:58
Definition ClearSlewFlagCommand.h:35
Definition EnableDisableForceComponentCommand.h:35
Enabled active state.
Definition EnabledActiveState.h:37
Engineering state.
Definition EngineeringState.h:37
Definition ExitEngineeringCommand.h:34
Definition LowerM1M3Command.h:35
Definition PositionM1M3Command.h:35
Definition ResetPIDCommand.h:35
Definition RunMirrorForceProfileCommand.h:35
Definition SetSlewFlagCommand.h:35
Definition TranslateM1M3Command.h:35
Definition UpdateCommand.h:39
Definition UpdatePIDCommand.h:35