#include "Routing.h" #include "R_Order_AB.h" #include "R_Order_AA.h" void Routing::RoutingFunction(const DataPacket &packet) { try { if (packet.Mark1.get() == 0x66 || packet.Mark1.get() == 0x55) { if (packet.Mark2.get() == 0xAA) { switch (packet.FunNumber.get()) { case 0x01: { R_Order_AA::Function_0x01(packet); break; } case 0x0B: { R_Order_AA::Function_0x0B(packet); break; } case 0x80: { R_Order_AA::Function_0x80(packet); break; } case 0xAA: { R_Order_AA::Function_0xAA(packet); break; } case 0xA4: { R_Order_AA::Function_0xA4(packet); break; } case 0xA7: { R_Order_AA::Function_0xA7(packet); break; } case 0xC1: { R_Order_AA::Function_0xC1(packet); break; } case 0xF2: { R_Order_AA::Function_0xF2(packet); break; } case 0xF4: { R_Order_AA::Function_0xF4(packet); break; } default: { R_Order_AA::Function(packet); break; } } } else if (packet.Mark2.get() == 0xAB) { switch (packet.FunNumber.get()) { case 0x02: { R_Order_AB::Function_0x02(packet); break; } case 0x03: { R_Order_AB::Function_0x03(packet); break; } case 0x04: { R_Order_AB::Function_0x04(packet); break; } case 0x05: { R_Order_AB::Function_0x05(packet); break; } case 0x06: { R_Order_AB::Function_0x06(packet); break; } case 0x07: { R_Order_AB::Function_0x07(packet); break; } case 0x09: { R_Order_AB::Function_0x09(packet); break; } case 0x10: { R_Order_AB::Function_0x10(packet); break; } case 0x11: { R_Order_AB::Function_0x11(packet); break; } default: { R_Order_AB::Function(packet); break; } } } } } catch (CCException& e) { BS_Log::Error("Routing::RoutingFunction Error: {}",e.what()); } }