#pragma once

#include <fsfw/power/PowerSwitchIF.h>

class GpioIF;

namespace dummy {

// Default values targeted towards EM.
struct DummyCfg {
  bool addCoreCtrlCfg = true;
  // Special variant because the ACU broke. Overrides addPowerDummies, only ACU dummy will be added.
  bool addOnlyAcuDummy = false;
  bool addPowerDummies = true;
  bool addBpxBattDummy = true;
  bool addSyrlinksDummies = true;
  bool addAcsBoardDummies = true;
  bool addSusDummies = true;
  bool addTempSensorDummies = true;
  bool addRtdComIFDummy = true;
  bool addPlocDummies = true;
  bool addCamSwitcherDummy = true;
};

void createDummies(DummyCfg cfg, PowerSwitchIF& pwrSwitch, GpioIF* gpioIF, bool enableHkSets);

}  // namespace dummy