OMOTE/Platformio/HAL/HardwareFactory.cpp
MatthewColvin efa2d4a137 Rework Mains so they are basically as identical as possible.
Create HardwareFactory which is responsible for providing the HardwareAbstract to any part of the program based on compiler defines
2023-10-15 08:24:29 -05:00

20 lines
No EOL
462 B
C++

#include "HardwareFactory.hpp"
#if OMOTE_SIM
#include "HardwareSimulator.hpp"
#endif
#if OMOTE_ESP32
#include "HardwareRevX.hpp"
#endif
#if OMOTE_SIM
std::unique_ptr<HardwareAbstract> HardwareFactory::mHardware =
std::make_unique<HardwareSimulator>();
#endif
#if OMOTE_ESP32
std::unique_ptr<HardwareAbstract> HardwareFactory::mHardware =
std::make_unique<HardwareRevX>();
#endif
HardwareAbstract &HardwareFactory::getAbstract() { return *mHardware; }