HDCommand.hh 895 B

123456789101112131415161718192021222324252627282930313233343536
  1. #ifndef HDCOMMAND_HH
  2. #define HDCOMMAND_HH
  3. #include "RecordedCommand.hh"
  4. #include <string>
  5. #include <vector>
  6. namespace openmsx {
  7. class CommandController;
  8. class StateChangeDistributor;
  9. class Scheduler;
  10. class TclObject;
  11. class HD;
  12. class BooleanSetting;
  13. class HDCommand final : public RecordedCommand
  14. {
  15. public:
  16. HDCommand(CommandController& commandController,
  17. StateChangeDistributor& stateChangeDistributor,
  18. Scheduler& scheduler, HD& hd, BooleanSetting& powerSetting);
  19. void execute(span<const TclObject> tokens,
  20. TclObject& result, EmuTime::param time) override;
  21. std::string help(const std::vector<std::string>& tokens) const override;
  22. void tabCompletion(std::vector<std::string>& tokens) const override;
  23. bool needRecord(span<const TclObject> tokens) const override;
  24. private:
  25. HD& hd;
  26. const BooleanSetting& powerSetting;
  27. };
  28. } // namespace openmsx
  29. #endif