UART Forwarder Writer
This Observer works with the UART Forwarder Observer to relay messages from UART1 to UART0 and vise-versa.
This writer is the simplest possible packet writer subclass. It doesn’t construct any new packets, or build them up.
namespace pico::ibus::output::writer {
UartForwarderWriter::UartForwarderWriter(
std::shared_ptr<logger::BaseLogger> logger,
std::shared_ptr<dma::IDmaManager> dmaManager
) {
this->logger = logger;
this->dmaManager = dmaManager;
}
std::shared_ptr<dma::IDmaManager> UartForwarderWriter::getDmaManager() {
return dmaManager;
}
void UartForwarderWriter::forwardPacketToCar(data::IbusPacket packet) {
getDmaManager()->cpu0scheduleOutgoingMessage(packet);
}
void UartForwarderWriter::forwardPacketToPi(data::IbusPacket packet) {
getDmaManager()->cpu0scheduleOutgoingProbeOnlyMessage(packet);
}
} // writer